2021-12-02 01:41:56 +01:00
/ * !
* Bootstrap v3 . 1.1 ( http : //getbootstrap.com)
* Copyright 2011 - 2014 Twitter , Inc .
* Licensed under MIT ( https : //github.com/twbs/bootstrap/blob/master/LICENSE)
* /
2021-12-19 17:06:42 +01:00
if ( typeof jQuery === 'undefined' ) throw new Error ( "Bootstrap's JavaScript requires jQuery" ) ; + ( function ( a ) {
function b ( ) {
const a = document . createElement ( 'bootstrap' ) ; const b = {
WebkitTransition : 'webkitTransitionEnd' , MozTransition : 'transitionend' , OTransition : 'oTransitionEnd otransitionend' , transition : 'transitionend' ,
} ; for ( const c in b ) if ( void 0 !== a . style [ c ] ) return { end : b [ c ] } ; return ! 1 ;
} a . fn . emulateTransitionEnd = function ( b ) { let c = ! 1 ; const d = this ; a ( this ) . one ( a . support . transition . end , ( ) => { c = ! 0 ; } ) ; const e = function ( ) { c || a ( d ) . trigger ( a . support . transition . end ) ; } ; return setTimeout ( e , b ) , this ; } , a ( ( ) => { a . support . transition = b ( ) ; } ) ;
} ( jQuery ) ) , + ( function ( a ) {
const b = '[data-dismiss="alert"]' ; const c = function ( c ) { a ( c ) . on ( 'click' , b , this . close ) ; } ; c . prototype . close = function ( b ) { function c ( ) { f . trigger ( 'closed.bs.alert' ) . remove ( ) ; } const d = a ( this ) ; let e = d . attr ( 'data-target' ) ; e || ( e = d . attr ( 'href' ) , e = e && e . replace ( /.*(?=#[^\s]*$)/ , '' ) ) ; var f = a ( e ) ; b && b . preventDefault ( ) , f . length || ( f = d . hasClass ( 'alert' ) ? d : d . parent ( ) ) , f . trigger ( b = a . Event ( 'close.bs.alert' ) ) , b . isDefaultPrevented ( ) || ( f . removeClass ( 'in' ) , a . support . transition && f . hasClass ( 'fade' ) ? f . one ( a . support . transition . end , c ) . emulateTransitionEnd ( 150 ) : c ( ) ) ; } ; const d = a . fn . alert ; a . fn . alert = function ( b ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.alert' ) ; e || d . data ( 'bs.alert' , e = new c ( this ) ) , typeof b === 'string' && e [ b ] . call ( d ) ; } ) ; } , a . fn . alert . Constructor = c , a . fn . alert . noConflict = function ( ) { return a . fn . alert = d , this ; } , a ( document ) . on ( 'click.bs.alert.data-api' , b , c . prototype . close ) ;
} ( jQuery ) ) , + ( function ( a ) {
var b = function ( c , d ) { this . $element = a ( c ) , this . options = a . extend ( { } , b . DEFAULTS , d ) , this . isLoading = ! 1 ; } ; b . DEFAULTS = { loadingText : 'loading...' } , b . prototype . setState = function ( b ) { const c = 'disabled' ; const d = this . $element ; const e = d . is ( 'input' ) ? 'val' : 'html' ; const f = d . data ( ) ; b += 'Text' , f . resetText || d . data ( 'resetText' , d [ e ] ( ) ) , d [ e ] ( f [ b ] || this . options [ b ] ) , setTimeout ( a . proxy ( function ( ) { b == 'loadingText' ? ( this . isLoading = ! 0 , d . addClass ( c ) . attr ( c , c ) ) : this . isLoading && ( this . isLoading = ! 1 , d . removeClass ( c ) . removeAttr ( c ) ) ; } , this ) , 0 ) ; } , b . prototype . toggle = function ( ) { let a = ! 0 ; const b = this . $element . closest ( '[data-toggle="buttons"]' ) ; if ( b . length ) { const c = this . $element . find ( 'input' ) ; c . prop ( 'type' ) == 'radio' && ( c . prop ( 'checked' ) && this . $element . hasClass ( 'active' ) ? a = ! 1 : b . find ( '.active' ) . removeClass ( 'active' ) ) , a && c . prop ( 'checked' , ! this . $element . hasClass ( 'active' ) ) . trigger ( 'change' ) ; } a && this . $element . toggleClass ( 'active' ) ; } ; const c = a . fn . button ; a . fn . button = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.button' ) ; const f = typeof c === 'object' && c ; e || d . data ( 'bs.button' , e = new b ( this , f ) ) , c == 'toggle' ? e . toggle ( ) : c && e . setState ( c ) ; } ) ; } , a . fn . button . Constructor = b , a . fn . button . noConflict = function ( ) { return a . fn . button = c , this ; } , a ( document ) . on ( 'click.bs.button.data-api' , '[data-toggle^=button]' , ( b ) => { let c = a ( b . target ) ; c . hasClass ( 'btn' ) || ( c = c . closest ( '.btn' ) ) , c . button ( 'toggle' ) , b . preventDefault ( ) ; } ) ;
} ( jQuery ) ) , + ( function ( a ) {
const b = function ( b , c ) { this . $element = a ( b ) , this . $indicators = this . $element . find ( '.carousel-indicators' ) , this . options = c , this . paused = this . sliding = this . interval = this . $active = this . $items = null , this . options . pause == 'hover' && this . $element . on ( 'mouseenter' , a . proxy ( this . pause , this ) ) . on ( 'mouseleave' , a . proxy ( this . cycle , this ) ) ; } ; b . DEFAULTS = { interval : 5e3 , pause : 'hover' , wrap : ! 0 } , b . prototype . cycle = function ( b ) { return b || ( this . paused = ! 1 ) , this . interval && clearInterval ( this . interval ) , this . options . interval && ! this . paused && ( this . interval = setInterval ( a . proxy ( this . next , this ) , this . options . interval ) ) , this ; } , b . prototype . getActiveIndex = function ( ) { return this . $active = this . $element . find ( '.item.active' ) , this . $items = this . $active . parent ( ) . children ( ) , this . $items . index ( this . $active ) ; } , b . prototype . to = function ( b ) { const c = this ; const d = this . getActiveIndex ( ) ; return b > this . $items . length - 1 || b < 0 ? void 0 : this . sliding ? this . $element . one ( 'slid.bs.carousel' , ( ) => { c . to ( b ) ; } ) : d == b ? this . pause ( ) . cycle ( ) : this . slide ( b > d ? 'next' : 'prev' , a ( this . $items [ b ] ) ) ; } , b . prototype . pause = function ( b ) { return b || ( this . paused = ! 0 ) , this . $element . find ( '.next, .prev' ) . length && a . support . transition && ( this . $element . trigger ( a . support . transition . end ) , this . cycle ( ! 0 ) ) , this . interval = clearInterval ( this . interval ) , this ; } , b . prototype . next = function ( ) { return this . sliding ? void 0 : this . slide ( 'next' ) ; } , b . prototype . prev = function ( ) { return this . sliding ? void 0 : this . slide ( 'prev' ) ; } , b . prototype . slide = function ( b , c ) { const d = this . $element . find ( '.item.active' ) ; let e = c || d [ b ] ( ) ; const f = this . interval ; const g = b == 'next' ? 'left' : 'right' ; const h = b == 'next' ? 'first' : 'last' ; const i = this ; if ( ! e . length ) { if ( ! this . options . wrap ) return ; e = this . $element . find ( '.item' ) [ h ] ( ) ; } if ( e . hasClass ( 'active' ) ) return this . sliding = ! 1 ; const j = a . Event ( 'slide.bs.carousel' , { relatedTarget : e [ 0 ] , direction : g } ) ; return this . $element . trigger ( j ) , j . isDefaultPrevented ( ) ? void 0 : ( this . sliding = ! 0 , f && this . pause ( ) , this . $indicators . length && ( this . $indicators . find ( '.active' ) . removeClass ( 'active' ) , this . $element . one ( 'slid.bs.carousel' , ( ) => { const b = a ( i . $indicators . children ( ) [ i . getActiveIndex ( ) ] ) ; b && b . addClass ( 'active' ) ; } ) ) , a . support . transition && this . $element . hasClass ( 'slide' ) ? ( e . addClass ( b ) , e [ 0 ] . offsetWidth , d . addClass ( g ) , e . addClass ( g ) , d . one ( a . support . transition . end , ( ) => { e . removeClass ( [ b , g ] . join ( ' ' ) ) . addClass ( 'active' ) , d . removeClass ( [ 'active' , g ] . join ( ' ' ) ) , i . sliding = ! 1 , setTimeout ( ( ) => { i . $element . trigger ( 'slid.bs.carousel' ) ; } , 0 ) ; } ) . emulateTransitionEnd ( 1e3 * d . css ( 'transition-duration' ) . slice ( 0 , - 1 ) ) ) : ( d . removeClass ( 'active' ) , e . addClass ( 'active' ) , this . sliding = ! 1 , this . $element . trigger ( 'slid.bs.carousel' ) ) , f && this . cycle ( ) , this ) ; } ; const c = a . fn . carousel ; a . fn . carousel = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.carousel' ) ; const f = a . extend ( { } , b . DEFAULTS , d . data ( ) , typeof c === 'object' && c ) ; const g = typeof c === 'string' ? c : f . slide ; e || d . data ( 'bs.carousel' , e = new b ( this , f ) ) , typeof c === 'number' ? e . to ( c ) : g ? e [ g ] ( ) : f . interval && e . pause ( ) . cycle ( ) ; } ) ; } , a . fn . carousel . Constructor = b , a . fn . carousel . noConflict = function ( ) { return a . fn . carousel = c , this ; } , a ( document ) . on ( 'click.bs.carousel.data-api' , '[data-slide], [data-slide-to]' , function ( b ) { let c ; const d = a ( this ) ; const e = a ( d . attr ( 'data-target' ) || ( c = d . attr ( 'href' ) ) && c . replace ( /.*(?=#[^\s]+$)/ , '' ) ) ; const f = a . extend ( { } , e . data ( ) , d . data ( ) ) ; let g = d . attr ( 'data-slide-to' ) ; g && ( f . interval = ! 1 ) , e . carousel ( f ) , ( g = d . attr ( 'data-slide-to' ) ) && e . data ( 'bs.carousel' ) . to ( g ) , b . preventDefault ( ) ; } ) , a ( window ) . on ( 'load' , ( ) => { a ( '[data-ride="carousel"]' ) . each ( function ( ) { const b = a ( this ) ; b . carousel ( b . data ( ) ) ; } ) ; } ) ;
} ( jQuery ) ) , + ( function ( a ) {
var b = function ( c , d ) { this . $element = a ( c ) , this . options = a . extend ( { } , b . DEFAULTS , d ) , this . transitioning = null , this . options . parent && ( this . $parent = a ( this . options . parent ) ) , this . options . toggle && this . toggle ( ) ; } ; b . DEFAULTS = { toggle : ! 0 } , b . prototype . dimension = function ( ) { const a = this . $element . hasClass ( 'width' ) ; return a ? 'width' : 'height' ; } , b . prototype . show = function ( ) { if ( ! this . transitioning && ! this . $element . hasClass ( 'in' ) ) { const b = a . Event ( 'show.bs.collapse' ) ; if ( this . $element . trigger ( b ) , ! b . isDefaultPrevented ( ) ) { const c = this . $parent && this . $parent . find ( '> .panel > .in' ) ; if ( c && c . length ) { const d = c . data ( 'bs.collapse' ) ; if ( d && d . transitioning ) return ; c . collapse ( 'hide' ) , d || c . data ( 'bs.collapse' , null ) ; } const e = this . dimension ( ) ; this . $element . removeClass ( 'collapse' ) . addClass ( 'collapsing' ) [ e ] ( 0 ) , this . transitioning = 1 ; const f = function ( ) { this . $element . removeClass ( 'collapsing' ) . addClass ( 'collapse in' ) [ e ] ( 'auto' ) , this . transitioning = 0 , this . $element . trigger ( 'shown.bs.collapse' ) ; } ; if ( ! a . support . transition ) return f . call ( this ) ; const g = a . camelCase ( [ 'scroll' , e ] . join ( '-' ) ) ; this . $element . one ( a . support . transition . end , a . proxy ( f , this ) ) . emulateTransitionEnd ( 350 ) [ e ] ( this . $element [ 0 ] [ g ] ) ; } } } , b . prototype . hide = function ( ) { if ( ! this . transitioning && this . $element . hasClass ( 'in' ) ) { const b = a . Event ( 'hide.bs.collapse' ) ; if ( this . $element . trigger ( b ) , ! b . isDefaultPrevented ( ) ) { const c = this . dimension ( ) ; this . $element [ c ] ( this . $element [ c ] ( ) ) [ 0 ] . offsetHeight , this . $element . addClass ( 'collapsing' ) . removeClass ( 'collapse' ) . removeClass ( 'in' ) , this . transitioning = 1 ; const d = function ( ) { this . transitioning = 0 , this . $element . trigger ( 'hidden.bs.collapse' ) . removeClass ( 'collapsing' ) . addClass ( 'collapse' ) ; } ; return a . support . transition ? void this . $element [ c ] ( 0 ) . one ( a . support . transition . end , a . proxy ( d , this ) ) . emulateTransitionEnd ( 350 ) : d . call ( this ) ; } } } , b . prototype . toggle = function ( ) { this [ this . $element . hasClass ( 'in' ) ? 'hide' : 'show' ] ( ) ; } ; const c = a . fn . collapse ; a . fn . collapse = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.collapse' ) ; const f = a . extend ( { } , b . DEFAULTS , d . data ( ) , typeof c === 'object' && c ) ; ! e && f . toggle && c == 'show' && ( c = ! c ) , e || d . data ( 'bs.collapse' , e = new b ( this , f ) ) , typeof c === 'string' && e [ c ] ( ) ; } ) ; } , a . fn . collapse . Constructor = b , a . fn . collapse . noConflict = function ( ) { return a . fn . collapse = c , this ; } , a ( document ) . on ( 'click.bs.collapse.data-api' , '[data-toggle=collapse]' , function ( b ) { let c ; const d = a ( this ) ; const e = d . attr ( 'data-target' ) || b . preventDefault ( ) || ( c = d . attr ( 'href' ) ) && c . replace ( /.*(?=#[^\s]+$)/ , '' ) ; const f = a ( e ) ; const g = f . data ( 'bs.collapse' ) ; const h = g ? 'toggle' : d . data ( ) ; const i = d . attr ( 'data-parent' ) ; const j = i && a ( i ) ; g && g . transitioning || ( j && j . find ( ` [data-toggle=collapse][data-parent=" ${ i } "] ` ) . not ( d ) . addClass ( 'collapsed' ) , d [ f . hasClass ( 'in' ) ? 'addClass' : 'removeClass' ] ( 'collapsed' ) ) , f . collapse ( h ) ; } ) ;
} ( jQuery ) ) , + ( function ( a ) {
function b ( b ) { a ( d ) . remove ( ) , a ( e ) . each ( function ( ) { const d = c ( a ( this ) ) ; const e = { relatedTarget : this } ; d . hasClass ( 'open' ) && ( d . trigger ( b = a . Event ( 'hide.bs.dropdown' , e ) ) , b . isDefaultPrevented ( ) || d . removeClass ( 'open' ) . trigger ( 'hidden.bs.dropdown' , e ) ) ; } ) ; } function c ( b ) { let c = b . attr ( 'data-target' ) ; c || ( c = b . attr ( 'href' ) , c = c && /#[A-Za-z]/ . test ( c ) && c . replace ( /.*(?=#[^\s]*$)/ , '' ) ) ; const d = c && a ( c ) ; return d && d . length ? d : b . parent ( ) ; } var d = '.dropdown-backdrop' ; var e = '[data-toggle=dropdown]' ; const f = function ( b ) { a ( b ) . on ( 'click.bs.dropdown' , this . toggle ) ; } ; f . prototype . toggle = function ( d ) { const e = a ( this ) ; if ( ! e . is ( '.disabled, :disabled' ) ) { const f = c ( e ) ; const g = f . hasClass ( 'open' ) ; if ( b ( ) , ! g ) { 'ontouchstart' in document . documentElement && ! f . closest ( '.navbar-nav' ) . length && a ( '<div class="dropdown-backdrop"/>' ) . insertAfter ( a ( this ) ) . on ( 'click' , b ) ; const h = { relatedTarget : this } ; if ( f . trigger ( d = a . Event ( 'show.bs.dropdown' , h ) ) , d . isDefaultPrevented ( ) ) return ; f . toggleClass ( 'open' ) . trigger ( 'shown.bs.dropdown' , h ) , e . focus ( ) ; } return ! 1 ; } } , f . prototype . keydown = function ( b ) { if ( /(38|40|27)/ . test ( b . keyCode ) ) { const d = a ( this ) ; if ( b . preventDefault ( ) , b . stopPropagation ( ) , ! d . is ( '.disabled, :disabled' ) ) { const f = c ( d ) ; const g = f . hasClass ( 'open' ) ; if ( ! g || g && b . keyCode == 27 ) return b . which == 27 && f . find ( e ) . focus ( ) , d . click ( ) ; const h = ' li:not(.divider):visible a' ; const i = f . find ( ` [role=menu] ${ h } , [role=listbox] ${ h } ` ) ; if ( i . length ) { let j = i . index ( i . filter ( ':focus' ) ) ; b . keyCode == 38 && j > 0 && j -- , b . keyCode == 40 && j < i . length - 1 && j ++ , ~ j || ( j = 0 ) , i . eq ( j ) . focus ( ) ; } } } } ; const g = a . fn . dropdown ; a . fn . dropdown = function ( b ) { return this . each ( function ( ) { const c = a ( this ) ; let d = c . data ( 'bs.dropdown' ) ; d || c . data ( 'bs.dropdown' , d = new f ( this ) ) , typeof b === 'string' && d [ b ] . call ( c ) ; } ) ; } , a . fn . dropdown . Constructor = f , a . fn . dropdown . noConflict = function ( ) { return a . fn . dropdown = g , this ; } , a ( document ) . on ( 'click.bs.dropdown.data-api' , b ) . on ( 'click.bs.dropdown.data-api' , '.dropdown form' , ( a ) => { a . stopPropagation ( ) ; } ) . on ( 'click.bs.dropdown.data-api' , e , f . prototype . toggle )
. on ( 'keydown.bs.dropdown.data-api' , ` ${ e } , [role=menu], [role=listbox] ` , f . prototype . keydown ) ;
} ( jQuery ) ) , + ( function ( a ) {
const b = function ( b , c ) { this . options = c , this . $element = a ( b ) , this . $backdrop = this . isShown = null , this . options . remote && this . $element . find ( '.modal-content' ) . load ( this . options . remote , a . proxy ( function ( ) { this . $element . trigger ( 'loaded.bs.modal' ) ; } , this ) ) ; } ; b . DEFAULTS = { backdrop : ! 0 , keyboard : ! 0 , show : ! 0 } , b . prototype . toggle = function ( a ) { return this [ this . isShown ? 'hide' : 'show' ] ( a ) ; } , b . prototype . show = function ( b ) { const c = this ; const d = a . Event ( 'show.bs.modal' , { relatedTarget : b } ) ; this . $element . trigger ( d ) , this . isShown || d . isDefaultPrevented ( ) || ( this . isShown = ! 0 , this . escape ( ) , this . $element . on ( 'click.dismiss.bs.modal' , '[data-dismiss="modal"]' , a . proxy ( this . hide , this ) ) , this . backdrop ( ( ) => { const d = a . support . transition && c . $element . hasClass ( 'fade' ) ; c . $element . parent ( ) . length || c . $element . appendTo ( document . body ) , c . $element . show ( ) . scrollTop ( 0 ) , d && c . $element [ 0 ] . offsetWidth , c . $element . addClass ( 'in' ) . attr ( 'aria-hidden' , ! 1 ) , c . enforceFocus ( ) ; const e = a . Event ( 'shown.bs.modal' , { relatedTarget : b } ) ; d ? c . $element . find ( '.modal-dialog' ) . one ( a . support . transition . end , ( ) => { c . $element . focus ( ) . trigger ( e ) ; } ) . emulateTransitionEnd ( 300 ) : c . $element . focus ( ) . trigger ( e ) ; } ) ) ; } , b . prototype . hide = function ( b ) { b && b . preventDefault ( ) , b = a . Event ( 'hide.bs.modal' ) , this . $element . trigger ( b ) , this . isShown && ! b . isDefaultPrevented ( ) && ( this . isShown = ! 1 , this . escape ( ) , a ( document ) . off ( 'focusin.bs.modal' ) , this . $element . removeClass ( 'in' ) . attr ( 'aria-hidden' , ! 0 ) . off ( 'click.dismiss.bs.modal' ) , a . support . transition && this . $element . hasClass ( 'fade' ) ? this . $element . one ( a . support . transition . end , a . proxy ( this . hideModal , this ) ) . emulateTransitionEnd ( 300 ) : this . hideModal ( ) ) ; } , b . prototype . enforceFocus = function ( ) { a ( document ) . off ( 'focusin.bs.modal' ) . on ( 'focusin.bs.modal' , a . proxy ( function ( a ) { this . $element [ 0 ] === a . target || this . $element . has ( a . target ) . length || this . $element . focus ( ) ; } , this ) ) ; } , b . prototype . escape = function ( ) { this . isShown && this . options . keyboard ? this . $element . on ( 'keyup.dismiss.bs.modal' , a . proxy ( function ( a ) { a . which == 27 && this . hide ( ) ; } , this ) ) : this . isShown || this . $element . off ( 'keyup.dismiss.bs.modal' ) ; } , b . prototype . hideModal = function ( ) { const a = this ; this . $element . hide ( ) , this . backdrop ( ( ) => { a . removeBackdrop ( ) , a . $element . trigger ( 'hidden.bs.modal' ) ; } ) ; } , b . prototype . removeBackdrop = function ( ) { this . $backdrop && this . $backdrop . remove ( ) , this . $backdrop = null ; } , b . prototype . backdrop = function ( b ) { const c = this . $element . hasClass ( 'fade' ) ? 'fade' : '' ; if ( this . isShown && this . options . backdrop ) { const d = a . support . transition && c ; if ( this . $backdrop = a ( ` <div class="modal-backdrop ${ c } " /> ` ) . appendTo ( document . body ) , this . $element . on ( 'click.dismiss.bs.modal' , a . proxy ( function ( a ) { a . target === a . currentTarget && ( this . options . backdrop == 'static' ? this . $element [ 0 ] . focus . call ( this . $element [ 0 ] ) : this . hide . call ( this ) ) ; } , this ) ) , d && this . $backdrop [ 0 ] . offsetWidth , this . $backdrop . addClass ( 'in' ) , ! b ) return ; d ? this . $backdrop . one ( a . support . transition . end , b ) . emulateTransitionEnd ( 150 ) : b ( ) ; } else ! this . isShown && this . $backdrop ? ( this . $backdrop . removeClass ( 'in' ) , a . support . transition && this . $element . hasClass ( 'fade' ) ? this . $backdrop . one ( a . support . transition . end , b ) . emulateTransitionEnd ( 150 ) : b ( ) ) : b && b ( ) ; } ; const c = a . fn . modal ; a . fn . modal = function ( c , d ) { return this . each ( function ( ) { const e = a ( this ) ; let f = e . data ( 'bs.modal' ) ; const g = a . extend ( { } , b . DEFAULTS , e . data ( ) , typeof c === 'object' && c ) ; f || e . data ( 'bs.modal' , f = new b ( this , g ) ) , typeof c === 'string' ? f [ c ] ( d ) : g . show && f . show ( d ) ; } ) ; } , a . fn . modal . Constructor = b , a . fn . modal . noConflict = function ( ) { return a . fn . modal = c , this ; } , a ( document ) . on ( 'click.bs.modal.data-api' , '[data-toggle="modal"]' , function ( b ) { const c = a ( this ) ; const d = c . attr ( 'href' ) ; const e = a ( c . attr ( 'data-target' ) || d && d . replace ( /.*(?=#[^\s]+$)/ , '' ) ) ; const f = e . data ( 'bs.modal' ) ? 'toggle' : a . extend ( { remote : ! /#/ . test ( d ) && d } , e . data ( ) , c . data ( ) ) ; c . is ( 'a' ) &&
} ( jQuery ) ) , + ( function ( a ) {
const b = function ( a , b ) { this . type = this . options = this . enabled = this . timeout = this . hoverState = this . $element = null , this . init ( 'tooltip' , a , b ) ; } ; b . DEFAULTS = {
animation : ! 0 , placement : 'top' , selector : ! 1 , template : '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' , trigger : 'hover focus' , title : '' , delay : 0 , html : ! 1 , container : ! 1 ,
} , b . prototype . init = function ( b , c , d ) { this . enabled = ! 0 , this . type = b , this . $element = a ( c ) , this . options = this . getOptions ( d ) ; for ( let e = this . options . trigger . split ( ' ' ) , f = e . length ; f -- ; ) { const g = e [ f ] ; if ( g == 'click' ) this . $element . on ( ` click. ${ this . type } ` , this . options . selector , a . proxy ( this . toggle , this ) ) ; else if ( g != 'manual' ) { const h = g == 'hover' ? 'mouseenter' : 'focusin' ; const i = g == 'hover' ? 'mouseleave' : 'focusout' ; this . $element . on ( ` ${ h } . ${ this . type } ` , this . options . selector , a . proxy ( this . enter , this ) ) , this . $element . on ( ` ${ i } . ${ this . type } ` , this . options . selector , a . proxy ( this . leave , this ) ) ; } } this . options . selector ? this . _options = a . extend ( { } , this . options , { trigger : 'manual' , selector : '' } ) : this . fixTitle ( ) ; } , b . prototype . getDefaults = function ( ) { return b . DEFAULTS ; } , b . prototype . getOptions = function ( b ) { return b = a . extend ( { } , this . getDefaults ( ) , this . $element . data ( ) , b ) , b . delay && typeof b . delay === 'number' && ( b . delay = { show : b . delay , hide : b . delay } ) , b ; } , b . prototype . getDelegateOptions = function ( ) { const b = { } ; const c = this . getDefaults ( ) ; return this . _options && a . each ( this . _options , ( a , d ) => { c [ a ] != d && ( b [ a ] = d ) ; } ) , b ; } , b . prototype . enter = function ( b ) { const c = b instanceof this . constructor ? b : a ( b . currentTarget ) [ this . type ] ( this . getDelegateOptions ( ) ) . data ( ` bs. ${ this . type } ` ) ; return clearTimeout ( c . timeout ) , c . hoverState = 'in' , c . options . delay && c . options . delay . show ? void ( c . timeout = setTimeout ( ( ) => { c . hoverState == 'in' && c . show ( ) ; } , c . options . delay . show ) ) : c . show ( ) ; } , b . prototype . leave = function ( b ) { const c = b instanceof this . constructor ? b : a ( b . currentTarget ) [ this . type ] ( this . getDelegateOptions ( ) ) . data ( ` bs. ${ this . type } ` ) ; return clearTimeout ( c . timeout ) , c . hoverState = 'out' , c . options . delay && c . options . delay . hide ? void ( c . timeout = setTimeout ( ( ) => { c . hoverState == 'out' && c . hide ( ) ; } , c . options . delay . hide ) ) : c . hide ( ) ; } , b . prototype . show = function ( ) { const b = a . Event ( ` show.bs. ${ this . type } ` ) ; if ( this . hasContent ( ) && this . enabled ) { if ( this . $element . trigger ( b ) , b . isDefaultPrevented ( ) ) return ; const c = this ; const d = this . tip ( ) ; this . setContent ( ) , this . options . animation && d . addClass ( 'fade' ) ; let e = typeof this . options . placement === 'function' ? this . options . placement . call ( this , d [ 0 ] , this . $element [ 0 ] ) : this . options . placement ; const f = /\s?auto?\s?/i ; const g = f . test ( e ) ; g && ( e = e . replace ( f , '' ) || 'top' ) , d . detach ( ) . css ( { top : 0 , left : 0 , display : 'block' } ) . addClass ( e ) , this . options . container ? d . appendTo ( this . options . container ) : d . insertAfter ( this . $element ) ; const h = this . getPosition ( ) ; const i = d [ 0 ] . offsetWidth ; const j = d [ 0 ] . offsetHeight ; if ( g ) { const k = this . $element . parent ( ) ; const l = e ; const m = document . documentElement . scrollTop || document . body . scrollTop ; const n = this . options . container == 'body' ? window . innerWidth : k . outerWidth ( ) ; const o = this . options . container == 'body' ? window . innerHeight : k . outerHeight ( ) ; const p = this . options . container == 'body' ? 0 : k . offset ( ) . left ; e = e == 'bottom' && h . top + h . height + j - m > o ? 'top' : e == 'top' && h . top - m - j < 0 ? 'bottom' : e == 'right' && h . right + i > n ? 'left' : e == 'left' && h . left - i < p ? 'right' : e , d . removeClass ( l ) . addClass ( e ) ; } const q = this . getCalculatedOffset ( e , h , i , j ) ; this . applyPlacement ( q , e ) , this . hoverState = null ; const r = function ( ) { c . $element . trigger ( ` shown.bs. ${ c . type } ` ) ; } ; a . support . transition && this . $tip . hasClass ( 'fade' ) ? d . one ( a . support . transition . end , r ) . emulateTransitionEnd ( 150 ) : r ( ) ; } } , b . prototype . applyPlacement = function ( b , c ) { let d ; const e = this . tip ( ) ; const f = e [ 0 ] . offsetWidth ; const g = e [ 0 ] . offsetHeight ; let h = parseInt ( e . css ( 'margin-top' ) , 10 ) ; let i = parseInt ( e . css ( 'margin-left' ) , 10 ) ; isNaN ( h ) && ( h = 0 ) , isNaN ( i ) && ( i = 0 ) , b . top += h , b . left += i , a . offset . setOffset ( e [ 0 ] , a . extend ( { using ( a ) { e . css ( { top : Math . round ( a . top ) , left : Math . round ( a . left ) } ) ; } } , b ) , 0 ) , e . addClass ( 'in' ) ; let j = e [ 0 ] . offsetWidth ; let k = e [ 0 ] . offsetHeight ; if ( c == 'top' && k != g &&
} ( jQuery ) ) , + ( function ( a ) {
const b = function ( a , b ) { this . init ( 'popover' , a , b ) ; } ; if ( ! a . fn . tooltip ) throw new Error ( 'Popover requires tooltip.js' ) ; b . DEFAULTS = a . extend ( { } , a . fn . tooltip . Constructor . DEFAULTS , {
placement : 'right' , trigger : 'click' , content : '' , template : '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' ,
} ) , b . prototype = a . extend ( { } , a . fn . tooltip . Constructor . prototype ) , b . prototype . constructor = b , b . prototype . getDefaults = function ( ) { return b . DEFAULTS ; } , b . prototype . setContent = function ( ) { const a = this . tip ( ) ; const b = this . getTitle ( ) ; const c = this . getContent ( ) ; a . find ( '.popover-title' ) [ this . options . html ? 'html' : 'text' ] ( b ) , a . find ( '.popover-content' ) [ this . options . html ? typeof c === 'string' ? 'html' : 'append' : 'text' ] ( c ) , a . removeClass ( 'fade top bottom left right in' ) , a . find ( '.popover-title' ) . html ( ) || a . find ( '.popover-title' ) . hide ( ) ; } , b . prototype . hasContent = function ( ) { return this . getTitle ( ) || this . getContent ( ) ; } , b . prototype . getContent = function ( ) { const a = this . $element ; const b = this . options ; return a . attr ( 'data-content' ) || ( typeof b . content === 'function' ? b . content . call ( a [ 0 ] ) : b . content ) ; } , b . prototype . arrow = function ( ) { return this . $arrow = this . $arrow || this . tip ( ) . find ( '.arrow' ) ; } , b . prototype . tip = function ( ) { return this . $tip || ( this . $tip = a ( this . options . template ) ) , this . $tip ; } ; const c = a . fn . popover ; a . fn . popover = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.popover' ) ; const f = typeof c === 'object' && c ; ( e || c != 'destroy' ) && ( e || d . data ( 'bs.popover' , e = new b ( this , f ) ) , typeof c === 'string' && e [ c ] ( ) ) ; } ) ; } , a . fn . popover . Constructor = b , a . fn . popover . noConflict = function ( ) { return a . fn . popover = c , this ; } ;
} ( jQuery ) ) , + ( function ( a ) {
function b ( c , d ) { let e ; const f = a . proxy ( this . process , this ) ; this . $element = a ( a ( c ) . is ( 'body' ) ? window : c ) , this . $body = a ( 'body' ) , this . $scrollElement = this . $element . on ( 'scroll.bs.scroll-spy.data-api' , f ) , this . options = a . extend ( { } , b . DEFAULTS , d ) , this . selector = ` ${ this . options . target || ( e = a ( c ) . attr ( 'href' ) ) && e . replace ( /.*(?=#[^\s]+$)/ , '' ) || '' } .nav li > a ` , this . offsets = a ( [ ] ) , this . targets = a ( [ ] ) , this . activeTarget = null , this . refresh ( ) , this . process ( ) ; } b . DEFAULTS = { offset : 10 } , b . prototype . refresh = function ( ) { const b = this . $element [ 0 ] == window ? 'offset' : 'position' ; this . offsets = a ( [ ] ) , this . targets = a ( [ ] ) ; { const c = this ; this . $body . find ( this . selector ) . map ( function ( ) { const d = a ( this ) ; const e = d . data ( 'target' ) || d . attr ( 'href' ) ; const f = /^#./ . test ( e ) && a ( e ) ; return f && f . length && f . is ( ':visible' ) && [ [ f [ b ] ( ) . top + ( ! a . isWindow ( c . $scrollElement . get ( 0 ) ) && c . $scrollElement . scrollTop ( ) ) , e ] ] || null ; } ) . sort ( ( a , b ) => a [ 0 ] - b [ 0 ] ) . each ( function ( ) { c . offsets . push ( this [ 0 ] ) , c . targets . push ( this [ 1 ] ) ; } ) ; } } , b . prototype . process = function ( ) { let a ; const b = this . $scrollElement . scrollTop ( ) + this . options . offset ; const c = this . $scrollElement [ 0 ] . scrollHeight || this . $body [ 0 ] . scrollHeight ; const d = c - this . $scrollElement . height ( ) ; const e = this . offsets ; const f = this . targets ; const g = this . activeTarget ; if ( b >= d ) return g != ( a = f . last ( ) [ 0 ] ) && this . activate ( a ) ; if ( g && b <= e [ 0 ] ) return g != ( a = f [ 0 ] ) && this . activate ( a ) ; for ( a = e . length ; a -- ; ) g != f [ a ] && b >= e [ a ] && ( ! e [ a + 1 ] || b <= e [ a + 1 ] ) && this . activate ( f [ a ] ) ; } , b . prototype . activate = function ( b ) { this . activeTarget = b , a ( this . selector ) . parentsUntil ( this . options . target , '.active' ) . removeClass ( 'active' ) ; const c = ` ${ this . selector } [data-target=" ${ b } "], ${ this . selector } [href=" ${ b } "] ` ; let d = a ( c ) . parents ( 'li' ) . addClass ( 'active' ) ; d . parent ( '.dropdown-menu' ) . length && ( d = d . closest ( 'li.dropdown' ) . addClass ( 'active' ) ) , d . trigger ( 'activate.bs.scrollspy' ) ; } ; const c = a . fn . scrollspy ; a . fn . scrollspy = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.scrollspy' ) ; const f = typeof c === 'object' && c ; e || d . data ( 'bs.scrollspy' , e = new b ( this , f ) ) , typeof c === 'string' && e [ c ] ( ) ; } ) ; } , a . fn . scrollspy . Constructor = b , a . fn . scrollspy . noConflict = function ( ) { return a . fn . scrollspy = c , this ; } , a ( window ) . on ( 'load' , ( ) => { a ( '[data-spy="scroll"]' ) . each ( function ( ) { const b = a ( this ) ; b . scrollspy ( b . data ( ) ) ; } ) ; } ) ;
} ( jQuery ) ) , + ( function ( a ) {
const b = function ( b ) { this . element = a ( b ) ; } ; b . prototype . show = function ( ) { const b = this . element ; const c = b . closest ( 'ul:not(.dropdown-menu)' ) ; let d = b . data ( 'target' ) ; if ( d || ( d = b . attr ( 'href' ) , d = d && d . replace ( /.*(?=#[^\s]*$)/ , '' ) ) , ! b . parent ( 'li' ) . hasClass ( 'active' ) ) { const e = c . find ( '.active:last a' ) [ 0 ] ; const f = a . Event ( 'show.bs.tab' , { relatedTarget : e } ) ; if ( b . trigger ( f ) , ! f . isDefaultPrevented ( ) ) { const g = a ( d ) ; this . activate ( b . parent ( 'li' ) , c ) , this . activate ( g , g . parent ( ) , ( ) => { b . trigger ( { type : 'shown.bs.tab' , relatedTarget : e } ) ; } ) ; } } } , b . prototype . activate = function ( b , c , d ) { function e ( ) { f . removeClass ( 'active' ) . find ( '> .dropdown-menu > .active' ) . removeClass ( 'active' ) , b . addClass ( 'active' ) , g ? ( b [ 0 ] . offsetWidth , b . addClass ( 'in' ) ) : b . removeClass ( 'fade' ) , b . parent ( '.dropdown-menu' ) && b . closest ( 'li.dropdown' ) . addClass ( 'active' ) , d && d ( ) ; } var f = c . find ( '> .active' ) ; var g = d && a . support . transition && f . hasClass ( 'fade' ) ; g ? f . one ( a . support . transition . end , e ) . emulateTransitionEnd ( 150 ) : e ( ) , f . removeClass ( 'in' ) ; } ; const c = a . fn . tab ; a . fn . tab = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.tab' ) ; e || d . data ( 'bs.tab' , e = new b ( this ) ) , typeof c === 'string' && e [ c ] ( ) ; } ) ; } , a . fn . tab . Constructor = b , a . fn . tab . noConflict = function ( ) { return a . fn . tab = c , this ; } , a ( document ) . on ( 'click.bs.tab.data-api' , '[data-toggle="tab"], [data-toggle="pill"]' , function ( b ) { b . preventDefault ( ) , a ( this ) . tab ( 'show' ) ; } ) ;
} ( jQuery ) ) , + ( function ( a ) {
var b = function ( c , d ) { this . options = a . extend ( { } , b . DEFAULTS , d ) , this . $window = a ( window ) . on ( 'scroll.bs.affix.data-api' , a . proxy ( this . checkPosition , this ) ) . on ( 'click.bs.affix.data-api' , a . proxy ( this . checkPositionWithEventLoop , this ) ) , this . $element = a ( c ) , this . affixed = this . unpin = this . pinnedOffset = null , this . checkPosition ( ) ; } ; b . RESET = 'affix affix-top affix-bottom' , b . DEFAULTS = { offset : 0 } , b . prototype . getPinnedOffset = function ( ) { if ( this . pinnedOffset ) return this . pinnedOffset ; this . $element . removeClass ( b . RESET ) . addClass ( 'affix' ) ; const a = this . $window . scrollTop ( ) ; const c = this . $element . offset ( ) ; return this . pinnedOffset = c . top - a ; } , b . prototype . checkPositionWithEventLoop = function ( ) { setTimeout ( a . proxy ( this . checkPosition , this ) , 1 ) ; } , b . prototype . checkPosition = function ( ) { if ( this . $element . is ( ':visible' ) ) { const c = a ( document ) . height ( ) ; const d = this . $window . scrollTop ( ) ; const e = this . $element . offset ( ) ; const f = this . options . offset ; let g = f . top ; let h = f . bottom ; this . affixed == 'top' && ( e . top += d ) , typeof f !== 'object' && ( h = g = f ) , typeof g === 'function' && ( g = f . top ( this . $element ) ) , typeof h === 'function' && ( h = f . bottom ( this . $element ) ) ; const i = this . unpin != null && d + this . unpin <= e . top ? ! 1 : h != null && e . top + this . $element . height ( ) >= c - h ? 'bottom' : g != null && g >= d ? 'top' : ! 1 ; if ( this . affixed !== i ) { this . unpin && this . $element . css ( 'top' , '' ) ; const j = ` affix ${ i ? ` - ${ i } ` : '' } ` ; const k = a . Event ( ` ${ j } .bs.affix ` ) ; this . $element . trigger ( k ) , k . isDefaultPrevented ( ) || ( this . affixed = i , this . unpin = i == 'bottom' ? this . getPinnedOffset ( ) : null , this . $element . removeClass ( b . RESET ) . addClass ( j ) . trigger ( a . Event ( j . replace ( 'affix' , 'affixed' ) ) ) , i == 'bottom' && this . $element . offset ( { top : c - h - this . $element . height ( ) } ) ) ; } } } ; const c = a . fn . affix ; a . fn . affix = function ( c ) { return this . each ( function ( ) { const d = a ( this ) ; let e = d . data ( 'bs.affix' ) ; const f = typeof c === 'object' && c ; e || d . data ( 'bs.affix' , e = new b ( this , f ) ) , typeof c === 'string' && e [ c ] ( ) ; } ) ; } , a . fn . affix . Constructor = b , a . fn . affix . noConflict = function ( ) { return a . fn . affix = c , this ; } , a ( window ) . on ( 'load' , ( ) => { a ( '[data-spy="affix"]' ) . each ( function ( ) { const b = a ( this ) ; const c = b . data ( ) ; c . offset = c . offset || { } , c . offsetBottom && ( c . offset . bottom = c . offsetBottom ) , c . offsetTop && ( c . offset . top = c . offsetTop ) , b . affix ( c ) ; } ) ; } ) ;
} ( jQuery ) ) ;