Welcome to mirror list, hosted at ThFree Co, Russian Federation.

bootstrap.esm.min.js « js « dist - github.com/twbs/bootstrap.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: bb836fd9e9ce3f62089d5c3905277ed7f4de76cc (plain)
1
2
3
4
5
6
7
/*!
  * Bootstrap v4.3.1 (https://getbootstrap.com/)
  * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
  */
import Popper from"popper.js";const MAX_UID=1e6,MILLISECONDS_MULTIPLIER=1e3,TRANSITION_END="transitionend",_window=window,jQuery=_window.jQuery,toType=e=>({}).toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),getUID=e=>{do{e+=~~(1e6*Math.random())}while(document.getElementById(e));return e},getSelectorFromElement=e=>{let t=e.getAttribute("data-target");if(!t||"#"===t){const n=e.getAttribute("href");t=n&&"#"!==n?n.trim():""}try{return document.querySelector(t)?t:null}catch(e){return null}},getTransitionDurationFromElement=e=>{if(!e)return 0;let t=window.getComputedStyle(e),n=t.transitionDuration,i=t.transitionDelay;const s=parseFloat(n),a=parseFloat(i);return s||a?(n=n.split(",")[0],i=i.split(",")[0],1e3*(parseFloat(n)+parseFloat(i))):0},triggerTransitionEnd=e=>{e.dispatchEvent(new Event(TRANSITION_END))},isElement=e=>(e[0]||e).nodeType,emulateTransitionEnd=(e,t)=>{let n=!1;const i=t+5;e.addEventListener(TRANSITION_END,function t(){n=!0,e.removeEventListener(TRANSITION_END,t)}),setTimeout(()=>{n||triggerTransitionEnd(e)},i)},typeCheckConfig=(e,t,n)=>{Object.keys(n).forEach(i=>{const s=n[i],a=t[i],o=a&&isElement(a)?"element":toType(a);if(!new RegExp(s).test(o))throw new Error(`${e.toUpperCase()}: `+`Option "${i}" provided type "${o}" `+`but expected type "${s}".`)})},makeArray=e=>e?[].slice.call(e):[],isVisible=e=>!!e&&(!!(e.style&&e.parentNode&&e.parentNode.style)&&("none"!==e.style.display&&"none"!==e.parentNode.style.display&&"hidden"!==e.style.visibility)),findShadowRoot=e=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof e.getRootNode){const t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?findShadowRoot(e.parentNode):null},noop=()=>(function(){}),reflow=e=>e.offsetHeight,mapData=(()=>{const e={};let t=1;return{set(n,i,s){void 0===n.key&&(n.key={key:i,id:t},t++),e[n.key.id]=s},get(t,n){if(!t||void 0===t.key)return null;const i=t.key;return i.key===n?e[i.id]:null},delete(t,n){if(void 0===t.key)return;const i=t.key;i.key===n&&(delete e[i.id],delete t.key)}}})(),Data={setData(e,t,n){mapData.set(e,t,n)},getData:(e,t)=>mapData.get(e,t),removeData(e,t){mapData.delete(e,t)}},Polyfill=(()=>{const e=(()=>{const e=new CustomEvent("Bootstrap",{cancelable:!0}),t=document.createElement("div");return t.addEventListener("Bootstrap",()=>null),e.preventDefault(),t.dispatchEvent(e),e.defaultPrevented})();let t=Element.prototype.querySelectorAll,n=Element.prototype.querySelector;const i=/:scope\b/;return(()=>{const e=document.createElement("div");try{e.querySelectorAll(":scope *")}catch(e){return!1}return!0})()||(t=function(e){if(!i.test(e))return this.querySelectorAll(e);const t=Boolean(this.id);t||(this.id=getUID("scope"));let n=null;try{e=e.replace(i,`#${this.id}`),n=this.querySelectorAll(e)}finally{t||this.removeAttribute("id")}return n},n=function(e){if(!i.test(e))return this.querySelector(e);const n=t.call(this,e);return void 0!==n[0]?n[0]:null}),{defaultPreventedPreservedOnDispatch:e,find:t,findOne:n}})(),namespaceRegex=/[^.]*(?=\..*)\.|.*/,stripNameRegex=/\..*/,keyEventRegex=/^key/,stripUidRegex=/::\d+$/,eventRegistry={};let uidEvent=1;const customEvents={mouseenter:"mouseover",mouseleave:"mouseout"},nativeEvents=["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"];function getUidEvent(e,t){return t&&`${t}::${uidEvent++}`||e.uidEvent||uidEvent++}function getEvent(e){const t=getUidEvent(e);return e.uidEvent=t,eventRegistry[t]=eventRegistry[t]||{},eventRegistry[t]}function fixEvent(e,t){null===e.which&&keyEventRegex.test(e.type)&&(e.which=null===e.charCode?e.keyCode:e.charCode),e.delegateTarget=t}function bootstrapHandler(e,t){return function n(i){return fixEvent(i,e),n.oneOff&&EventHandler.off(e,i.type,t),t.apply(e,[i])}}function bootstrapDelegationHandler(e,t,n){return function i(s){const a=e.querySelectorAll(t);for(let t=s.target;t&&t!==this;t=t.parentNode)for(let o=a.length;o--;)if(a[o]===t)return fixEvent(s,t),i.oneOff&&EventHandler.off(e,s.type,n),n.apply(t,[s]);return null}}function findHandler(e,t,n){void 0===n&&(n=null);const i=Object.keys(e);for(let s=0;s<i.length;s++){const a=i[s],o=e[a];if(o.originalHandler===t&&o.delegationSelector===n)return e[a]}return null}function normalizeParams(e,t,n){const i="string"==typeof t,s=i?n:t;let a=e.replace(stripNameRegex,"");const o=customEvents[a];return o&&(a=o),nativeEvents.indexOf(a)>-1||(a=e),[i,s,a]}function addHandler(e,t,n,i,s){if("string"!=typeof t||!e)return;n||(n=i,i=null);const a=normalizeParams(t,n,i),o=a[0],r=a[1],l=a[2],c=getEvent(e),E=c[l]||(c[l]={}),h=findHandler(E,r,o?n:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=getUidEvent(r,t.replace(namespaceRegex,"")),_=o?bootstrapDelegationHandler(e,n,i):bootstrapHandler(e,n);_.delegationSelector=o?n:null,_.originalHandler=r,_.oneOff=s,_.uidEvent=d,E[d]=_,e.addEventListener(l,_,o)}function removeHandler(e,t,n,i,s){const a=findHandler(t[n],i,s);null!==a&&(e.removeEventListener(n,a,Boolean(s)),delete t[n][a.uidEvent])}function removeNamespacedHandlers(e,t,n,i){const s=t[n]||{};Object.keys(s).forEach(a=>{if(a.indexOf(i)>-1){const i=s[a];removeHandler(e,t,n,i.originalHandler,i.delegationSelector)}})}const EventHandler={on(e,t,n,i){addHandler(e,t,n,i,!1)},one(e,t,n,i){addHandler(e,t,n,i,!0)},off(e,t,n,i){if("string"!=typeof t||!e)return;const s=normalizeParams(t,n,i),a=s[0],o=s[1],r=s[2],l=r!==t,c=getEvent(e),E="."===t.charAt(0);if(void 0!==o){if(!c||!c[r])return;return void removeHandler(e,c,r,o,a?n:null)}E&&Object.keys(c).forEach(n=>{removeNamespacedHandlers(e,c,n,t.substr(1))});const h=c[r]||{};Object.keys(h).forEach(n=>{const i=n.replace(stripUidRegex,"");if(!l||t.indexOf(i)>-1){const t=h[n];removeHandler(e,c,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if("string"!=typeof t||!e)return null;const i=t.replace(stripNameRegex,""),s=t!==i,a=nativeEvents.indexOf(i)>-1;let o,r=!0,l=!0,c=!1,E=null;return s&&void 0!==jQuery&&(o=jQuery.Event(t,n),jQuery(e).trigger(o),r=!o.isPropagationStopped(),l=!o.isImmediatePropagationStopped(),c=o.isDefaultPrevented()),a?(E=document.createEvent("HTMLEvents")).initEvent(i,r,!0):E=new CustomEvent(t,{bubbles:r,cancelable:!0}),void 0!==n&&Object.keys(n).forEach(e=>{Object.defineProperty(E,e,{get:()=>n[e]})}),c&&(E.preventDefault(),Polyfill.defaultPreventedPreservedOnDispatch||Object.defineProperty(E,"defaultPrevented",{get:()=>!0})),l&&e.dispatchEvent(E),E.defaultPrevented&&void 0!==o&&o.preventDefault(),E}},findFn=Polyfill.find,findOne=Polyfill.findOne,NODE_TEXT=3,SelectorEngine={matches:(e,t)=>e.matches(t),find:(e,t)=>(void 0===t&&(t=document.documentElement),"string"!=typeof e?null:findFn.call(t,e)),findOne:(e,t)=>(void 0===t&&(t=document.documentElement),"string"!=typeof e?null:findOne.call(t,e)),children(e,t){if("string"!=typeof t)return null;return makeArray(e.children).filter(e=>this.matches(e,t))},parents(e,t){if("string"!=typeof t)return null;const n=[];let i=e.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)this.matches(i,t)&&n.push(i),i=i.parentNode;return n},closest:(e,t)=>"string"!=typeof t?null:e.closest(t),prev(e,t){if("string"!=typeof t)return null;const n=[];let i=e.previousSibling;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)this.matches(i,t)&&n.push(i),i=i.previousSibling;return n}},NAME="alert",VERSION="4.3.1",DATA_KEY="bs.alert",EVENT_KEY=`.${DATA_KEY}`,DATA_API_KEY=".data-api",Selector={DISMISS:'[data-dismiss="alert"]'},Event$1={CLOSE:`close${EVENT_KEY}`,CLOSED:`closed${EVENT_KEY}`,CLICK_DATA_API:`click${EVENT_KEY}.data-api`},ClassName={ALERT:"alert",FADE:"fade",SHOW:"show"};class Alert{constructor(e){this._element=e,this._element&&Data.setData(e,DATA_KEY,this)}static get VERSION(){return VERSION}close(e){let t=this._element;e&&(t=this._getRootElement(e));const n=this._triggerCloseEvent(t);null===n||n.defaultPrevented||this._removeElement(t)}dispose(){Data.removeData(this._element,DATA_KEY),this._element=null}_getRootElement(e){const t=getSelectorFromElement(e);let n=!1;return t&&(n=SelectorEngine.findOne(t)),n||(n=SelectorEngine.closest(e,`.${ClassName.ALERT}`)),n}_triggerCloseEvent(e){return EventHandler.trigger(e,Event$1.CLOSE)}_removeElement(e){if(e.classList.remove(ClassName.SHOW),!e.classList.contains(ClassName.FADE))return void this._destroyElement(e);const t=getTransitionDurationFromElement(e);EventHandler.one(e,TRANSITION_END,t=>this._destroyElement(e,t)),emulateTransitionEnd(e,t)}_destroyElement(e){e.parentNode&&e.parentNode.removeChild(e),EventHandler.trigger(e,Event$1.CLOSED)}static _jQueryInterface(e){return this.each(function(){let t=Data.getData(this,DATA_KEY);t||(t=new Alert(this)),"close"===e&&t[e](this)})}static _handleDismiss(e){return function(t){t&&t.preventDefault(),e.close(this)}}static _getInstance(e){return Data.getData(e,DATA_KEY)}}if(EventHandler.on(document,Event$1.CLICK_DATA_API,Selector.DISMISS,Alert._handleDismiss(new Alert)),void 0!==jQuery){const e=jQuery.fn.alert;jQuery.fn.alert=Alert._jQueryInterface,jQuery.fn.alert.Constructor=Alert,jQuery.fn.alert.noConflict=(()=>(jQuery.fn.alert=e,Alert._jQueryInterface))}const NAME$1="button",VERSION$1="4.3.1",DATA_KEY$1="bs.button",EVENT_KEY$1=`.${DATA_KEY$1}`,DATA_API_KEY$1=".data-api",ClassName$1={ACTIVE:"active",BUTTON:"btn",FOCUS:"focus"},Selector$1={DATA_TOGGLE_CARROT:'[data-toggle^="button"]',DATA_TOGGLE:'[data-toggle="buttons"]',INPUT:'input:not([type="hidden"])',ACTIVE:".active",BUTTON:".btn"},Event$2={CLICK_DATA_API:`click${EVENT_KEY$1}.data-api`,FOCUS_DATA_API:`focus${EVENT_KEY$1}.data-api`,BLUR_DATA_API:`blur${EVENT_KEY$1}.data-api`};class Button{constructor(e){this._element=e,Data.setData(e,DATA_KEY$1,this)}static get VERSION(){return VERSION$1}toggle(){let e=!0,t=!0;const n=SelectorEngine.closest(this._element,Selector$1.DATA_TOGGLE);if(n){const i=SelectorEngine.findOne(Selector$1.INPUT,this._element);if(i){if("radio"===i.type)if(i.checked&&this._element.classList.contains(ClassName$1.ACTIVE))e=!1;else{const e=SelectorEngine.findOne(Selector$1.ACTIVE,n);e&&e.classList.remove(ClassName$1.ACTIVE)}if(e){if(i.hasAttribute("disabled")||n.hasAttribute("disabled")||i.classList.contains("disabled")||n.classList.contains("disabled"))return;i.checked=!this._element.classList.contains(ClassName$1.ACTIVE),EventHandler.trigger(i,"change")}i.focus(),t=!1}}t&&this._element.setAttribute("aria-pressed",!this._element.classList.contains(ClassName$1.ACTIVE)),e&&this._element.classList.toggle(ClassName$1.ACTIVE)}dispose(){Data.removeData(this._element,DATA_KEY$1),this._element=null}static _jQueryInterface(e){return this.each(function(){let t=Data.getData(this,DATA_KEY$1);t||(t=new Button(this)),"toggle"===e&&t[e]()})}static _getInstance(e){return Data.getData(e,DATA_KEY$1)}}if(EventHandler.on(document,Event$2.CLICK_DATA_API,Selector$1.DATA_TOGGLE_CARROT,e=>{e.preventDefault();let t=e.target;t.classList.contains(ClassName$1.BUTTON)||(t=SelectorEngine.closest(t,Selector$1.BUTTON));let n=Data.getData(t,DATA_KEY$1);n||(n=new Button(t),Data.setData(t,DATA_KEY$1,n)),n.toggle()}),EventHandler.on(document,Event$2.FOCUS_DATA_API,Selector$1.DATA_TOGGLE_CARROT,e=>{SelectorEngine.closest(e.target,Selector$1.BUTTON).classList.add(ClassName$1.FOCUS)}),EventHandler.on(document,Event$2.BLUR_DATA_API,Selector$1.DATA_TOGGLE_CARROT,e=>{SelectorEngine.closest(e.target,Selector$1.BUTTON).classList.remove(ClassName$1.FOCUS)}),void 0!==jQuery){const e=jQuery.fn.button;jQuery.fn.button=Button._jQueryInterface,jQuery.fn.button.Constructor=Button,jQuery.fn.button.noConflict=(()=>(jQuery.fn.button=e,Button._jQueryInterface))}function _extends(){return(_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function normalizeData(e){return"true"===e||"false"!==e&&(e===Number(e).toString()?Number(e):""===e||"null"===e?null:e)}function normalizeDataKey(e){return e.replace(/[A-Z]/g,e=>e.toLowerCase())}const Manipulator={setDataAttribute(e,t,n){e.setAttribute(`data-${normalizeDataKey(t)}`,n)},removeDataAttribute(e,t){e.removeAttribute(`data-${normalizeDataKey(t)}`)},getDataAttributes(e){if(!e)return{};const t=_extends({},e.dataset);return Object.keys(t).forEach(e=>{t[e]=normalizeData(t[e])}),t},getDataAttribute:(e,t)=>normalizeData(e.getAttribute(`data-${normalizeDataKey(t)}`)),offset(e){const t=e.getBoundingClientRect();return{top:t.top+document.body.scrollTop,left:t.left+document.body.scrollLeft}},position:e=>({top:e.offsetTop,left:e.offsetLeft}),toggleClass(e,t){e&&(e.classList.contains(t)?e.classList.remove(t):e.classList.add(t))}},NAME$2="carousel",VERSION$2="4.3.1",DATA_KEY$2="bs.carousel",EVENT_KEY$2=`.${DATA_KEY$2}`,DATA_API_KEY$2=".data-api",ARROW_LEFT_KEYCODE=37,ARROW_RIGHT_KEYCODE=39,TOUCHEVENT_COMPAT_WAIT=500,SWIPE_THRESHOLD=40,Default={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},DefaultType={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Direction={NEXT:"next",PREV:"prev",LEFT:"left",RIGHT:"right"},Event$3={SLIDE:`slide${EVENT_KEY$2}`,SLID:`slid${EVENT_KEY$2}`,KEYDOWN:`keydown${EVENT_KEY$2}`,MOUSEENTER:`mouseenter${EVENT_KEY$2}`,MOUSELEAVE:`mouseleave${EVENT_KEY$2}`,TOUCHSTART:`touchstart${EVENT_KEY$2}`,TOUCHMOVE:`touchmove${EVENT_KEY$2}`,TOUCHEND:`touchend${EVENT_KEY$2}`,POINTERDOWN:`pointerdown${EVENT_KEY$2}`,POINTERUP:`pointerup${EVENT_KEY$2}`,DRAG_START:`dragstart${EVENT_KEY$2}`,LOAD_DATA_API:`load${EVENT_KEY$2}.data-api`,CLICK_DATA_API:`click${EVENT_KEY$2}.data-api`},ClassName$2={CAROUSEL:"carousel",ACTIVE:"active",SLIDE:"slide",RIGHT:"carousel-item-right",LEFT:"carousel-item-left",NEXT:"carousel-item-next",PREV:"carousel-item-prev",ITEM:"carousel-item",POINTER_EVENT:"pointer-event"},Selector$2={ACTIVE:".active",ACTIVE_ITEM:".active.carousel-item",ITEM:".carousel-item",ITEM_IMG:".carousel-item img",NEXT_PREV:".carousel-item-next, .carousel-item-prev",INDICATORS:".carousel-indicators",DATA_SLIDE:"[data-slide], [data-slide-to]",DATA_RIDE:'[data-ride="carousel"]'},PointerType={TOUCH:"touch",PEN:"pen"};class Carousel{constructor(e,t){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._element=e,this._indicatorsElement=SelectorEngine.findOne(Selector$2.INDICATORS,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners(),Data.setData(e,DATA_KEY$2,this)}static get VERSION(){return VERSION$2}static get Default(){return Default}next(){this._isSliding||this._slide(Direction.NEXT)}nextWhenVisible(){!document.hidden&&isVisible(this._element)&&this.next()}prev(){this._isSliding||this._slide(Direction.PREV)}pause(e){e||(this._isPaused=!0),SelectorEngine.findOne(Selector$2.NEXT_PREV,this._element)&&(triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=SelectorEngine.findOne(Selector$2.ACTIVE_ITEM,this._element);const t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding)return void EventHandler.one(this._element,Event$3.SLID,()=>this.to(e));if(t===e)return this.pause(),void this.cycle();const n=e>t?Direction.NEXT:Direction.PREV;this._slide(n,this._items[e])}dispose(){EventHandler.off(this._element,EVENT_KEY$2),Data.removeData(this._element,DATA_KEY$2),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null}_getConfig(e){return e=_extends({},Default,e),typeCheckConfig(NAME$2,e,DefaultType),e}_handleSwipe(){const e=Math.abs(this.touchDeltaX);if(e<=SWIPE_THRESHOLD)return;const t=e/this.touchDeltaX;t>0&&this.prev(),t<0&&this.next()}_addEventListeners(){this._config.keyboard&&EventHandler.on(this._element,Event$3.KEYDOWN,e=>this._keydown(e)),"hover"===this._config.pause&&(EventHandler.on(this._element,Event$3.MOUSEENTER,e=>this.pause(e)),EventHandler.on(this._element,Event$3.MOUSELEAVE,e=>this.cycle(e))),this._config.touch&&this._addTouchEventListeners()}_addTouchEventListeners(){if(!this._touchSupported)return;const e=e=>{this._pointerEvent&&PointerType[e.pointerType.toUpperCase()]?this.touchStartX=e.clientX:this._pointerEvent||(this.touchStartX=e.touches[0].clientX)},t=e=>{e.touches&&e.touches.length>1?this.touchDeltaX=0:this.touchDeltaX=e.touches[0].clientX-this.touchStartX},n=e=>{this._pointerEvent&&PointerType[e.pointerType.toUpperCase()]&&(this.touchDeltaX=e.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),TOUCHEVENT_COMPAT_WAIT+this._config.interval))};makeArray(SelectorEngine.find(Selector$2.ITEM_IMG,this._element)).forEach(e=>{EventHandler.on(e,Event$3.DRAG_START,e=>e.preventDefault())}),this._pointerEvent?(EventHandler.on(this._element,Event$3.POINTERDOWN,t=>e(t)),EventHandler.on(this._element,Event$3.POINTERUP,e=>n(e)),this._element.classList.add(ClassName$2.POINTER_EVENT)):(EventHandler.on(this._element,Event$3.TOUCHSTART,t=>e(t)),EventHandler.on(this._element,Event$3.TOUCHMOVE,e=>t(e)),EventHandler.on(this._element,Event$3.TOUCHEND,e=>n(e)))}_keydown(e){if(!/input|textarea/i.test(e.target.tagName))switch(e.which){case ARROW_LEFT_KEYCODE:e.preventDefault(),this.prev();break;case ARROW_RIGHT_KEYCODE:e.preventDefault(),this.next()}}_getItemIndex(e){return this._items=e&&e.parentNode?makeArray(SelectorEngine.find(Selector$2.ITEM,e.parentNode)):[],this._items.indexOf(e)}_getItemByDirection(e,t){const n=e===Direction.NEXT,i=e===Direction.PREV,s=this._getItemIndex(t),a=this._items.length-1;if((i&&0===s||n&&s===a)&&!this._config.wrap)return t;const o=(s+(e===Direction.PREV?-1:1))%this._items.length;return-1===o?this._items[this._items.length-1]:this._items[o]}_triggerSlideEvent(e,t){const n=this._getItemIndex(e),i=this._getItemIndex(SelectorEngine.findOne(Selector$2.ACTIVE_ITEM,this._element));return EventHandler.trigger(this._element,Event$3.SLIDE,{relatedTarget:e,direction:t,from:i,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){const t=SelectorEngine.find(Selector$2.ACTIVE,this._indicatorsElement);for(let e=0;e<t.length;e++)t[e].classList.remove(ClassName$2.ACTIVE);const n=this._indicatorsElement.children[this._getItemIndex(e)];n&&n.classList.add(ClassName$2.ACTIVE)}}_slide(e,t){const n=SelectorEngine.findOne(Selector$2.ACTIVE_ITEM,this._element),i=this._getItemIndex(n),s=t||n&&this._getItemByDirection(e,n),a=this._getItemIndex(s),o=Boolean(this._interval);let r,l,c;if(e===Direction.NEXT?(r=ClassName$2.LEFT,l=ClassName$2.NEXT,c=Direction.LEFT):(r=ClassName$2.RIGHT,l=ClassName$2.PREV,c=Direction.RIGHT),s&&s.classList.contains(ClassName$2.ACTIVE))return void(this._isSliding=!1);if(!this._triggerSlideEvent(s,c).defaultPrevented&&n&&s){if(this._isSliding=!0,o&&this.pause(),this._setActiveIndicatorElement(s),this._element.classList.contains(ClassName$2.SLIDE)){s.classList.add(l),reflow(s),n.classList.add(r),s.classList.add(r);const e=parseInt(s.getAttribute("data-interval"),10);e?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=e):this._config.interval=this._config.defaultInterval||this._config.interval;const t=getTransitionDurationFromElement(n);EventHandler.one(n,TRANSITION_END,()=>{s.classList.remove(r),s.classList.remove(l),s.classList.add(ClassName$2.ACTIVE),n.classList.remove(ClassName$2.ACTIVE),n.classList.remove(l),n.classList.remove(r),this._isSliding=!1,setTimeout(()=>{EventHandler.trigger(this._element,Event$3.SLID,{relatedTarget:s,direction:c,from:i,to:a})},0)}),emulateTransitionEnd(n,t)}else n.classList.remove(ClassName$2.ACTIVE),s.classList.add(ClassName$2.ACTIVE),this._isSliding=!1,EventHandler.trigger(this._element,Event$3.SLID,{relatedTarget:s,direction:c,from:i,to:a});o&&this.cycle()}}static _carouselInterface(e,t){let n=Data.getData(e,DATA_KEY$2),i=_extends({},Default,Manipulator.getDataAttributes(e));"object"==typeof t&&(i=_extends({},i,t));const s="string"==typeof t?t:i.slide;if(n||(n=new Carousel(e,i)),"number"==typeof t)n.to(t);else if("string"==typeof s){if(void 0===n[s])throw new TypeError(`No method named "${s}"`);n[s]()}else i.interval&&i.ride&&(n.pause(),n.cycle())}static _jQueryInterface(e){return this.each(function(){Carousel._carouselInterface(this,e)})}static _dataApiClickHandler(e){const t=getSelectorFromElement(this);if(!t)return;const n=SelectorEngine.findOne(t);if(!n||!n.classList.contains(ClassName$2.CAROUSEL))return;const i=_extends({},Manipulator.getDataAttributes(n),Manipulator.getDataAttributes(this)),s=this.getAttribute("data-slide-to");s&&(i.interval=!1),Carousel._carouselInterface(n,i),s&&Data.getData(n,DATA_KEY$2).to(s),e.preventDefault()}static _getInstance(e){return Data.getData(e,DATA_KEY$2)}}if(EventHandler.on(document,Event$3.CLICK_DATA_API,Selector$2.DATA_SLIDE,Carousel._dataApiClickHandler),EventHandler.on(window,Event$3.LOAD_DATA_API,()=>{const e=makeArray(SelectorEngine.find(Selector$2.DATA_RIDE));for(let t=0,n=e.length;t<n;t++)Carousel._carouselInterface(e[t],Data.getData(e[t],DATA_KEY$2))}),void 0!==jQuery){const e=jQuery.fn[NAME$2];jQuery.fn[NAME$2]=Carousel._jQueryInterface,jQuery.fn[NAME$2].Constructor=Carousel,jQuery.fn[NAME$2].noConflict=(()=>(jQuery.fn[NAME$2]=e,Carousel._jQueryInterface))}const NAME$3="collapse",VERSION$3="4.3.1",DATA_KEY$3="bs.collapse",EVENT_KEY$3=`.${DATA_KEY$3}`,DATA_API_KEY$3=".data-api",Default$1={toggle:!0,parent:""},DefaultType$1={toggle:"boolean",parent:"(string|element)"},Event$4={SHOW:`show${EVENT_KEY$3}`,SHOWN:`shown${EVENT_KEY$3}`,HIDE:`hide${EVENT_KEY$3}`,HIDDEN:`hidden${EVENT_KEY$3}`,CLICK_DATA_API:`click${EVENT_KEY$3}.data-api`},ClassName$3={SHOW:"show",COLLAPSE:"collapse",COLLAPSING:"collapsing",COLLAPSED:"collapsed"},Dimension={WIDTH:"width",HEIGHT:"height"},Selector$3={ACTIVES:".show, .collapsing",DATA_TOGGLE:'[data-toggle="collapse"]'};class Collapse{constructor(e,t){this._isTransitioning=!1,this._element=e,this._config=this._getConfig(t),this._triggerArray=makeArray(SelectorEngine.find(`[data-toggle="collapse"][href="#${e.id}"],`+`[data-toggle="collapse"][data-target="#${e.id}"]`));const n=makeArray(SelectorEngine.find(Selector$3.DATA_TOGGLE));for(let t=0,i=n.length;t<i;t++){const i=n[t],s=getSelectorFromElement(i),a=makeArray(SelectorEngine.find(s)).filter(t=>t===e);null!==s&&a.length&&(this._selector=s,this._triggerArray.push(i))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle(),Data.setData(e,DATA_KEY$3,this)}static get VERSION(){return VERSION$3}static get Default(){return Default$1}toggle(){this._element.classList.contains(ClassName$3.SHOW)?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains(ClassName$3.SHOW))return;let e,t;this._parent&&0===(e=makeArray(SelectorEngine.find(Selector$3.ACTIVES,this._parent)).filter(e=>"string"==typeof this._config.parent?e.getAttribute("data-parent")===this._config.parent:e.classList.contains(ClassName$3.COLLAPSE))).length&&(e=null);const n=SelectorEngine.findOne(this._selector);if(e){const i=e.filter(e=>n!==e);if((t=i[0]?Data.getData(i[0],DATA_KEY$3):null)&&t._isTransitioning)return}if(EventHandler.trigger(this._element,Event$4.SHOW).defaultPrevented)return;e&&e.forEach(e=>{n!==e&&Collapse._collapseInterface(e,"hide"),t||Data.setData(e,DATA_KEY$3,null)});const i=this._getDimension();this._element.classList.remove(ClassName$3.COLLAPSE),this._element.classList.add(ClassName$3.COLLAPSING),this._element.style[i]=0,this._triggerArray.length&&this._triggerArray.forEach(e=>{e.classList.remove(ClassName$3.COLLAPSED),e.setAttribute("aria-expanded",!0)}),this.setTransitioning(!0);const s=`scroll${i[0].toUpperCase()+i.slice(1)}`,a=getTransitionDurationFromElement(this._element);EventHandler.one(this._element,TRANSITION_END,()=>{this._element.classList.remove(ClassName$3.COLLAPSING),this._element.classList.add(ClassName$3.COLLAPSE),this._element.classList.add(ClassName$3.SHOW),this._element.style[i]="",this.setTransitioning(!1),EventHandler.trigger(this._element,Event$4.SHOWN)}),emulateTransitionEnd(this._element,a),this._element.style[i]=`${this._element[s]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains(ClassName$3.SHOW))return;if(EventHandler.trigger(this._element,Event$4.HIDE).defaultPrevented)return;const e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,reflow(this._element),this._element.classList.add(ClassName$3.COLLAPSING),this._element.classList.remove(ClassName$3.COLLAPSE),this._element.classList.remove(ClassName$3.SHOW);const t=this._triggerArray.length;if(t>0)for(let e=0;e<t;e++){const t=this._triggerArray[e],n=getSelectorFromElement(t);if(null!==n){SelectorEngine.findOne(n).classList.contains(ClassName$3.SHOW)||(t.classList.add(ClassName$3.COLLAPSED),t.setAttribute("aria-expanded",!1))}}this.setTransitioning(!0);this._element.style[e]="";const n=getTransitionDurationFromElement(this._element);EventHandler.one(this._element,TRANSITION_END,()=>{this.setTransitioning(!1),this._element.classList.remove(ClassName$3.COLLAPSING),this._element.classList.add(ClassName$3.COLLAPSE),EventHandler.trigger(this._element,Event$4.HIDDEN)}),emulateTransitionEnd(this._element,n)}setTransitioning(e){this._isTransitioning=e}dispose(){Data.removeData(this._element,DATA_KEY$3),this._config=null,this._parent=null,this._element=null,this._triggerArray=null,this._isTransitioning=null}_getConfig(e){return(e=_extends({},Default$1,e)).toggle=Boolean(e.toggle),typeCheckConfig(NAME$3,e,DefaultType$1),e}_getDimension(){return this._element.classList.contains(Dimension.WIDTH)?Dimension.WIDTH:Dimension.HEIGHT}_getParent(){let e=this._config.parent;isElement(e)?void 0===e.jquery&&void 0===e[0]||(e=e[0]):e=SelectorEngine.findOne(e);const t=`[data-toggle="collapse"][data-parent="${e}"]`;return makeArray(SelectorEngine.find(t,e)).forEach(e=>{this._addAriaAndCollapsedClass(Collapse._getTargetFromElement(e),[e])}),e}_addAriaAndCollapsedClass(e,t){if(e){const n=e.classList.contains(ClassName$3.SHOW);t.length&&t.forEach(e=>{n?e.classList.remove(ClassName$3.COLLAPSED):e.classList.add(ClassName$3.COLLAPSED),e.setAttribute("aria-expanded",n)})}}static _getTargetFromElement(e){const t=getSelectorFromElement(e);return t?SelectorEngine.findOne(t):null}static _collapseInterface(e,t){let n=Data.getData(e,DATA_KEY$3);const i=_extends({},Default$1,Manipulator.getDataAttributes(e),"object"==typeof t&&t?t:{});if(!n&&i.toggle&&/show|hide/.test(t)&&(i.toggle=!1),n||(n=new Collapse(e,i)),"string"==typeof t){if(void 0===n[t])throw new TypeError(`No method named "${t}"`);n[t]()}}static _jQueryInterface(e){return this.each(function(){Collapse._collapseInterface(this,e)})}static _getInstance(e){return Data.getData(e,DATA_KEY$3)}}if(EventHandler.on(document,Event$4.CLICK_DATA_API,Selector$3.DATA_TOGGLE,function(e){"A"===e.target.tagName&&e.preventDefault();const t=Manipulator.getDataAttributes(this),n=getSelectorFromElement(this);makeArray(SelectorEngine.find(n)).forEach(e=>{const n=Data.getData(e,DATA_KEY$3);let i;n?(null===n._parent&&"string"==typeof t.parent&&(n._config.parent=t.parent,n._parent=n._getParent()),i="toggle"):i=t,Collapse._collapseInterface(e,i)})}),void 0!==jQuery){const e=jQuery.fn[NAME$3];jQuery.fn[NAME$3]=Collapse._jQueryInterface,jQuery.fn[NAME$3].Constructor=Collapse,jQuery.fn[NAME$3].noConflict=(()=>(jQuery.fn[NAME$3]=e,Collapse._jQueryInterface))}const NAME$4="dropdown",VERSION$4="4.3.1",DATA_KEY$4="bs.dropdown",EVENT_KEY$4=`.${DATA_KEY$4}`,DATA_API_KEY$4=".data-api",ESCAPE_KEYCODE=27,SPACE_KEYCODE=32,TAB_KEYCODE=9,ARROW_UP_KEYCODE=38,ARROW_DOWN_KEYCODE=40,RIGHT_MOUSE_BUTTON_WHICH=3,REGEXP_KEYDOWN=new RegExp(`${ARROW_UP_KEYCODE}|${ARROW_DOWN_KEYCODE}|${ESCAPE_KEYCODE}`),Event$5={HIDE:`hide${EVENT_KEY$4}`,HIDDEN:`hidden${EVENT_KEY$4}`,SHOW:`show${EVENT_KEY$4}`,SHOWN:`shown${EVENT_KEY$4}`,CLICK:`click${EVENT_KEY$4}`,CLICK_DATA_API:`click${EVENT_KEY$4}.data-api`,KEYDOWN_DATA_API:`keydown${EVENT_KEY$4}.data-api`,KEYUP_DATA_API:`keyup${EVENT_KEY$4}.data-api`},ClassName$4={DISABLED:"disabled",SHOW:"show",DROPUP:"dropup",DROPRIGHT:"dropright",DROPLEFT:"dropleft",MENURIGHT:"dropdown-menu-right",POSITION_STATIC:"position-static"},Selector$4={DATA_TOGGLE:'[data-toggle="dropdown"]',FORM_CHILD:".dropdown form",MENU:".dropdown-menu",NAVBAR_NAV:".navbar-nav",VISIBLE_ITEMS:".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)"},AttachmentMap={TOP:"top-start",TOPEND:"top-end",BOTTOM:"bottom-start",BOTTOMEND:"bottom-end",RIGHT:"right-start",RIGHTEND:"right-end",LEFT:"left-start",LEFTEND:"left-end"},Default$2={offset:0,flip:!0,boundary:"scrollParent",reference:"toggle",display:"dynamic"},DefaultType$2={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)",reference:"(string|element)",display:"string"};class Dropdown{constructor(e,t){this._element=e,this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners(),Data.setData(e,DATA_KEY$4,this)}static get VERSION(){return VERSION$4}static get Default(){return Default$2}static get DefaultType(){return DefaultType$2}toggle(){if(this._element.disabled||this._element.classList.contains(ClassName$4.DISABLED))return;const e=Dropdown._getParentFromElement(this._element),t=this._menu.classList.contains(ClassName$4.SHOW);if(Dropdown._clearMenus(),t)return;const n={relatedTarget:this._element};if(!EventHandler.trigger(e,Event$5.SHOW,n).defaultPrevented){if(!this._inNavbar){if(void 0===Popper)throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=e:isElement(this._config.reference)&&(t=this._config.reference,void 0!==this._config.reference.jquery&&(t=this._config.reference[0])),"scrollParent"!==this._config.boundary&&e.classList.add(ClassName$4.POSITION_STATIC),this._popper=new Popper(t,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&!makeArray(SelectorEngine.closest(e,Selector$4.NAVBAR_NAV)).length&&makeArray(document.body.children).forEach(e=>EventHandler.on(e,"mouseover",null,noop())),this._element.focus(),this._element.setAttribute("aria-expanded",!0),Manipulator.toggleClass(this._menu,ClassName$4.SHOW),Manipulator.toggleClass(e,ClassName$4.SHOW),EventHandler.trigger(e,Event$5.SHOWN,n)}}show(){if(this._element.disabled||this._element.classList.contains(ClassName$4.DISABLED)||this._menu.classList.contains(ClassName$4.SHOW))return;const e=Dropdown._getParentFromElement(this._element),t={relatedTarget:this._element};EventHandler.trigger(e,Event$5.SHOW,t).defaultPrevented||(Manipulator.toggleClass(this._menu,ClassName$4.SHOW),Manipulator.toggleClass(e,ClassName$4.SHOW),EventHandler.trigger(e,Event$5.SHOWN,t))}hide(){if(this._element.disabled||this._element.classList.contains(ClassName$4.DISABLED)||!this._menu.classList.contains(ClassName$4.SHOW))return;const e=Dropdown._getParentFromElement(this._element),t={relatedTarget:this._element};EventHandler.trigger(e,Event$5.HIDE,t).defaultPrevented||(Manipulator.toggleClass(this._menu,ClassName$4.SHOW),Manipulator.toggleClass(e,ClassName$4.SHOW),EventHandler.trigger(e,Event$5.HIDDEN,t))}dispose(){Data.removeData(this._element,DATA_KEY$4),EventHandler.off(this._element,EVENT_KEY$4),this._element=null,this._menu=null,null!==this._popper&&(this._popper.destroy(),this._popper=null)}update(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()}_addEventListeners(){EventHandler.on(this._element,Event$5.CLICK,e=>{e.preventDefault(),e.stopPropagation(),this.toggle()})}_getConfig(e){return e=_extends({},this.constructor.Default,Manipulator.getDataAttributes(this._element),e),typeCheckConfig(NAME$4,e,this.constructor.DefaultType),e}_getMenuElement(){if(!this._menu){const e=Dropdown._getParentFromElement(this._element);e&&(this._menu=SelectorEngine.findOne(Selector$4.MENU,e))}return this._menu}_getPlacement(){const e=this._element.parentNode;let t=AttachmentMap.BOTTOM;return e.classList.contains(ClassName$4.DROPUP)?(t=AttachmentMap.TOP,this._menu.classList.contains(ClassName$4.MENURIGHT)&&(t=AttachmentMap.TOPEND)):e.classList.contains(ClassName$4.DROPRIGHT)?t=AttachmentMap.RIGHT:e.classList.contains(ClassName$4.DROPLEFT)?t=AttachmentMap.LEFT:this._menu.classList.contains(ClassName$4.MENURIGHT)&&(t=AttachmentMap.BOTTOMEND),t}_detectNavbar(){return Boolean(SelectorEngine.closest(this._element,".navbar"))}_getOffset(){const e={};return"function"==typeof this._config.offset?e.fn=(e=>(e.offsets=_extends({},e.offsets,this._config.offset(e.offsets,this._element)||{}),e)):e.offset=this._config.offset,e}_getPopperConfig(){const e={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(e.modifiers.applyStyle={enabled:!1}),e}static _dropdownInterface(e,t){let n=Data.getData(e,DATA_KEY$4);if(n||(n=new Dropdown(e,"object"==typeof t?t:null)),"string"==typeof t){if(void 0===n[t])throw new TypeError(`No method named "${t}"`);n[t]()}}static _jQueryInterface(e){return this.each(function(){Dropdown._dropdownInterface(this,e)})}static _clearMenus(e){if(e&&(e.which===RIGHT_MOUSE_BUTTON_WHICH||"keyup"===e.type&&e.which!==TAB_KEYCODE))return;const t=makeArray(SelectorEngine.find(Selector$4.DATA_TOGGLE));for(let n=0,i=t.length;n<i;n++){const i=Dropdown._getParentFromElement(t[n]),s=Data.getData(t[n],DATA_KEY$4),a={relatedTarget:t[n]};if(e&&"click"===e.type&&(a.clickEvent=e),!s)continue;const o=s._menu;i.classList.contains(ClassName$4.SHOW)&&(e&&("click"===e.type&&/input|textarea/i.test(e.target.tagName)||"keyup"===e.type&&e.which===TAB_KEYCODE)&&i.contains(e.target)||EventHandler.trigger(i,Event$5.HIDE,a).defaultPrevented||("ontouchstart"in document.documentElement&&makeArray(document.body.children).forEach(e=>EventHandler.off(e,"mouseover",null,noop())),t[n].setAttribute("aria-expanded","false"),o.classList.remove(ClassName$4.SHOW),i.classList.remove(ClassName$4.SHOW),EventHandler.trigger(i,Event$5.HIDDEN,a)))}}static _getParentFromElement(e){let t;const n=getSelectorFromElement(e);return n&&(t=SelectorEngine.findOne(n)),t||e.parentNode}static _dataApiKeydownHandler(e){if(/input|textarea/i.test(e.target.tagName)?e.which===SPACE_KEYCODE||e.which!==ESCAPE_KEYCODE&&(e.which!==ARROW_DOWN_KEYCODE&&e.which!==ARROW_UP_KEYCODE||SelectorEngine.closest(e.target,Selector$4.MENU)):!REGEXP_KEYDOWN.test(e.which))return;if(e.preventDefault(),e.stopPropagation(),this.disabled||this.classList.contains(ClassName$4.DISABLED))return;const t=Dropdown._getParentFromElement(this),n=t.classList.contains(ClassName$4.SHOW);if(!n||n&&(e.which===ESCAPE_KEYCODE||e.which===SPACE_KEYCODE))return e.which===ESCAPE_KEYCODE&&EventHandler.trigger(SelectorEngine.findOne(Selector$4.DATA_TOGGLE,t),"focus"),void Dropdown._clearMenus();const i=makeArray(SelectorEngine.find(Selector$4.VISIBLE_ITEMS,t));if(!i.length)return;let s=i.indexOf(e.target);e.which===ARROW_UP_KEYCODE&&s>0&&s--,e.which===ARROW_DOWN_KEYCODE&&s<i.length-1&&s++,s<0&&(s=0),i[s].focus()}static _getInstance(e){return Data.getData(e,DATA_KEY$4)}}if(EventHandler.on(document,Event$5.KEYDOWN_DATA_API,Selector$4.DATA_TOGGLE,Dropdown._dataApiKeydownHandler),EventHandler.on(document,Event$5.KEYDOWN_DATA_API,Selector$4.MENU,Dropdown._dataApiKeydownHandler),EventHandler.on(document,Event$5.CLICK_DATA_API,Dropdown._clearMenus),EventHandler.on(document,Event$5.KEYUP_DATA_API,Dropdown._clearMenus),EventHandler.on(document,Event$5.CLICK_DATA_API,Selector$4.DATA_TOGGLE,function(e){e.preventDefault(),e.stopPropagation(),Dropdown._dropdownInterface(this,"toggle")}),EventHandler.on(document,Event$5.CLICK_DATA_API,Selector$4.FORM_CHILD,e=>e.stopPropagation()),void 0!==jQuery){const e=jQuery.fn[NAME$4];jQuery.fn[NAME$4]=Dropdown._jQueryInterface,jQuery.fn[NAME$4].Constructor=Dropdown,jQuery.fn[NAME$4].noConflict=(()=>(jQuery.fn[NAME$4]=e,Dropdown._jQueryInterface))}const NAME$5="modal",VERSION$5="4.3.1",DATA_KEY$5="bs.modal",EVENT_KEY$5=`.${DATA_KEY$5}`,DATA_API_KEY$5=".data-api",ESCAPE_KEYCODE$1=27,Default$3={backdrop:!0,keyboard:!0,focus:!0,show:!0},DefaultType$3={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean",show:"boolean"},Event$6={HIDE:`hide${EVENT_KEY$5}`,HIDDEN:`hidden${EVENT_KEY$5}`,SHOW:`show${EVENT_KEY$5}`,SHOWN:`shown${EVENT_KEY$5}`,FOCUSIN:`focusin${EVENT_KEY$5}`,RESIZE:`resize${EVENT_KEY$5}`,CLICK_DISMISS:`click.dismiss${EVENT_KEY$5}`,KEYDOWN_DISMISS:`keydown.dismiss${EVENT_KEY$5}`,MOUSEUP_DISMISS:`mouseup.dismiss${EVENT_KEY$5}`,MOUSEDOWN_DISMISS:`mousedown.dismiss${EVENT_KEY$5}`,CLICK_DATA_API:`click${EVENT_KEY$5}.data-api`},ClassName$5={SCROLLABLE:"modal-dialog-scrollable",SCROLLBAR_MEASURER:"modal-scrollbar-measure",BACKDROP:"modal-backdrop",OPEN:"modal-open",FADE:"fade",SHOW:"show"},Selector$5={DIALOG:".modal-dialog",MODAL_BODY:".modal-body",DATA_TOGGLE:'[data-toggle="modal"]',DATA_DISMISS:'[data-dismiss="modal"]',FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",STICKY_CONTENT:".sticky-top"};class Modal{constructor(e,t){this._config=this._getConfig(t),this._element=e,this._dialog=SelectorEngine.findOne(Selector$5.DIALOG,e),this._backdrop=null,this._isShown=!1,this._isBodyOverflowing=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollbarWidth=0,Data.setData(e,DATA_KEY$5,this)}static get VERSION(){return VERSION$5}static get Default(){return Default$3}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||this._isTransitioning)return;this._element.classList.contains(ClassName$5.FADE)&&(this._isTransitioning=!0);const t=EventHandler.trigger(this._element,Event$6.SHOW,{relatedTarget:e});this._isShown||t.defaultPrevented||(this._isShown=!0,this._checkScrollbar(),this._setScrollbar(),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),EventHandler.on(this._element,Event$6.CLICK_DISMISS,Selector$5.DATA_DISMISS,e=>this.hide(e)),EventHandler.on(this._dialog,Event$6.MOUSEDOWN_DISMISS,()=>{EventHandler.one(this._element,Event$6.MOUSEUP_DISMISS,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(e){if(e&&e.preventDefault(),!this._isShown||this._isTransitioning)return;const t=EventHandler.trigger(this._element,Event$6.HIDE);if(!this._isShown||t.defaultPrevented)return;this._isShown=!1;const n=this._element.classList.contains(ClassName$5.FADE);if(n&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),EventHandler.off(document,Event$6.FOCUSIN),this._element.classList.remove(ClassName$5.SHOW),EventHandler.off(this._element,Event$6.CLICK_DISMISS),EventHandler.off(this._dialog,Event$6.MOUSEDOWN_DISMISS),n){const e=getTransitionDurationFromElement(this._element);EventHandler.one(this._element,TRANSITION_END,e=>this._hideModal(e)),emulateTransitionEnd(this._element,e)}else this._hideModal()}dispose(){[window,this._element,this._dialog].forEach(e=>EventHandler.off(e,EVENT_KEY$5)),EventHandler.off(document,Event$6.FOCUSIN),Data.removeData(this._element,DATA_KEY$5),this._config=null,this._element=null,this._dialog=null,this._backdrop=null,this._isShown=null,this._isBodyOverflowing=null,this._ignoreBackdropClick=null,this._isTransitioning=null,this._scrollbarWidth=null}handleUpdate(){this._adjustDialog()}_getConfig(e){return e=_extends({},Default$3,e),typeCheckConfig(NAME$5,e,DefaultType$3),e}_showElement(e){const t=this._element.classList.contains(ClassName$5.FADE);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._dialog.classList.contains(ClassName$5.SCROLLABLE)?SelectorEngine.findOne(Selector$5.MODAL_BODY,this._dialog).scrollTop=0:this._element.scrollTop=0,t&&reflow(this._element),this._element.classList.add(ClassName$5.SHOW),this._config.focus&&this._enforceFocus();const n=()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,EventHandler.trigger(this._element,Event$6.SHOWN,{relatedTarget:e})};if(t){const e=getTransitionDurationFromElement(this._dialog);EventHandler.one(this._dialog,TRANSITION_END,n),emulateTransitionEnd(this._dialog,e)}else n()}_enforceFocus(){EventHandler.off(document,Event$6.FOCUSIN),EventHandler.on(document,Event$6.FOCUSIN,e=>{document===e.target||this._element===e.target||this._element.contains(e.target)||this._element.focus()})}_setEscapeEvent(){this._isShown&&this._config.keyboard?EventHandler.on(this._element,Event$6.KEYDOWN_DISMISS,e=>{e.which===ESCAPE_KEYCODE$1&&(e.preventDefault(),this.hide())}):this._isShown||EventHandler.off(this._element,Event$6.KEYDOWN_DISMISS)}_setResizeEvent(){this._isShown?EventHandler.on(window,Event$6.RESIZE,e=>this.handleUpdate(e)):EventHandler.off(window,Event$6.RESIZE)}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._isTransitioning=!1,this._showBackdrop(()=>{document.body.classList.remove(ClassName$5.OPEN),this._resetAdjustments(),this._resetScrollbar(),EventHandler.trigger(this._element,Event$6.HIDDEN)})}_removeBackdrop(){this._backdrop&&(this._backdrop.parentNode.removeChild(this._backdrop),this._backdrop=null)}_showBackdrop(e){const t=this._element.classList.contains(ClassName$5.FADE)?ClassName$5.FADE:"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className=ClassName$5.BACKDROP,t&&this._backdrop.classList.add(t),document.body.appendChild(this._backdrop),EventHandler.on(this._element,Event$6.CLICK_DISMISS,e=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:e.target===e.currentTarget&&("static"===this._config.backdrop?this._element.focus():this.hide())}),t&&reflow(this._backdrop),this._backdrop.classList.add(ClassName$5.SHOW),!e)return;if(!t)return void e();const n=getTransitionDurationFromElement(this._backdrop);EventHandler.one(this._backdrop,TRANSITION_END,e),emulateTransitionEnd(this._backdrop,n)}else if(!this._isShown&&this._backdrop){this._backdrop.classList.remove(ClassName$5.SHOW);const t=()=>{this._removeBackdrop(),e&&e()};if(this._element.classList.contains(ClassName$5.FADE)){const e=getTransitionDurationFromElement(this._backdrop);EventHandler.one(this._backdrop,TRANSITION_END,t),emulateTransitionEnd(this._backdrop,e)}else t()}else e&&e()}_adjustDialog(){const e=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&e&&(this._element.style.paddingLeft=`${this._scrollbarWidth}px`),this._isBodyOverflowing&&!e&&(this._element.style.paddingRight=`${this._scrollbarWidth}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}_checkScrollbar(){const e=document.body.getBoundingClientRect();this._isBodyOverflowing=e.left+e.right<window.innerWidth,this._scrollbarWidth=this._getScrollbarWidth()}_setScrollbar(){if(this._isBodyOverflowing){makeArray(SelectorEngine.find(Selector$5.FIXED_CONTENT)).forEach(e=>{const t=e.style.paddingRight,n=window.getComputedStyle(e)["padding-right"];Manipulator.setDataAttribute(e,"padding-right",t),e.style.paddingRight=`${parseFloat(n)+this._scrollbarWidth}px`}),makeArray(SelectorEngine.find(Selector$5.STICKY_CONTENT)).forEach(e=>{const t=e.style.marginRight,n=window.getComputedStyle(e)["margin-right"];Manipulator.setDataAttribute(e,"margin-right",t),e.style.marginRight=`${parseFloat(n)-this._scrollbarWidth}px`});const e=document.body.style.paddingRight,t=window.getComputedStyle(document.body)["padding-right"];Manipulator.setDataAttribute(document.body,"padding-right",e),document.body.style.paddingRight=`${parseFloat(t)+this._scrollbarWidth}px`}document.body.classList.add(ClassName$5.OPEN)}_resetScrollbar(){makeArray(SelectorEngine.find(Selector$5.FIXED_CONTENT)).forEach(e=>{const t=Manipulator.getDataAttribute(e,"padding-right");void 0!==t&&(Manipulator.removeDataAttribute(e,"padding-right"),e.style.paddingRight=t)}),makeArray(SelectorEngine.find(`${Selector$5.STICKY_CONTENT}`)).forEach(e=>{const t=Manipulator.getDataAttribute(e,"margin-right");void 0!==t&&(Manipulator.removeDataAttribute(e,"margin-right"),e.style.marginRight=t)});const e=Manipulator.getDataAttribute(document.body,"padding-right");void 0===e?document.body.style.paddingRight="":(Manipulator.removeDataAttribute(document.body,"padding-right"),document.body.style.paddingRight=e)}_getScrollbarWidth(){const e=document.createElement("div");e.className=ClassName$5.SCROLLBAR_MEASURER,document.body.appendChild(e);const t=e.getBoundingClientRect().width-e.clientWidth;return document.body.removeChild(e),t}static _jQueryInterface(e,t){return this.each(function(){let n=Data.getData(this,DATA_KEY$5);const i=_extends({},Default$3,Manipulator.getDataAttributes(this),"object"==typeof e&&e?e:{});if(n||(n=new Modal(this,i)),"string"==typeof e){if(void 0===n[e])throw new TypeError(`No method named "${e}"`);n[e](t)}else i.show&&n.show(t)})}static _getInstance(e){return Data.getData(e,DATA_KEY$5)}}if(EventHandler.on(document,Event$6.CLICK_DATA_API,Selector$5.DATA_TOGGLE,function(e){let t;const n=getSelectorFromElement(this);n&&(t=SelectorEngine.findOne(n));const i=Data.getData(t,DATA_KEY$5)?"toggle":_extends({},Manipulator.getDataAttributes(t),Manipulator.getDataAttributes(this));"A"!==this.tagName&&"AREA"!==this.tagName||e.preventDefault(),EventHandler.one(t,Event$6.SHOW,e=>{e.defaultPrevented||EventHandler.one(t,Event$6.HIDDEN,()=>{isVisible(this)&&this.focus()})});let s=Data.getData(t,DATA_KEY$5);s||(s=new Modal(t,i)),s.show(this)}),void 0!==jQuery){const e=jQuery.fn[NAME$5];jQuery.fn[NAME$5]=Modal._jQueryInterface,jQuery.fn[NAME$5].Constructor=Modal,jQuery.fn[NAME$5].noConflict=(()=>(jQuery.fn[NAME$5]=e,Modal._jQueryInterface))}const uriAttrs=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],ARIA_ATTRIBUTE_PATTERN=/^aria-[\w-]*$/i,SAFE_URL_PATTERN=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:\/?#]*(?:[\/?#]|$))/gi,DATA_URL_PATTERN=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i,allowedAttribute=(e,t)=>{const n=e.nodeName.toLowerCase();if(-1!==t.indexOf(n))return-1===uriAttrs.indexOf(n)||Boolean(e.nodeValue.match(SAFE_URL_PATTERN)||e.nodeValue.match(DATA_URL_PATTERN));const i=t.filter(e=>e instanceof RegExp);for(let e=0,t=i.length;e<t;e++)if(n.match(i[e]))return!0;return!1},DefaultWhitelist={"*":["class","dir","id","lang","role",ARIA_ATTRIBUTE_PATTERN],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]};function sanitizeHtml(e,t,n){if(!e.length)return e;if(n&&"function"==typeof n)return n(e);const i=(new window.DOMParser).parseFromString(e,"text/html"),s=Object.keys(t),a=makeArray(i.body.querySelectorAll("*"));for(let e=0,n=a.length;e<n;e++){const n=a[e],i=n.nodeName.toLowerCase();if(-1===s.indexOf(i)){n.parentNode.removeChild(n);continue}const o=makeArray(n.attributes),r=[].concat(t["*"]||[],t[i]||[]);o.forEach(e=>{allowedAttribute(e,r)||n.removeAttribute(e.nodeName)})}return i.body.innerHTML}const NAME$6="tooltip",VERSION$6="4.3.1",DATA_KEY$6="bs.tooltip",EVENT_KEY$6=`.${DATA_KEY$6}`,CLASS_PREFIX="bs-tooltip",BSCLS_PREFIX_REGEX=new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`,"g"),DISALLOWED_ATTRIBUTES=["sanitize","whiteList","sanitizeFn"],DefaultType$4={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string|function)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)",sanitize:"boolean",sanitizeFn:"(null|function)",whiteList:"object"},AttachmentMap$1={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"},Default$4={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:DefaultWhitelist},HoverState={SHOW:"show",OUT:"out"},Event$7={HIDE:`hide${EVENT_KEY$6}`,HIDDEN:`hidden${EVENT_KEY$6}`,SHOW:`show${EVENT_KEY$6}`,SHOWN:`shown${EVENT_KEY$6}`,INSERTED:`inserted${EVENT_KEY$6}`,CLICK:`click${EVENT_KEY$6}`,FOCUSIN:`focusin${EVENT_KEY$6}`,FOCUSOUT:`focusout${EVENT_KEY$6}`,MOUSEENTER:`mouseenter${EVENT_KEY$6}`,MOUSELEAVE:`mouseleave${EVENT_KEY$6}`},ClassName$6={FADE:"fade",SHOW:"show"},Selector$6={TOOLTIP_INNER:".tooltip-inner",TOOLTIP_ARROW:".tooltip-arrow"},Trigger={HOVER:"hover",FOCUS:"focus",CLICK:"click",MANUAL:"manual"};class Tooltip{constructor(e,t){if(void 0===Popper)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=e,this.config=this._getConfig(t),this.tip=null,this._setListeners(),Data.setData(e,this.constructor.DATA_KEY,this)}static get VERSION(){return VERSION$6}static get Default(){return Default$4}static get NAME(){return NAME$6}static get DATA_KEY(){return DATA_KEY$6}static get Event(){return Event$7}static get EVENT_KEY(){return EVENT_KEY$6}static get DefaultType(){return DefaultType$4}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){const t=this.constructor.DATA_KEY;let n=Data.getData(e.delegateTarget,t);n||(n=new this.constructor(e.delegateTarget,this._getDelegateConfig()),Data.setData(e.delegateTarget,t,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(this.getTipElement().classList.contains(ClassName$6.SHOW))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),Data.removeData(this.element,this.constructor.DATA_KEY),EventHandler.off(this.element,this.constructor.EVENT_KEY),EventHandler.off(SelectorEngine.closest(this.element,".modal"),"hide.bs.modal"),this.tip&&this.tip.parentNode.removeChild(this.tip),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,null!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null}show(){if("none"===this.element.style.display)throw new Error("Please use show on visible elements");if(this.isWithContent()&&this._isEnabled){const e=EventHandler.trigger(this.element,this.constructor.Event.SHOW),t=findShadowRoot(this.element),n=null===t?this.element.ownerDocument.documentElement.contains(this.element):t.contains(this.element);if(e.defaultPrevented||!n)return;const i=this.getTipElement(),s=getUID(this.constructor.NAME);i.setAttribute("id",s),this.element.setAttribute("aria-describedby",s),this.setContent(),this.config.animation&&i.classList.add(ClassName$6.FADE);const a="function"==typeof this.config.placement?this.config.placement.call(this,i,this.element):this.config.placement,o=this._getAttachment(a);this.addAttachmentClass(o);const r=this._getContainer();Data.setData(i,this.constructor.DATA_KEY,this),this.element.ownerDocument.documentElement.contains(this.tip)||r.appendChild(i),EventHandler.trigger(this.element,this.constructor.Event.INSERTED),this._popper=new Popper(this.element,i,{placement:o,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:Selector$6.TOOLTIP_ARROW},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:e=>{e.originalPlacement!==e.placement&&this._handlePopperPlacementChange(e)},onUpdate:e=>this._handlePopperPlacementChange(e)}),i.classList.add(ClassName$6.SHOW),"ontouchstart"in document.documentElement&&makeArray(document.body.children).forEach(e=>{EventHandler.on(e,"mouseover",noop())});const l=()=>{this.config.animation&&this._fixTransition();const e=this._hoverState;this._hoverState=null,EventHandler.trigger(this.element,this.constructor.Event.SHOWN),e===HoverState.OUT&&this._leave(null,this)};if(this.tip.classList.contains(ClassName$6.FADE)){const e=getTransitionDurationFromElement(this.tip);EventHandler.one(this.tip,TRANSITION_END,l),emulateTransitionEnd(this.tip,e)}else l()}}hide(e){const t=this.getTipElement(),n=()=>{this._hoverState!==HoverState.SHOW&&t.parentNode&&t.parentNode.removeChild(t),this._cleanTipClass(),this.element.removeAttribute("aria-describedby"),EventHandler.trigger(this.element,this.constructor.Event.HIDDEN),null!==this._popper&&this._popper.destroy(),e&&e()};if(!EventHandler.trigger(this.element,this.constructor.Event.HIDE).defaultPrevented){if(t.classList.remove(ClassName$6.SHOW),"ontouchstart"in document.documentElement&&makeArray(document.body.children).forEach(e=>EventHandler.off(e,"mouseover",noop)),this._activeTrigger[Trigger.CLICK]=!1,this._activeTrigger[Trigger.FOCUS]=!1,this._activeTrigger[Trigger.HOVER]=!1,this.tip.classList.contains(ClassName$6.FADE)){const e=getTransitionDurationFromElement(t);EventHandler.one(t,TRANSITION_END,n),emulateTransitionEnd(t,e)}else n();this._hoverState=""}}update(){null!==this._popper&&this._popper.scheduleUpdate()}isWithContent(){return Boolean(this.getTitle())}addAttachmentClass(e){this.getTipElement().classList.add(`${CLASS_PREFIX}-${e}`)}getTipElement(){if(this.tip)return this.tip;const e=document.createElement("div");return e.innerHTML=this.config.template,this.tip=e.children[0],this.tip}setContent(){const e=this.getTipElement();this.setElementContent(SelectorEngine.findOne(Selector$6.TOOLTIP_INNER,e),this.getTitle()),e.classList.remove(ClassName$6.FADE),e.classList.remove(ClassName$6.SHOW)}setElementContent(e,t){if(null!==e)return"object"==typeof t&&(t.nodeType||t.jquery)?(t.jquery&&(t=t[0]),void(this.config.html?t.parentNode!==e&&(e.innerHTML="",e.appendChild(t)):e.innerText=t.textContent)):void(this.config.html?(this.config.sanitize&&(t=sanitizeHtml(t,this.config.whiteList,this.config.sanitizeFn)),e.innerHTML=t):e.innerText=t)}getTitle(){let e=this.element.getAttribute("data-original-title");return e||(e="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),e}_getOffset(){const e={};return"function"==typeof this.config.offset?e.fn=(e=>(e.offsets=_extends({},e.offsets,this.config.offset(e.offsets,this.element)||{}),e)):e.offset=this.config.offset,e}_getContainer(){return!1===this.config.container?document.body:isElement(this.config.container)?this.config.container:SelectorEngine.findOne(this.config.container)}_getAttachment(e){return AttachmentMap$1[e.toUpperCase()]}_setListeners(){this.config.trigger.split(" ").forEach(e=>{if("click"===e)EventHandler.on(this.element,this.constructor.Event.CLICK,this.config.selector,e=>this.toggle(e));else if(e!==Trigger.MANUAL){const t=e===Trigger.HOVER?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===Trigger.HOVER?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;EventHandler.on(this.element,t,this.config.selector,e=>this._enter(e)),EventHandler.on(this.element,n,this.config.selector,e=>this._leave(e))}}),EventHandler.on(SelectorEngine.closest(this.element,".modal"),"hide.bs.modal",()=>{this.element&&this.hide()}),this.config.selector?this.config=_extends({},this.config,{trigger:"manual",selector:""}):this._fixTitle()}_fixTitle(){const e=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==e)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))}_enter(e,t){const n=this.constructor.DATA_KEY;(t=t||Data.getData(e.delegateTarget,n))||(t=new this.constructor(e.delegateTarget,this._getDelegateConfig()),Data.setData(e.delegateTarget,n,t)),e&&(t._activeTrigger["focusin"===e.type?Trigger.FOCUS:Trigger.HOVER]=!0),t.getTipElement().classList.contains(ClassName$6.SHOW)||t._hoverState===HoverState.SHOW?t._hoverState=HoverState.SHOW:(clearTimeout(t._timeout),t._hoverState=HoverState.SHOW,t.config.delay&&t.config.delay.show?t._timeout=setTimeout(()=>{t._hoverState===HoverState.SHOW&&t.show()},t.config.delay.show):t.show())}_leave(e,t){const n=this.constructor.DATA_KEY;(t=t||Data.getData(e.delegateTarget,n))||(t=new this.constructor(e.delegateTarget,this._getDelegateConfig()),Data.setData(e.delegateTarget,n,t)),e&&(t._activeTrigger["focusout"===e.type?Trigger.FOCUS:Trigger.HOVER]=!1),t._isWithActiveTrigger()||(clearTimeout(t._timeout),t._hoverState=HoverState.OUT,t.config.delay&&t.config.delay.hide?t._timeout=setTimeout(()=>{t._hoverState===HoverState.OUT&&t.hide()},t.config.delay.hide):t.hide())}_isWithActiveTrigger(){for(const e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){const t=Manipulator.getDataAttributes(this.element);return Object.keys(t).forEach(e=>{-1!==DISALLOWED_ATTRIBUTES.indexOf(e)&&delete t[e]}),e&&"object"==typeof e.container&&e.container.jquery&&(e.container=e.container[0]),"number"==typeof(e=_extends({},this.constructor.Default,t,"object"==typeof e&&e?e:{})).delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),typeCheckConfig(NAME$6,e,this.constructor.DefaultType),e.sanitize&&(e.template=sanitizeHtml(e.template,e.whiteList,e.sanitizeFn)),e}_getDelegateConfig(){const e={};if(this.config)for(const t in this.config)this.constructor.Default[t]!==this.config[t]&&(e[t]=this.config[t]);return e}_cleanTipClass(){const e=this.getTipElement(),t=e.getAttribute("class").match(BSCLS_PREFIX_REGEX);null!==t&&t.length&&t.map(e=>e.trim()).forEach(t=>e.classList.remove(t))}_handlePopperPlacementChange(e){const t=e.instance;this.tip=t.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(e.placement))}_fixTransition(){const e=this.getTipElement(),t=this.config.animation;null===e.getAttribute("x-placement")&&(e.classList.remove(ClassName$6.FADE),this.config.animation=!1,this.hide(),this.show(),this.config.animation=t)}static _jQueryInterface(e){return this.each(function(){let t=Data.getData(this,DATA_KEY$6);const n="object"==typeof e&&e;if((t||!/dispose|hide/.test(e))&&(t||(t=new Tooltip(this,n)),"string"==typeof e)){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}static _getInstance(e){return Data.getData(e,DATA_KEY$6)}}if(void 0!==jQuery){const e=jQuery.fn[NAME$6];jQuery.fn[NAME$6]=Tooltip._jQueryInterface,jQuery.fn[NAME$6].Constructor=Tooltip,jQuery.fn[NAME$6].noConflict=(()=>(jQuery.fn[NAME$6]=e,Tooltip._jQueryInterface))}const NAME$7="popover",VERSION$7="4.3.1",DATA_KEY$7="bs.popover",EVENT_KEY$7=`.${DATA_KEY$7}`,CLASS_PREFIX$1="bs-popover",BSCLS_PREFIX_REGEX$1=new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`,"g"),Default$5=_extends({},Tooltip.Default,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}),DefaultType$5=_extends({},Tooltip.DefaultType,{content:"(string|element|function)"}),ClassName$7={FADE:"fade",SHOW:"show"},Selector$7={TITLE:".popover-header",CONTENT:".popover-body"},Event$8={HIDE:`hide${EVENT_KEY$7}`,HIDDEN:`hidden${EVENT_KEY$7}`,SHOW:`show${EVENT_KEY$7}`,SHOWN:`shown${EVENT_KEY$7}`,INSERTED:`inserted${EVENT_KEY$7}`,CLICK:`click${EVENT_KEY$7}`,FOCUSIN:`focusin${EVENT_KEY$7}`,FOCUSOUT:`focusout${EVENT_KEY$7}`,MOUSEENTER:`mouseenter${EVENT_KEY$7}`,MOUSELEAVE:`mouseleave${EVENT_KEY$7}`};class Popover extends Tooltip{static get VERSION(){return VERSION$7}static get Default(){return Default$5}static get NAME(){return NAME$7}static get DATA_KEY(){return DATA_KEY$7}static get Event(){return Event$8}static get EVENT_KEY(){return EVENT_KEY$7}static get DefaultType(){return DefaultType$5}isWithContent(){return this.getTitle()||this._getContent()}addAttachmentClass(e){this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${e}`)}setContent(){const e=this.getTipElement();this.setElementContent(SelectorEngine.findOne(Selector$7.TITLE,e),this.getTitle());let t=this._getContent();"function"==typeof t&&(t=t.call(this.element)),this.setElementContent(SelectorEngine.findOne(Selector$7.CONTENT,e),t),e.classList.remove(ClassName$7.FADE),e.classList.remove(ClassName$7.SHOW)}_getContent(){return this.element.getAttribute("data-content")||this.config.content}_cleanTipClass(){const e=this.getTipElement(),t=e.getAttribute("class").match(BSCLS_PREFIX_REGEX$1);null!==t&&t.length>0&&t.map(e=>e.trim()).forEach(t=>e.classList.remove(t))}static _jQueryInterface(e){return this.each(function(){let t=Data.getData(this,DATA_KEY$7);const n="object"==typeof e?e:null;if((t||!/dispose|hide/.test(e))&&(t||(t=new Popover(this,n),Data.setData(this,DATA_KEY$7,t)),"string"==typeof e)){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}static _getInstance(e){return Data.getData(e,DATA_KEY$7)}}if(void 0!==jQuery){const e=jQuery.fn[NAME$7];jQuery.fn[NAME$7]=Popover._jQueryInterface,jQuery.fn[NAME$7].Constructor=Popover,jQuery.fn[NAME$7].noConflict=(()=>(jQuery.fn[NAME$7]=e,Popover._jQueryInterface))}const NAME$8="scrollspy",VERSION$8="4.3.1",DATA_KEY$8="bs.scrollspy",EVENT_KEY$8=`.${DATA_KEY$8}`,DATA_API_KEY$6=".data-api",Default$6={offset:10,method:"auto",target:""},DefaultType$6={offset:"number",method:"string",target:"(string|element)"},Event$9={ACTIVATE:`activate${EVENT_KEY$8}`,SCROLL:`scroll${EVENT_KEY$8}`,LOAD_DATA_API:`load${EVENT_KEY$8}.data-api`},ClassName$8={DROPDOWN_ITEM:"dropdown-item",ACTIVE:"active"},Selector$8={DATA_SPY:'[data-spy="scroll"]',NAV_LIST_GROUP:".nav, .list-group",NAV_LINKS:".nav-link",NAV_ITEMS:".nav-item",LIST_ITEMS:".list-group-item",DROPDOWN:".dropdown",DROPDOWN_TOGGLE:".dropdown-toggle"},OffsetMethod={OFFSET:"offset",POSITION:"position"};class ScrollSpy{constructor(e,t){this._element=e,this._scrollElement="BODY"===e.tagName?window:e,this._config=this._getConfig(t),this._selector=`${this._config.target} ${Selector$8.NAV_LINKS},`+`${this._config.target} ${Selector$8.LIST_ITEMS},`+`${this._config.target} .${ClassName$8.DROPDOWN_ITEM}`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,EventHandler.on(this._scrollElement,Event$9.SCROLL,e=>this._process(e)),this.refresh(),this._process(),Data.setData(e,DATA_KEY$8,this)}static get VERSION(){return VERSION$8}static get Default(){return Default$6}refresh(){const e=this._scrollElement===this._scrollElement.window?OffsetMethod.OFFSET:OffsetMethod.POSITION,t="auto"===this._config.method?e:this._config.method,n=t===OffsetMethod.POSITION?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),makeArray(SelectorEngine.find(this._selector)).map(e=>{let i;const s=getSelectorFromElement(e);if(s&&(i=SelectorEngine.findOne(s)),i){const e=i.getBoundingClientRect();if(e.width||e.height)return[Manipulator[t](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){Data.removeData(this._element,DATA_KEY$8),EventHandler.off(this._scrollElement,EVENT_KEY$8),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null}_getConfig(e){if("string"!=typeof(e=_extends({},Default$6,"object"==typeof e&&e?e:{})).target){let t=e.target.id;t||(t=getUID(NAME$8),e.target.id=t),e.target=`#${t}`}return typeCheckConfig(NAME$8,e,DefaultType$6),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){const e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e)}else{if(this._activeTarget&&e<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let t=this._offsets.length;t--;){this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(void 0===this._offsets[t+1]||e<this._offsets[t+1])&&this._activate(this._targets[t])}}}_activate(e){this._activeTarget=e,this._clear();const t=this._selector.split(",").map(t=>`${t}[data-target="${e}"],${t}[href="${e}"]`),n=SelectorEngine.findOne(t.join(","));n.classList.contains(ClassName$8.DROPDOWN_ITEM)?(SelectorEngine.findOne(Selector$8.DROPDOWN_TOGGLE,SelectorEngine.closest(n,Selector$8.DROPDOWN)).classList.add(ClassName$8.ACTIVE),n.classList.add(ClassName$8.ACTIVE)):(n.classList.add(ClassName$8.ACTIVE),SelectorEngine.parents(n,Selector$8.NAV_LIST_GROUP).forEach(e=>{SelectorEngine.prev(e,`${Selector$8.NAV_LINKS}, ${Selector$8.LIST_ITEMS}`).forEach(e=>e.classList.add(ClassName$8.ACTIVE)),SelectorEngine.prev(e,Selector$8.NAV_ITEMS).forEach(e=>{SelectorEngine.children(e,Selector$8.NAV_LINKS).forEach(e=>e.classList.add(ClassName$8.ACTIVE))})})),EventHandler.trigger(this._scrollElement,Event$9.ACTIVATE,{relatedTarget:e})}_clear(){makeArray(SelectorEngine.find(this._selector)).filter(e=>e.classList.contains(ClassName$8.ACTIVE)).forEach(e=>e.classList.remove(ClassName$8.ACTIVE))}static _jQueryInterface(e){return this.each(function(){let t=Data.getData(this,DATA_KEY$8);if(t||(t=new ScrollSpy(this,"object"==typeof e&&e)),"string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}static _getInstance(e){return Data.getData(e,DATA_KEY$8)}}if(EventHandler.on(window,Event$9.LOAD_DATA_API,()=>{makeArray(SelectorEngine.find(Selector$8.DATA_SPY)).forEach(e=>new ScrollSpy(e,Manipulator.getDataAttributes(e)))}),void 0!==jQuery){const e=jQuery.fn[NAME$8];jQuery.fn[NAME$8]=ScrollSpy._jQueryInterface,jQuery.fn[NAME$8].Constructor=ScrollSpy,jQuery.fn[NAME$8].noConflict=(()=>(jQuery.fn[NAME$8]=e,ScrollSpy._jQueryInterface))}const NAME$9="tab",VERSION$9="4.3.1",DATA_KEY$9="bs.tab",EVENT_KEY$9=`.${DATA_KEY$9}`,DATA_API_KEY$7=".data-api",Event$a={HIDE:`hide${EVENT_KEY$9}`,HIDDEN:`hidden${EVENT_KEY$9}`,SHOW:`show${EVENT_KEY$9}`,SHOWN:`shown${EVENT_KEY$9}`,CLICK_DATA_API:`click${EVENT_KEY$9}.data-api`},ClassName$9={DROPDOWN_MENU:"dropdown-menu",ACTIVE:"active",DISABLED:"disabled",FADE:"fade",SHOW:"show"},Selector$9={DROPDOWN:".dropdown",NAV_LIST_GROUP:".nav, .list-group",ACTIVE:".active",ACTIVE_UL:":scope > li > .active",DATA_TOGGLE:'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',DROPDOWN_TOGGLE:".dropdown-toggle",DROPDOWN_ACTIVE_CHILD:":scope > .dropdown-menu .active"};class Tab{constructor(e){this._element=e,Data.setData(this._element,DATA_KEY$9,this)}static get VERSION(){return VERSION$9}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(ClassName$9.ACTIVE)||this._element.classList.contains(ClassName$9.DISABLED))return;let e,t;const n=SelectorEngine.closest(this._element,Selector$9.NAV_LIST_GROUP),i=getSelectorFromElement(this._element);if(n){const e="UL"===n.nodeName||"OL"===n.nodeName?Selector$9.ACTIVE_UL:Selector$9.ACTIVE;t=(t=makeArray(SelectorEngine.find(e,n)))[t.length-1]}let s=null;if(t&&(s=EventHandler.trigger(t,Event$a.HIDE,{relatedTarget:this._element})),EventHandler.trigger(this._element,Event$a.SHOW,{relatedTarget:t}).defaultPrevented||null!==s&&s.defaultPrevented)return;i&&(e=SelectorEngine.findOne(i)),this._activate(this._element,n);const a=()=>{EventHandler.trigger(t,Event$a.HIDDEN,{relatedTarget:this._element}),EventHandler.trigger(this._element,Event$a.SHOWN,{relatedTarget:t})};e?this._activate(e,e.parentNode,a):a()}dispose(){Data.removeData(this._element,DATA_KEY$9),this._element=null}_activate(e,t,n){const i=(!t||"UL"!==t.nodeName&&"OL"!==t.nodeName?SelectorEngine.children(t,Selector$9.ACTIVE):SelectorEngine.find(Selector$9.ACTIVE_UL,t))[0],s=n&&i&&i.classList.contains(ClassName$9.FADE),a=()=>this._transitionComplete(e,i,n);if(i&&s){const e=getTransitionDurationFromElement(i);i.classList.remove(ClassName$9.SHOW),EventHandler.one(i,TRANSITION_END,a),emulateTransitionEnd(i,e)}else a()}_transitionComplete(e,t,n){if(t){t.classList.remove(ClassName$9.ACTIVE);const e=SelectorEngine.findOne(Selector$9.DROPDOWN_ACTIVE_CHILD,t.parentNode);e&&e.classList.remove(ClassName$9.ACTIVE),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!1)}if(e.classList.add(ClassName$9.ACTIVE),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!0),reflow(e),e.classList.contains(ClassName$9.FADE)&&e.classList.add(ClassName$9.SHOW),e.parentNode&&e.parentNode.classList.contains(ClassName$9.DROPDOWN_MENU)){SelectorEngine.closest(e,Selector$9.DROPDOWN)&&makeArray(SelectorEngine.find(Selector$9.DROPDOWN_TOGGLE)).forEach(e=>e.classList.add(ClassName$9.ACTIVE)),e.setAttribute("aria-expanded",!0)}n&&n()}static _jQueryInterface(e){return this.each(function(){const t=Data.getData(this,DATA_KEY$9)||new Tab(this);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}static _getInstance(e){return Data.getData(e,DATA_KEY$9)}}if(EventHandler.on(document,Event$a.CLICK_DATA_API,Selector$9.DATA_TOGGLE,function(e){e.preventDefault(),(Data.getData(this,DATA_KEY$9)||new Tab(this)).show()}),void 0!==jQuery){const e=jQuery.fn.tab;jQuery.fn.tab=Tab._jQueryInterface,jQuery.fn.tab.Constructor=Tab,jQuery.fn.tab.noConflict=(()=>(jQuery.fn.tab=e,Tab._jQueryInterface))}const NAME$a="toast",VERSION$a="4.3.1",DATA_KEY$a="bs.toast",EVENT_KEY$a=`.${DATA_KEY$a}`,Event$b={CLICK_DISMISS:`click.dismiss${EVENT_KEY$a}`,HIDE:`hide${EVENT_KEY$a}`,HIDDEN:`hidden${EVENT_KEY$a}`,SHOW:`show${EVENT_KEY$a}`,SHOWN:`shown${EVENT_KEY$a}`},ClassName$a={FADE:"fade",HIDE:"hide",SHOW:"show",SHOWING:"showing"},DefaultType$7={animation:"boolean",autohide:"boolean",delay:"number"},Default$7={animation:!0,autohide:!0,delay:500},Selector$a={DATA_DISMISS:'[data-dismiss="toast"]'};class Toast{constructor(e,t){this._element=e,this._config=this._getConfig(t),this._timeout=null,this._setListeners(),Data.setData(e,DATA_KEY$a,this)}static get VERSION(){return VERSION$a}static get DefaultType(){return DefaultType$7}static get Default(){return Default$7}show(){EventHandler.trigger(this._element,Event$b.SHOW),this._config.animation&&this._element.classList.add(ClassName$a.FADE);const e=()=>{this._element.classList.remove(ClassName$a.SHOWING),this._element.classList.add(ClassName$a.SHOW),EventHandler.trigger(this._element,Event$b.SHOWN),this._config.autohide&&this.hide()};if(this._element.classList.remove(ClassName$a.HIDE),this._element.classList.add(ClassName$a.SHOWING),this._config.animation){const t=getTransitionDurationFromElement(this._element);EventHandler.one(this._element,TRANSITION_END,e),emulateTransitionEnd(this._element,t)}else e()}hide(e){this._element.classList.contains(ClassName$a.SHOW)&&(EventHandler.trigger(this._element,Event$b.HIDE),e?this._close():this._timeout=setTimeout(()=>{this._close()},this._config.delay))}dispose(){clearTimeout(this._timeout),this._timeout=null,this._element.classList.contains(ClassName$a.SHOW)&&this._element.classList.remove(ClassName$a.SHOW),EventHandler.off(this._element,Event$b.CLICK_DISMISS),Data.removeData(this._element,DATA_KEY$a),this._element=null,this._config=null}_getConfig(e){return e=_extends({},Default$7,Manipulator.getDataAttributes(this._element),"object"==typeof e&&e?e:{}),typeCheckConfig(NAME$a,e,this.constructor.DefaultType),e}_setListeners(){EventHandler.on(this._element,Event$b.CLICK_DISMISS,Selector$a.DATA_DISMISS,()=>this.hide(!0))}_close(){const e=()=>{this._element.classList.add(ClassName$a.HIDE),EventHandler.trigger(this._element,Event$b.HIDDEN)};if(this._element.classList.remove(ClassName$a.SHOW),this._config.animation){const t=getTransitionDurationFromElement(this._element);EventHandler.one(this._element,TRANSITION_END,e),emulateTransitionEnd(this._element,t)}else e()}static _jQueryInterface(e){return this.each(function(){let t=Data.getData(this,DATA_KEY$a);if(t||(t=new Toast(this,"object"==typeof e&&e)),"string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}})}static _getInstance(e){return Data.getData(e,DATA_KEY$a)}}if(void 0!==jQuery){const e=jQuery.fn[NAME$a];jQuery.fn[NAME$a]=Toast._jQueryInterface,jQuery.fn[NAME$a].Constructor=Toast,jQuery.fn[NAME$a].noConflict=(()=>(jQuery.fn[NAME$a]=e,Toast._jQueryInterface))}export{Alert,Button,Carousel,Collapse,Dropdown,Modal,Popover,ScrollSpy,Tab,Toast,Tooltip};
//# sourceMappingURL=bootstrap.esm.min.js.map