Comparing version 5.0.0 to 5.0.1
/*! | ||
* Bootstrap v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
*/ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e(t.Popper)}(this,(function(t){"use strict";function e(t){if(t&&t.__esModule)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(s){if("default"!==s){var i=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(e,s,i.get?i:{enumerable:!0,get:function(){return t[s]}})}})),e.default=t,Object.freeze(e)}var s=e(t);const i=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},n=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let s=t.getAttribute("href");if(!s||!s.includes("#")&&!s.startsWith("."))return null;s.includes("#")&&!s.startsWith("#")&&(s="#"+s.split("#")[1]),e=s&&"#"!==s?s.trim():null}return e},o=t=>{const e=n(t);return e&&document.querySelector(e)?e:null},r=t=>{const e=n(t);return e?document.querySelector(e):null},a=t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:s}=window.getComputedStyle(t);const i=Number.parseFloat(e),n=Number.parseFloat(s);return i||n?(e=e.split(",")[0],s=s.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(s))):0},l=t=>{t.dispatchEvent(new Event("transitionend"))},c=t=>(t[0]||t).nodeType,h=(t,e)=>{let s=!1;const i=e+5;t.addEventListener("transitionend",(function e(){s=!0,t.removeEventListener("transitionend",e)})),setTimeout(()=>{s||l(t)},i)},d=(t,e,s)=>{Object.keys(s).forEach(i=>{const n=s[i],o=e[i],r=o&&c(o)?"element":null==(a=o)?""+a:{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase();var a;if(!new RegExp(n).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)})},u=t=>{if(!t)return!1;if(t.style&&t.parentNode&&t.parentNode.style){const e=getComputedStyle(t),s=getComputedStyle(t.parentNode);return"none"!==e.display&&"none"!==s.display&&"hidden"!==e.visibility}return!1},g=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),f=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?f(t.parentNode):null},p=()=>{},m=t=>t.offsetHeight,_=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},b=()=>"rtl"===document.documentElement.dir,v=(t,e)=>{var s;s=()=>{const s=_();if(s){const i=s.fn[t];s.fn[t]=e.jQueryInterface,s.fn[t].Constructor=e,s.fn[t].noConflict=()=>(s.fn[t]=i,e.jQueryInterface)}},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",s):s()},y=t=>{"function"==typeof t&&t()},w=new Map;var E={set(t,e,s){w.has(t)||w.set(t,new Map);const i=w.get(t);i.has(e)||0===i.size?i.set(e,s):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(i.keys())[0]}.`)},get:(t,e)=>w.has(t)&&w.get(t).get(e)||null,remove(t,e){if(!w.has(t))return;const s=w.get(t);s.delete(e),0===s.size&&w.delete(t)}};const T=/[^.]*(?=\..*)\.|.*/,A=/\..*/,L=/::\d+$/,k={};let C=1;const D={mouseenter:"mouseover",mouseleave:"mouseout"},S=/^(mouseenter|mouseleave)/i,N=new Set(["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 O(t,e){return e&&`${e}::${C++}`||t.uidEvent||C++}function I(t){const e=O(t);return t.uidEvent=e,k[e]=k[e]||{},k[e]}function j(t,e,s=null){const i=Object.keys(t);for(let n=0,o=i.length;n<o;n++){const o=t[i[n]];if(o.originalHandler===e&&o.delegationSelector===s)return o}return null}function x(t,e,s){const i="string"==typeof e,n=i?s:e;let o=M(t);return N.has(o)||(o=t),[i,n,o]}function P(t,e,s,i,n){if("string"!=typeof e||!t)return;if(s||(s=i,i=null),S.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};i?i=t(i):s=t(s)}const[o,r,a]=x(e,s,i),l=I(t),c=l[a]||(l[a]={}),h=j(c,r,o?s:null);if(h)return void(h.oneOff=h.oneOff&&n);const d=O(r,e.replace(T,"")),u=o?function(t,e,s){return function i(n){const o=t.querySelectorAll(e);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return n.delegateTarget=r,i.oneOff&&R.off(t,n.type,e,s),s.apply(r,[n]);return null}}(t,s,i):function(t,e){return function s(i){return i.delegateTarget=t,s.oneOff&&R.off(t,i.type,e),e.apply(t,[i])}}(t,s);u.delegationSelector=o?s:null,u.originalHandler=r,u.oneOff=n,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function H(t,e,s,i,n){const o=j(e[s],i,n);o&&(t.removeEventListener(s,o,Boolean(n)),delete e[s][o.uidEvent])}function M(t){return t=t.replace(A,""),D[t]||t}const R={on(t,e,s,i){P(t,e,s,i,!1)},one(t,e,s,i){P(t,e,s,i,!0)},off(t,e,s,i){if("string"!=typeof e||!t)return;const[n,o,r]=x(e,s,i),a=r!==e,l=I(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void H(t,l,r,o,n?s:null)}c&&Object.keys(l).forEach(s=>{!function(t,e,s,i){const n=e[s]||{};Object.keys(n).forEach(o=>{if(o.includes(i)){const i=n[o];H(t,e,s,i.originalHandler,i.delegationSelector)}})}(t,l,s,e.slice(1))});const h=l[r]||{};Object.keys(h).forEach(s=>{const i=s.replace(L,"");if(!a||e.includes(i)){const e=h[s];H(t,l,r,e.originalHandler,e.delegationSelector)}})},trigger(t,e,s){if("string"!=typeof e||!t)return null;const i=_(),n=M(e),o=e!==n,r=N.has(n);let a,l=!0,c=!0,h=!1,d=null;return o&&i&&(a=i.Event(e,s),i(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(n,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==s&&Object.keys(s).forEach(t=>{Object.defineProperty(d,t,{get:()=>s[t]})}),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}};class B{constructor(t){(t="string"==typeof t?document.querySelector(t):t)&&(this._element=t,E.set(this._element,this.constructor.DATA_KEY,this))}dispose(){E.remove(this._element,this.constructor.DATA_KEY),R.off(this._element,"."+this.constructor.DATA_KEY),this._element=null}static getInstance(t){return E.get(t,this.DATA_KEY)}static get VERSION(){return"5.0.0"}}class $ extends B{static get DATA_KEY(){return"bs.alert"}close(t){const e=t?this._getRootElement(t):this._element,s=this._triggerCloseEvent(e);null===s||s.defaultPrevented||this._removeElement(e)}_getRootElement(t){return r(t)||t.closest(".alert")}_triggerCloseEvent(t){return R.trigger(t,"close.bs.alert")}_removeElement(t){if(t.classList.remove("show"),!t.classList.contains("fade"))return void this._destroyElement(t);const e=a(t);R.one(t,"transitionend",()=>this._destroyElement(t)),h(t,e)}_destroyElement(t){t.parentNode&&t.parentNode.removeChild(t),R.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){let e=E.get(this,"bs.alert");e||(e=new $(this)),"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}R.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',$.handleDismiss(new $)),v("alert",$);class z extends B{static get DATA_KEY(){return"bs.button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){let e=E.get(this,"bs.button");e||(e=new z(this)),"toggle"===t&&e[t]()}))}}function U(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function K(t){return t.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())}R.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');let s=E.get(e,"bs.button");s||(s=new z(e)),s.toggle()}),v("button",z);const F={setDataAttribute(t,e,s){t.setAttribute("data-bs-"+K(e),s)},removeDataAttribute(t,e){t.removeAttribute("data-bs-"+K(e))},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter(t=>t.startsWith("bs")).forEach(s=>{let i=s.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=U(t.dataset[s])}),e},getDataAttribute:(t,e)=>U(t.getAttribute("data-bs-"+K(e))),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},W={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter(t=>t.matches(e)),parents(t,e){const s=[];let i=t.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)i.matches(e)&&s.push(i),i=i.parentNode;return s},prev(t,e){let s=t.previousElementSibling;for(;s;){if(s.matches(e))return[s];s=s.previousElementSibling}return[]},next(t,e){let s=t.nextElementSibling;for(;s;){if(s.matches(e))return[s];s=s.nextElementSibling}return[]}},Y={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},V={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},q="next",Q="prev",X="left",G="right";class Z extends B{constructor(t,e){super(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(e),this._indicatorsElement=W.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return Y}static get DATA_KEY(){return"bs.carousel"}next(){this._isSliding||this._slide(q)}nextWhenVisible(){!document.hidden&&u(this._element)&&this.next()}prev(){this._isSliding||this._slide(Q)}pause(t){t||(this._isPaused=!0),W.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(l(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=W.findOne(".active.carousel-item",this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void R.one(this._element,"slid.bs.carousel",()=>this.to(t));if(e===t)return this.pause(),void this.cycle();const s=t>e?q:Q;this._slide(s,this._items[t])}dispose(){this._items=null,this._config=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null,super.dispose()}_getConfig(t){return t={...Y,...t},d("carousel",t,V),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?G:X)}_addEventListeners(){this._config.keyboard&&R.on(this._element,"keydown.bs.carousel",t=>this._keydown(t)),"hover"===this._config.pause&&(R.on(this._element,"mouseenter.bs.carousel",t=>this.pause(t)),R.on(this._element,"mouseleave.bs.carousel",t=>this.cycle(t))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},e=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},s=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(t=>this.cycle(t),500+this._config.interval))};W.find(".carousel-item img",this._element).forEach(t=>{R.on(t,"dragstart.bs.carousel",t=>t.preventDefault())}),this._pointerEvent?(R.on(this._element,"pointerdown.bs.carousel",e=>t(e)),R.on(this._element,"pointerup.bs.carousel",t=>s(t)),this._element.classList.add("pointer-event")):(R.on(this._element,"touchstart.bs.carousel",e=>t(e)),R.on(this._element,"touchmove.bs.carousel",t=>e(t)),R.on(this._element,"touchend.bs.carousel",t=>s(t)))}_keydown(t){/input|textarea/i.test(t.target.tagName)||("ArrowLeft"===t.key?(t.preventDefault(),this._slide(G)):"ArrowRight"===t.key&&(t.preventDefault(),this._slide(X)))}_getItemIndex(t){return this._items=t&&t.parentNode?W.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const s=t===q,i=t===Q,n=this._getItemIndex(e),o=this._items.length-1;if((i&&0===n||s&&n===o)&&!this._config.wrap)return e;const r=(n+(i?-1:1))%this._items.length;return-1===r?this._items[this._items.length-1]:this._items[r]}_triggerSlideEvent(t,e){const s=this._getItemIndex(t),i=this._getItemIndex(W.findOne(".active.carousel-item",this._element));return R.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:i,to:s})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=W.findOne(".active",this._indicatorsElement);e.classList.remove("active"),e.removeAttribute("aria-current");const s=W.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e<s.length;e++)if(Number.parseInt(s[e].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(t)){s[e].classList.add("active"),s[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||W.findOne(".active.carousel-item",this._element);if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-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}_slide(t,e){const s=this._directionToOrder(t),i=W.findOne(".active.carousel-item",this._element),n=this._getItemIndex(i),o=e||this._getItemByOrder(s,i),r=this._getItemIndex(o),l=Boolean(this._interval),c=s===q,d=c?"carousel-item-start":"carousel-item-end",u=c?"carousel-item-next":"carousel-item-prev",g=this._orderToDirection(s);if(o&&o.classList.contains("active"))this._isSliding=!1;else if(!this._triggerSlideEvent(o,g).defaultPrevented&&i&&o){if(this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(o),this._activeElement=o,this._element.classList.contains("slide")){o.classList.add(u),m(o),i.classList.add(d),o.classList.add(d);const t=a(i);R.one(i,"transitionend",()=>{o.classList.remove(d,u),o.classList.add("active"),i.classList.remove("active",u,d),this._isSliding=!1,setTimeout(()=>{R.trigger(this._element,"slid.bs.carousel",{relatedTarget:o,direction:g,from:n,to:r})},0)}),h(i,t)}else i.classList.remove("active"),o.classList.add("active"),this._isSliding=!1,R.trigger(this._element,"slid.bs.carousel",{relatedTarget:o,direction:g,from:n,to:r});l&&this.cycle()}}_directionToOrder(t){return[G,X].includes(t)?b()?t===X?Q:q:t===X?q:Q:t}_orderToDirection(t){return[q,Q].includes(t)?b()?t===Q?X:G:t===Q?G:X:t}static carouselInterface(t,e){let s=E.get(t,"bs.carousel"),i={...Y,...F.getDataAttributes(t)};"object"==typeof e&&(i={...i,...e});const n="string"==typeof e?e:i.slide;if(s||(s=new Z(t,i)),"number"==typeof e)s.to(e);else if("string"==typeof n){if(void 0===s[n])throw new TypeError(`No method named "${n}"`);s[n]()}else i.interval&&i.ride&&(s.pause(),s.cycle())}static jQueryInterface(t){return this.each((function(){Z.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=r(this);if(!e||!e.classList.contains("carousel"))return;const s={...F.getDataAttributes(e),...F.getDataAttributes(this)},i=this.getAttribute("data-bs-slide-to");i&&(s.interval=!1),Z.carouselInterface(e,s),i&&E.get(e,"bs.carousel").to(i),t.preventDefault()}}R.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",Z.dataApiClickHandler),R.on(window,"load.bs.carousel.data-api",()=>{const t=W.find('[data-bs-ride="carousel"]');for(let e=0,s=t.length;e<s;e++)Z.carouselInterface(t[e],E.get(t[e],"bs.carousel"))}),v("carousel",Z);const J={toggle:!0,parent:""},tt={toggle:"boolean",parent:"(string|element)"};class et extends B{constructor(t,e){super(t),this._isTransitioning=!1,this._config=this._getConfig(e),this._triggerArray=W.find(`[data-bs-toggle="collapse"][href="#${this._element.id}"],[data-bs-toggle="collapse"][data-bs-target="#${this._element.id}"]`);const s=W.find('[data-bs-toggle="collapse"]');for(let t=0,e=s.length;t<e;t++){const e=s[t],i=o(e),n=W.find(i).filter(t=>t===this._element);null!==i&&n.length&&(this._selector=i,this._triggerArray.push(e))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return J}static get DATA_KEY(){return"bs.collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let t,e;this._parent&&(t=W.find(".show, .collapsing",this._parent).filter(t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse")),0===t.length&&(t=null));const s=W.findOne(this._selector);if(t){const i=t.find(t=>s!==t);if(e=i?E.get(i,"bs.collapse"):null,e&&e._isTransitioning)return}if(R.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach(t=>{s!==t&&et.collapseInterface(t,"hide"),e||E.set(t,"bs.collapse",null)});const i=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[i]=0,this._triggerArray.length&&this._triggerArray.forEach(t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)}),this.setTransitioning(!0);const n="scroll"+(i[0].toUpperCase()+i.slice(1)),o=a(this._element);R.one(this._element,"transitionend",()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[i]="",this.setTransitioning(!1),R.trigger(this._element,"shown.bs.collapse")}),h(this._element,o),this._element.style[i]=this._element[n]+"px"}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if(R.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=this._element.getBoundingClientRect()[t]+"px",m(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],s=r(e);s&&!s.classList.contains("show")&&(e.classList.add("collapsed"),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="";const s=a(this._element);R.one(this._element,"transitionend",()=>{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),R.trigger(this._element,"hidden.bs.collapse")}),h(this._element,s)}setTransitioning(t){this._isTransitioning=t}dispose(){super.dispose(),this._config=null,this._parent=null,this._triggerArray=null,this._isTransitioning=null}_getConfig(t){return(t={...J,...t}).toggle=Boolean(t.toggle),d("collapse",t,tt),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:t}=this._config;c(t)?void 0===t.jquery&&void 0===t[0]||(t=t[0]):t=W.findOne(t);const e=`[data-bs-toggle="collapse"][data-bs-parent="${t}"]`;return W.find(e,t).forEach(t=>{const e=r(t);this._addAriaAndCollapsedClass(e,[t])}),t}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const s=t.classList.contains("show");e.forEach(t=>{s?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",s)})}static collapseInterface(t,e){let s=E.get(t,"bs.collapse");const i={...J,...F.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!s&&i.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(i.toggle=!1),s||(s=new et(t,i)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){et.collapseInterface(this,t)}))}}R.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=F.getDataAttributes(this),s=o(this);W.find(s).forEach(t=>{const s=E.get(t,"bs.collapse");let i;s?(null===s._parent&&"string"==typeof e.parent&&(s._config.parent=e.parent,s._parent=s._getParent()),i="toggle"):i=e,et.collapseInterface(t,i)})})),v("collapse",et);const st=new RegExp("ArrowUp|ArrowDown|Escape"),it=b()?"top-end":"top-start",nt=b()?"top-start":"top-end",ot=b()?"bottom-end":"bottom-start",rt=b()?"bottom-start":"bottom-end",at=b()?"left-start":"right-start",lt=b()?"right-start":"left-start",ct={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ht={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class dt extends B{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ct}static get DefaultType(){return ht}static get DATA_KEY(){return"bs.dropdown"}toggle(){g(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(g(this._element)||this._menu.classList.contains("show"))return;const t=dt.getParentFromElement(this._element),e={relatedTarget:this._element};if(!R.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)F.setDataAttribute(this._menu,"popper","none");else{if(void 0===s)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:c(this._config.reference)?(e=this._config.reference,void 0!==this._config.reference.jquery&&(e=this._config.reference[0])):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find(t=>"applyStyles"===t.name&&!1===t.enabled);this._popper=s.createPopper(e,this._menu,i),n&&F.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach(t=>R.on(t,"mouseover",p)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),R.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(g(this._element)||!this._menu.classList.contains("show"))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._menu=null,this._popper&&(this._popper.destroy(),this._popper=null),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){R.on(this._element,"click.bs.dropdown",t=>{t.preventDefault(),this.toggle()})}_completeHide(t){R.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>R.off(t,"mouseover",p)),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),F.removeDataAttribute(this._menu,"popper"),R.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...F.getDataAttributes(this._element),...t},d("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!c(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError("dropdown".toUpperCase()+': Option "reference" provided type "object" without a required "getBoundingClientRect" method.');return t}_getMenuElement(){return W.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return at;if(t.classList.contains("dropstart"))return lt;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?nt:it:e?rt:ot}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem(t){const e=W.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(u);if(!e.length)return;let s=e.indexOf(t.target);"ArrowUp"===t.key&&s>0&&s--,"ArrowDown"===t.key&&s<e.length-1&&s++,s=-1===s?0:s,e[s].focus()}static dropdownInterface(t,e){let s=E.get(t,"bs.dropdown");if(s||(s=new dt(t,"object"==typeof e?e:null)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){dt.dropdownInterface(this,t)}))}static clearMenus(t){if(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;if(/input|select|option|textarea|form/i.test(t.target.tagName))return}const e=W.find('[data-bs-toggle="dropdown"]');for(let s=0,i=e.length;s<i;s++){const i=E.get(e[s],"bs.dropdown");if(!i||!1===i._config.autoClose)continue;if(!i._element.classList.contains("show"))continue;const n={relatedTarget:i._element};if(t){const e=t.composedPath(),s=e.includes(i._menu);if(e.includes(i._element)||"inside"===i._config.autoClose&&!s||"outside"===i._config.autoClose&&s)continue;if("keyup"===t.type&&"Tab"===t.key&&i._menu.contains(t.target))continue;"click"===t.type&&(n.clickEvent=t)}i._completeHide(n)}}static getParentFromElement(t){return r(t)||t.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?"Space"===t.key||"Escape"!==t.key&&("ArrowDown"!==t.key&&"ArrowUp"!==t.key||t.target.closest(".dropdown-menu")):!st.test(t.key))return;const e=this.classList.contains("show");if(!e&&"Escape"===t.key)return;if(t.preventDefault(),t.stopPropagation(),g(this))return;const s=()=>this.matches('[data-bs-toggle="dropdown"]')?this:W.prev(this,'[data-bs-toggle="dropdown"]')[0];if("Escape"===t.key)return s().focus(),void dt.clearMenus();e||"ArrowUp"!==t.key&&"ArrowDown"!==t.key?e&&"Space"!==t.key?dt.getInstance(s())._selectMenuItem(t):dt.clearMenus():s().click()}}R.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',dt.dataApiKeydownHandler),R.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",dt.dataApiKeydownHandler),R.on(document,"click.bs.dropdown.data-api",dt.clearMenus),R.on(document,"keyup.bs.dropdown.data-api",dt.clearMenus),R.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),dt.dropdownInterface(this)})),v("dropdown",dt);const ut=()=>{const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)},gt=(t=ut())=>{ft(),pt("body","paddingRight",e=>e+t),pt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",e=>e+t),pt(".sticky-top","marginRight",e=>e-t)},ft=()=>{const t=document.body.style.overflow;t&&F.setDataAttribute(document.body,"overflow",t),document.body.style.overflow="hidden"},pt=(t,e,s)=>{const i=ut();W.find(t).forEach(t=>{if(t!==document.body&&window.innerWidth>t.clientWidth+i)return;const n=t.style[e],o=window.getComputedStyle(t)[e];F.setDataAttribute(t,e,n),t.style[e]=s(Number.parseFloat(o))+"px"})},mt=()=>{_t("body","overflow"),_t("body","paddingRight"),_t(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),_t(".sticky-top","marginRight")},_t=(t,e)=>{W.find(t).forEach(t=>{const s=F.getDataAttribute(t,e);void 0===s?t.style.removeProperty(e):(F.removeDataAttribute(t,e),t.style[e]=s)})},bt={isVisible:!0,isAnimated:!1,rootElement:document.body,clickCallback:null},vt={isVisible:"boolean",isAnimated:"boolean",rootElement:"element",clickCallback:"(function|null)"};class yt{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&m(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation(()=>{y(t)})):y(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation(()=>{this.dispose(),y(t)})):y(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return t={...bt,..."object"==typeof t?t:{}},d("backdrop",t,vt),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),R.on(this._getElement(),"mousedown.bs.backdrop",()=>{y(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(R.off(this._element,"mousedown.bs.backdrop"),this._getElement().parentNode.removeChild(this._element),this._isAppended=!1)}_emulateAnimation(t){if(!this._config.isAnimated)return void y(t);const e=a(this._getElement());R.one(this._getElement(),"transitionend",()=>y(t)),h(this._getElement(),e)}}const wt={backdrop:!0,keyboard:!0,focus:!0},Et={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class Tt extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=W.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1}static get Default(){return wt}static get DATA_KEY(){return"bs.modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown||this._isTransitioning)return;this._isAnimated()&&(this._isTransitioning=!0);const e=R.trigger(this._element,"show.bs.modal",{relatedTarget:t});this._isShown||e.defaultPrevented||(this._isShown=!0,gt(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),R.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',t=>this.hide(t)),R.on(this._dialog,"mousedown.dismiss.bs.modal",()=>{R.one(this._element,"mouseup.dismiss.bs.modal",t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(t)))}hide(t){if(t&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if(R.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();if(e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),R.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),R.off(this._element,"click.dismiss.bs.modal"),R.off(this._dialog,"mousedown.dismiss.bs.modal"),e){const t=a(this._element);R.one(this._element,"transitionend",t=>this._hideModal(t)),h(this._element,t)}else this._hideModal()}dispose(){[window,this._dialog].forEach(t=>R.off(t,".bs.modal")),super.dispose(),R.off(document,"focusin.bs.modal"),this._config=null,this._dialog=null,this._backdrop.dispose(),this._backdrop=null,this._isShown=null,this._ignoreBackdropClick=null,this._isTransitioning=null}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new yt({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...wt,...F.getDataAttributes(this._element),...t},d("modal",t,Et),t}_showElement(t){const e=this._isAnimated(),s=W.findOne(".modal-body",this._dialog);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._element.setAttribute("role","dialog"),this._element.scrollTop=0,s&&(s.scrollTop=0),e&&m(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus();const i=()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,R.trigger(this._element,"shown.bs.modal",{relatedTarget:t})};if(e){const t=a(this._dialog);R.one(this._dialog,"transitionend",i),h(this._dialog,t)}else i()}_enforceFocus(){R.off(document,"focusin.bs.modal"),R.on(document,"focusin.bs.modal",t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()})}_setEscapeEvent(){this._isShown?R.on(this._element,"keydown.dismiss.bs.modal",t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()}):R.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?R.on(window,"resize.bs.modal",()=>this._adjustDialog()):R.off(window,"resize.bs.modal")}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove("modal-open"),this._resetAdjustments(),mt(),R.trigger(this._element,"hidden.bs.modal")})}_showBackdrop(t){R.on(this._element,"click.dismiss.bs.modal",t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())}),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(R.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight;t||(this._element.style.overflowY="hidden"),this._element.classList.add("modal-static");const e=a(this._dialog);R.off(this._element,"transitionend"),R.one(this._element,"transitionend",()=>{this._element.classList.remove("modal-static"),t||(R.one(this._element,"transitionend",()=>{this._element.style.overflowY=""}),h(this._element,e))}),h(this._element,e),this._element.focus()}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=ut(),s=e>0;(!s&&t&&!b()||s&&!t&&b())&&(this._element.style.paddingLeft=e+"px"),(s&&!t&&!b()||!s&&t&&b())&&(this._element.style.paddingRight=e+"px")}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const s=Tt.getInstance(this)||new Tt(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===s[t])throw new TypeError(`No method named "${t}"`);s[t](e)}}))}}R.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=r(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),R.one(e,"show.bs.modal",t=>{t.defaultPrevented||R.one(e,"hidden.bs.modal",()=>{u(this)&&this.focus()})}),(Tt.getInstance(e)||new Tt(e)).toggle(this)})),v("modal",Tt);const At={backdrop:!0,keyboard:!0,scroll:!1},Lt={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class kt extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get Default(){return At}static get DATA_KEY(){return"bs.offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown)return;if(R.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(gt(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show");const e=a(this._element);R.one(this._element,"transitionend",()=>{R.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),h(this._element,e)}hide(){if(!this._isShown)return;if(R.trigger(this._element,"hide.bs.offcanvas").defaultPrevented)return;R.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),this._backdrop.hide();const t=a(this._element);R.one(this._element,"transitionend",()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||mt(),R.trigger(this._element,"hidden.bs.offcanvas")}),h(this._element,t)}dispose(){this._backdrop.dispose(),super.dispose(),R.off(document,"focusin.bs.offcanvas"),this._config=null,this._backdrop=null}_getConfig(t){return t={...At,...F.getDataAttributes(this._element),..."object"==typeof t?t:{}},d("offcanvas",t,Lt),t}_initializeBackDrop(){return new yt({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){R.off(document,"focusin.bs.offcanvas"),R.on(document,"focusin.bs.offcanvas",e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()}),t.focus()}_addEventListeners(){R.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',()=>this.hide()),R.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()})}static jQueryInterface(t){return this.each((function(){const e=E.get(this,"bs.offcanvas")||new kt(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=r(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),g(this))return;R.one(e,"hidden.bs.offcanvas",()=>{u(this)&&this.focus()});const s=W.findOne(".offcanvas.show");s&&s!==e&&kt.getInstance(s).hide(),(E.get(e,"bs.offcanvas")||new kt(e)).toggle(this)})),R.on(window,"load.bs.offcanvas.data-api",()=>{W.find(".offcanvas.show").forEach(t=>(E.get(t,"bs.offcanvas")||new kt(t)).show())}),v("offcanvas",kt);const Ct=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Dt=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,St=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Nt=(t,e)=>{const s=t.nodeName.toLowerCase();if(e.includes(s))return!Ct.has(s)||Boolean(Dt.test(t.nodeValue)||St.test(t.nodeValue));const i=e.filter(t=>t instanceof RegExp);for(let t=0,e=i.length;t<e;t++)if(i[t].test(s))return!0;return!1};function Ot(t,e,s){if(!t.length)return t;if(s&&"function"==typeof s)return s(t);const i=(new window.DOMParser).parseFromString(t,"text/html"),n=Object.keys(e),o=[].concat(...i.body.querySelectorAll("*"));for(let t=0,s=o.length;t<s;t++){const s=o[t],i=s.nodeName.toLowerCase();if(!n.includes(i)){s.parentNode.removeChild(s);continue}const r=[].concat(...s.attributes),a=[].concat(e["*"]||[],e[i]||[]);r.forEach(t=>{Nt(t,a)||s.removeAttribute(t.nodeName)})}return i.body.innerHTML}const It=new RegExp("(^|\\s)bs-tooltip\\S+","g"),jt=new Set(["sanitize","allowList","sanitizeFn"]),xt={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Pt={AUTO:"auto",TOP:"top",RIGHT:b()?"left":"right",BOTTOM:"bottom",LEFT:b()?"right":"left"},Ht={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,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},Mt={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"};class Rt extends B{constructor(t,e){if(void 0===s)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return Ht}static get NAME(){return"tooltip"}static get DATA_KEY(){return"bs.tooltip"}static get Event(){return Mt}static get EVENT_KEY(){return".bs.tooltip"}static get DefaultType(){return xt}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),R.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.parentNode&&this.tip.parentNode.removeChild(this.tip),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.config=null,this.tip=null,super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=R.trigger(this._element,this.constructor.Event.SHOW),e=f(this._element),n=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!n)return;const o=this.getTipElement(),r=i(this.constructor.NAME);o.setAttribute("id",r),this._element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&o.classList.add("fade");const l="function"==typeof this.config.placement?this.config.placement.call(this,o,this._element):this.config.placement,c=this._getAttachment(l);this._addAttachmentClass(c);const d=this._getContainer();E.set(o,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(d.appendChild(o),R.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=s.createPopper(this._element,o,this._getPopperConfig(c)),o.classList.add("show");const u="function"==typeof this.config.customClass?this.config.customClass():this.config.customClass;u&&o.classList.add(...u.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>{R.on(t,"mouseover",p)});const g=()=>{const t=this._hoverState;this._hoverState=null,R.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)};if(this.tip.classList.contains("fade")){const t=a(this.tip);R.one(this.tip,"transitionend",g),h(this.tip,t)}else g()}hide(){if(!this._popper)return;const t=this.getTipElement(),e=()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.parentNode&&t.parentNode.removeChild(t),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),R.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))};if(!R.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented){if(t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>R.off(t,"mouseover",p)),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,this.tip.classList.contains("fade")){const s=a(t);R.one(t,"transitionend",e),h(t,s)}else e();this._hoverState=""}}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");return t.innerHTML=this.config.template,this.tip=t.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(W.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return"object"==typeof e&&c(e)?(e.jquery&&(e=e[0]),void(this.config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this.config.html?(this.config.sanitize&&(e=Ot(e,this.config.allowList,this.config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this._element):this.config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const s=this.constructor.DATA_KEY;return(e=e||E.get(t.delegateTarget,s))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),E.set(t.delegateTarget,s,e)),e}_getOffset(){const{offset:t}=this.config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this.config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this.config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this.config.popperConfig?this.config.popperConfig(e):this.config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add("bs-tooltip-"+this.updateAttachment(t))}_getContainer(){return!1===this.config.container?document.body:c(this.config.container)?this.config.container:W.findOne(this.config.container)}_getAttachment(t){return Pt[t.toUpperCase()]}_setListeners(){this.config.trigger.split(" ").forEach(t=>{if("click"===t)R.on(this._element,this.constructor.Event.CLICK,this.config.selector,t=>this.toggle(t));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,s="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;R.on(this._element,e,this.config.selector,t=>this._enter(t)),R.on(this._element,s,this.config.selector,t=>this._leave(t))}}),this._hideModalHandler=()=>{this._element&&this.hide()},R.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.config.selector?this.config={...this.config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e.config.delay&&e.config.delay.show?e._timeout=setTimeout(()=>{"show"===e._hoverState&&e.show()},e.config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(()=>{"out"===e._hoverState&&e.hide()},e.config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=F.getDataAttributes(this._element);return Object.keys(e).forEach(t=>{jt.has(t)&&delete e[t]}),t&&"object"==typeof t.container&&t.container.jquery&&(t.container=t.container[0]),"number"==typeof(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),d("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=Ot(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this.config)for(const e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(It);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){let e=E.get(this,"bs.tooltip");const s="object"==typeof t&&t;if((e||!/dispose|hide/.test(t))&&(e||(e=new Rt(this,s)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}v("tooltip",Rt);const Bt=new RegExp("(^|\\s)bs-popover\\S+","g"),$t={...Rt.Default,placement:"right",offset:[0,8],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>'},zt={...Rt.DefaultType,content:"(string|element|function)"},Ut={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class Kt extends Rt{static get Default(){return $t}static get NAME(){return"popover"}static get DATA_KEY(){return"bs.popover"}static get Event(){return Ut}static get EVENT_KEY(){return".bs.popover"}static get DefaultType(){return zt}isWithContent(){return this.getTitle()||this._getContent()}setContent(){const t=this.getTipElement();this.setElementContent(W.findOne(".popover-header",t),this.getTitle());let e=this._getContent();"function"==typeof e&&(e=e.call(this._element)),this.setElementContent(W.findOne(".popover-body",t),e),t.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add("bs-popover-"+this.updateAttachment(t))}_getContent(){return this._element.getAttribute("data-bs-content")||this.config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(Bt);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}static jQueryInterface(t){return this.each((function(){let e=E.get(this,"bs.popover");const s="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new Kt(this,s),E.set(this,"bs.popover",e)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}v("popover",Kt);const Ft={offset:10,method:"auto",target:""},Wt={offset:"number",method:"string",target:"(string|element)"};class Yt extends B{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,R.on(this._scrollElement,"scroll.bs.scrollspy",()=>this._process()),this.refresh(),this._process()}static get Default(){return Ft}static get DATA_KEY(){return"bs.scrollspy"}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":"position",e="auto"===this._config.method?t:this._config.method,s="position"===e?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),W.find(this._selector).map(t=>{const i=o(t),n=i?W.findOne(i):null;if(n){const t=n.getBoundingClientRect();if(t.width||t.height)return[F[e](n).top+s,i]}return null}).filter(t=>t).sort((t,e)=>t[0]-e[0]).forEach(t=>{this._offsets.push(t[0]),this._targets.push(t[1])})}dispose(){super.dispose(),R.off(this._scrollElement,".bs.scrollspy"),this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null}_getConfig(t){if("string"!=typeof(t={...Ft,...F.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&c(t.target)){let{id:e}=t.target;e||(e=i("scrollspy"),t.target.id=e),t.target="#"+e}return d("scrollspy",t,Wt),t}_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 t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),s=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=s){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t<this._offsets[e+1])&&this._activate(this._targets[e])}}_activate(t){this._activeTarget=t,this._clear();const e=this._selector.split(",").map(e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`),s=W.findOne(e.join(","));s.classList.contains("dropdown-item")?(W.findOne(".dropdown-toggle",s.closest(".dropdown")).classList.add("active"),s.classList.add("active")):(s.classList.add("active"),W.parents(s,".nav, .list-group").forEach(t=>{W.prev(t,".nav-link, .list-group-item").forEach(t=>t.classList.add("active")),W.prev(t,".nav-item").forEach(t=>{W.children(t,".nav-link").forEach(t=>t.classList.add("active"))})})),R.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){W.find(this._selector).filter(t=>t.classList.contains("active")).forEach(t=>t.classList.remove("active"))}static jQueryInterface(t){return this.each((function(){const e=Yt.getInstance(this)||new Yt(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}R.on(window,"load.bs.scrollspy.data-api",()=>{W.find('[data-bs-spy="scroll"]').forEach(t=>new Yt(t))}),v("scrollspy",Yt);class Vt extends B{static get DATA_KEY(){return"bs.tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let t;const e=r(this._element),s=this._element.closest(".nav, .list-group");if(s){const e="UL"===s.nodeName||"OL"===s.nodeName?":scope > li > .active":".active";t=W.find(e,s),t=t[t.length-1]}const i=t?R.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(R.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==i&&i.defaultPrevented)return;this._activate(this._element,s);const n=()=>{R.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),R.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,n):n()}_activate(t,e,s){const i=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?W.children(e,".active"):W.find(":scope > li > .active",e))[0],n=s&&i&&i.classList.contains("fade"),o=()=>this._transitionComplete(t,i,s);if(i&&n){const t=a(i);i.classList.remove("show"),R.one(i,"transitionend",o),h(i,t)}else o()}_transitionComplete(t,e,s){if(e){e.classList.remove("active");const t=W.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),m(t),t.classList.contains("fade")&&t.classList.add("show");let i=t.parentNode;if(i&&"LI"===i.nodeName&&(i=i.parentNode),i&&i.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&W.find(".dropdown-toggle",e).forEach(t=>t.classList.add("active")),t.setAttribute("aria-expanded",!0)}s&&s()}static jQueryInterface(t){return this.each((function(){const e=E.get(this,"bs.tab")||new Vt(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}R.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),g(this)||(E.get(this,"bs.tab")||new Vt(this)).show()})),v("tab",Vt);const qt={animation:"boolean",autohide:"boolean",delay:"number"},Qt={animation:!0,autohide:!0,delay:5e3};class Xt extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._setListeners()}static get DefaultType(){return qt}static get Default(){return Qt}static get DATA_KEY(){return"bs.toast"}show(){if(R.trigger(this._element,"show.bs.toast").defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");const t=()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),R.trigger(this._element,"shown.bs.toast"),this._config.autohide&&(this._timeout=setTimeout(()=>{this.hide()},this._config.delay))};if(this._element.classList.remove("hide"),m(this._element),this._element.classList.add("showing"),this._config.animation){const e=a(this._element);R.one(this._element,"transitionend",t),h(this._element,e)}else t()}hide(){if(!this._element.classList.contains("show"))return;if(R.trigger(this._element,"hide.bs.toast").defaultPrevented)return;const t=()=>{this._element.classList.add("hide"),R.trigger(this._element,"hidden.bs.toast")};if(this._element.classList.remove("show"),this._config.animation){const e=a(this._element);R.one(this._element,"transitionend",t),h(this._element,e)}else t()}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose(),this._config=null}_getConfig(t){return t={...Qt,...F.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},d("toast",t,this.constructor.DefaultType),t}_setListeners(){R.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',()=>this.hide())}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){let e=E.get(this,"bs.toast");if(e||(e=new Xt(this,"object"==typeof t&&t)),"string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return v("toast",Xt),{Alert:$,Button:z,Carousel:Z,Collapse:et,Dropdown:dt,Modal:Tt,Offcanvas:kt,Popover:Kt,ScrollSpy:Yt,Tab:Vt,Toast:Xt,Tooltip:Rt}})); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e(t.Popper)}(this,(function(t){"use strict";function e(t){if(t&&t.__esModule)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(s){if("default"!==s){var i=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(e,s,i.get?i:{enumerable:!0,get:function(){return t[s]}})}})),e.default=t,Object.freeze(e)}var s=e(t);const i={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter(t=>t.matches(e)),parents(t,e){const s=[];let i=t.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)i.matches(e)&&s.push(i),i=i.parentNode;return s},prev(t,e){let s=t.previousElementSibling;for(;s;){if(s.matches(e))return[s];s=s.previousElementSibling}return[]},next(t,e){let s=t.nextElementSibling;for(;s;){if(s.matches(e))return[s];s=s.nextElementSibling}return[]}},n=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},o=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let s=t.getAttribute("href");if(!s||!s.includes("#")&&!s.startsWith("."))return null;s.includes("#")&&!s.startsWith("#")&&(s="#"+s.split("#")[1]),e=s&&"#"!==s?s.trim():null}return e},r=t=>{const e=o(t);return e&&document.querySelector(e)?e:null},a=t=>{const e=o(t);return e?document.querySelector(e):null},l=t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:s}=window.getComputedStyle(t);const i=Number.parseFloat(e),n=Number.parseFloat(s);return i||n?(e=e.split(",")[0],s=s.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(s))):0},c=t=>{t.dispatchEvent(new Event("transitionend"))},h=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),d=t=>h(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?i.findOne(t):null,u=(t,e)=>{let s=!1;const i=e+5;t.addEventListener("transitionend",(function e(){s=!0,t.removeEventListener("transitionend",e)})),setTimeout(()=>{s||c(t)},i)},g=(t,e,s)=>{Object.keys(s).forEach(i=>{const n=s[i],o=e[i],r=o&&h(o)?"element":null==(a=o)?""+a:{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase();var a;if(!new RegExp(n).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)})},f=t=>{if(!t)return!1;if(t.style&&t.parentNode&&t.parentNode.style){const e=getComputedStyle(t),s=getComputedStyle(t.parentNode);return"none"!==e.display&&"none"!==s.display&&"hidden"!==e.visibility}return!1},p=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),m=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?m(t.parentNode):null},_=()=>{},b=t=>t.offsetHeight,v=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},y=()=>"rtl"===document.documentElement.dir,w=t=>{var e;e=()=>{const e=v();if(e){const s=t.NAME,i=e.fn[s];e.fn[s]=t.jQueryInterface,e.fn[s].Constructor=t,e.fn[s].noConflict=()=>(e.fn[s]=i,t.jQueryInterface)}},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()},E=t=>{"function"==typeof t&&t()},T=new Map;var A={set(t,e,s){T.has(t)||T.set(t,new Map);const i=T.get(t);i.has(e)||0===i.size?i.set(e,s):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(i.keys())[0]}.`)},get:(t,e)=>T.has(t)&&T.get(t).get(e)||null,remove(t,e){if(!T.has(t))return;const s=T.get(t);s.delete(e),0===s.size&&T.delete(t)}};const k=/[^.]*(?=\..*)\.|.*/,L=/\..*/,C=/::\d+$/,D={};let N=1;const S={mouseenter:"mouseover",mouseleave:"mouseout"},O=/^(mouseenter|mouseleave)/i,I=new Set(["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 x(t,e){return e&&`${e}::${N++}`||t.uidEvent||N++}function j(t){const e=x(t);return t.uidEvent=e,D[e]=D[e]||{},D[e]}function P(t,e,s=null){const i=Object.keys(t);for(let n=0,o=i.length;n<o;n++){const o=t[i[n]];if(o.originalHandler===e&&o.delegationSelector===s)return o}return null}function M(t,e,s){const i="string"==typeof e,n=i?s:e;let o=B(t);return I.has(o)||(o=t),[i,n,o]}function H(t,e,s,i,n){if("string"!=typeof e||!t)return;if(s||(s=i,i=null),O.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};i?i=t(i):s=t(s)}const[o,r,a]=M(e,s,i),l=j(t),c=l[a]||(l[a]={}),h=P(c,r,o?s:null);if(h)return void(h.oneOff=h.oneOff&&n);const d=x(r,e.replace(k,"")),u=o?function(t,e,s){return function i(n){const o=t.querySelectorAll(e);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return n.delegateTarget=r,i.oneOff&&$.off(t,n.type,e,s),s.apply(r,[n]);return null}}(t,s,i):function(t,e){return function s(i){return i.delegateTarget=t,s.oneOff&&$.off(t,i.type,e),e.apply(t,[i])}}(t,s);u.delegationSelector=o?s:null,u.originalHandler=r,u.oneOff=n,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function R(t,e,s,i,n){const o=P(e[s],i,n);o&&(t.removeEventListener(s,o,Boolean(n)),delete e[s][o.uidEvent])}function B(t){return t=t.replace(L,""),S[t]||t}const $={on(t,e,s,i){H(t,e,s,i,!1)},one(t,e,s,i){H(t,e,s,i,!0)},off(t,e,s,i){if("string"!=typeof e||!t)return;const[n,o,r]=M(e,s,i),a=r!==e,l=j(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void R(t,l,r,o,n?s:null)}c&&Object.keys(l).forEach(s=>{!function(t,e,s,i){const n=e[s]||{};Object.keys(n).forEach(o=>{if(o.includes(i)){const i=n[o];R(t,e,s,i.originalHandler,i.delegationSelector)}})}(t,l,s,e.slice(1))});const h=l[r]||{};Object.keys(h).forEach(s=>{const i=s.replace(C,"");if(!a||e.includes(i)){const e=h[s];R(t,l,r,e.originalHandler,e.delegationSelector)}})},trigger(t,e,s){if("string"!=typeof e||!t)return null;const i=v(),n=B(e),o=e!==n,r=I.has(n);let a,l=!0,c=!0,h=!1,d=null;return o&&i&&(a=i.Event(e,s),i(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(n,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==s&&Object.keys(s).forEach(t=>{Object.defineProperty(d,t,{get:()=>s[t]})}),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}};class z{constructor(t){(t=d(t))&&(this._element=t,A.set(this._element,this.constructor.DATA_KEY,this))}dispose(){A.remove(this._element,this.constructor.DATA_KEY),$.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(t=>{this[t]=null})}_queueCallback(t,e,s=!0){if(!s)return void E(t);const i=l(e);$.one(e,"transitionend",()=>E(t)),u(e,i)}static getInstance(t){return A.get(t,this.DATA_KEY)}static get VERSION(){return"5.0.1"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return"bs."+this.NAME}static get EVENT_KEY(){return"."+this.DATA_KEY}}class U extends z{static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,s=this._triggerCloseEvent(e);null===s||s.defaultPrevented||this._removeElement(e)}_getRootElement(t){return a(t)||t.closest(".alert")}_triggerCloseEvent(t){return $.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback(()=>this._destroyElement(t),t,e)}_destroyElement(t){t.parentNode&&t.parentNode.removeChild(t),$.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.alert");e||(e=new U(this)),"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}$.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',U.handleDismiss(new U)),w(U);class q extends z{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.button");e||(e=new q(this)),"toggle"===t&&e[t]()}))}}function F(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function W(t){return t.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())}$.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');let s=A.get(e,"bs.button");s||(s=new q(e)),s.toggle()}),w(q);const K={setDataAttribute(t,e,s){t.setAttribute("data-bs-"+W(e),s)},removeDataAttribute(t,e){t.removeAttribute("data-bs-"+W(e))},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter(t=>t.startsWith("bs")).forEach(s=>{let i=s.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=F(t.dataset[s])}),e},getDataAttribute:(t,e)=>F(t.getAttribute("data-bs-"+W(e))),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},V={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Q={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},X="next",Y="prev",G="left",Z="right";class J extends z{constructor(t,e){super(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(e),this._indicatorsElement=i.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return V}static get NAME(){return"carousel"}next(){this._isSliding||this._slide(X)}nextWhenVisible(){!document.hidden&&f(this._element)&&this.next()}prev(){this._isSliding||this._slide(Y)}pause(t){t||(this._isPaused=!0),i.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(c(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=i.findOne(".active.carousel-item",this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void $.one(this._element,"slid.bs.carousel",()=>this.to(t));if(e===t)return this.pause(),void this.cycle();const s=t>e?X:Y;this._slide(s,this._items[t])}_getConfig(t){return t={...V,...t},g("carousel",t,Q),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?Z:G)}_addEventListeners(){this._config.keyboard&&$.on(this._element,"keydown.bs.carousel",t=>this._keydown(t)),"hover"===this._config.pause&&($.on(this._element,"mouseenter.bs.carousel",t=>this.pause(t)),$.on(this._element,"mouseleave.bs.carousel",t=>this.cycle(t))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},e=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},s=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(t=>this.cycle(t),500+this._config.interval))};i.find(".carousel-item img",this._element).forEach(t=>{$.on(t,"dragstart.bs.carousel",t=>t.preventDefault())}),this._pointerEvent?($.on(this._element,"pointerdown.bs.carousel",e=>t(e)),$.on(this._element,"pointerup.bs.carousel",t=>s(t)),this._element.classList.add("pointer-event")):($.on(this._element,"touchstart.bs.carousel",e=>t(e)),$.on(this._element,"touchmove.bs.carousel",t=>e(t)),$.on(this._element,"touchend.bs.carousel",t=>s(t)))}_keydown(t){/input|textarea/i.test(t.target.tagName)||("ArrowLeft"===t.key?(t.preventDefault(),this._slide(Z)):"ArrowRight"===t.key&&(t.preventDefault(),this._slide(G)))}_getItemIndex(t){return this._items=t&&t.parentNode?i.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const s=t===X,i=t===Y,n=this._getItemIndex(e),o=this._items.length-1;if((i&&0===n||s&&n===o)&&!this._config.wrap)return e;const r=(n+(i?-1:1))%this._items.length;return-1===r?this._items[this._items.length-1]:this._items[r]}_triggerSlideEvent(t,e){const s=this._getItemIndex(t),n=this._getItemIndex(i.findOne(".active.carousel-item",this._element));return $.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:n,to:s})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=i.findOne(".active",this._indicatorsElement);e.classList.remove("active"),e.removeAttribute("aria-current");const s=i.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e<s.length;e++)if(Number.parseInt(s[e].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(t)){s[e].classList.add("active"),s[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||i.findOne(".active.carousel-item",this._element);if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-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}_slide(t,e){const s=this._directionToOrder(t),n=i.findOne(".active.carousel-item",this._element),o=this._getItemIndex(n),r=e||this._getItemByOrder(s,n),a=this._getItemIndex(r),l=Boolean(this._interval),c=s===X,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(s);if(r&&r.classList.contains("active"))return void(this._isSliding=!1);if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!n||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const g=()=>{$.trigger(this._element,"slid.bs.carousel",{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),b(r),n.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add("active"),n.classList.remove("active",d,h),this._isSliding=!1,setTimeout(g,0)};this._queueCallback(t,n,!0)}else n.classList.remove("active"),r.classList.add("active"),this._isSliding=!1,g();l&&this.cycle()}_directionToOrder(t){return[Z,G].includes(t)?y()?t===G?Y:X:t===G?X:Y:t}_orderToDirection(t){return[X,Y].includes(t)?y()?t===Y?G:Z:t===Y?Z:G:t}static carouselInterface(t,e){let s=A.get(t,"bs.carousel"),i={...V,...K.getDataAttributes(t)};"object"==typeof e&&(i={...i,...e});const n="string"==typeof e?e:i.slide;if(s||(s=new J(t,i)),"number"==typeof e)s.to(e);else if("string"==typeof n){if(void 0===s[n])throw new TypeError(`No method named "${n}"`);s[n]()}else i.interval&&i.ride&&(s.pause(),s.cycle())}static jQueryInterface(t){return this.each((function(){J.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=a(this);if(!e||!e.classList.contains("carousel"))return;const s={...K.getDataAttributes(e),...K.getDataAttributes(this)},i=this.getAttribute("data-bs-slide-to");i&&(s.interval=!1),J.carouselInterface(e,s),i&&A.get(e,"bs.carousel").to(i),t.preventDefault()}}$.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",J.dataApiClickHandler),$.on(window,"load.bs.carousel.data-api",()=>{const t=i.find('[data-bs-ride="carousel"]');for(let e=0,s=t.length;e<s;e++)J.carouselInterface(t[e],A.get(t[e],"bs.carousel"))}),w(J);const tt={toggle:!0,parent:""},et={toggle:"boolean",parent:"(string|element)"};class st extends z{constructor(t,e){super(t),this._isTransitioning=!1,this._config=this._getConfig(e),this._triggerArray=i.find(`[data-bs-toggle="collapse"][href="#${this._element.id}"],[data-bs-toggle="collapse"][data-bs-target="#${this._element.id}"]`);const s=i.find('[data-bs-toggle="collapse"]');for(let t=0,e=s.length;t<e;t++){const e=s[t],n=r(e),o=i.find(n).filter(t=>t===this._element);null!==n&&o.length&&(this._selector=n,this._triggerArray.push(e))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return tt}static get NAME(){return"collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let t,e;this._parent&&(t=i.find(".show, .collapsing",this._parent).filter(t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse")),0===t.length&&(t=null));const s=i.findOne(this._selector);if(t){const i=t.find(t=>s!==t);if(e=i?A.get(i,"bs.collapse"):null,e&&e._isTransitioning)return}if($.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach(t=>{s!==t&&st.collapseInterface(t,"hide"),e||A.set(t,"bs.collapse",null)});const n=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[n]=0,this._triggerArray.length&&this._triggerArray.forEach(t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)}),this.setTransitioning(!0);const o="scroll"+(n[0].toUpperCase()+n.slice(1));this._queueCallback(()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[n]="",this.setTransitioning(!1),$.trigger(this._element,"shown.bs.collapse")},this._element,!0),this._element.style[n]=this._element[o]+"px"}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if($.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=this._element.getBoundingClientRect()[t]+"px",b(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],s=a(e);s&&!s.classList.contains("show")&&(e.classList.add("collapsed"),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="",this._queueCallback(()=>{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),$.trigger(this._element,"hidden.bs.collapse")},this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...tt,...t}).toggle=Boolean(t.toggle),g("collapse",t,et),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:t}=this._config;t=d(t);const e=`[data-bs-toggle="collapse"][data-bs-parent="${t}"]`;return i.find(e,t).forEach(t=>{const e=a(t);this._addAriaAndCollapsedClass(e,[t])}),t}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const s=t.classList.contains("show");e.forEach(t=>{s?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",s)})}static collapseInterface(t,e){let s=A.get(t,"bs.collapse");const i={...tt,...K.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!s&&i.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(i.toggle=!1),s||(s=new st(t,i)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){st.collapseInterface(this,t)}))}}$.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=K.getDataAttributes(this),s=r(this);i.find(s).forEach(t=>{const s=A.get(t,"bs.collapse");let i;s?(null===s._parent&&"string"==typeof e.parent&&(s._config.parent=e.parent,s._parent=s._getParent()),i="toggle"):i=e,st.collapseInterface(t,i)})})),w(st);const it=new RegExp("ArrowUp|ArrowDown|Escape"),nt=y()?"top-end":"top-start",ot=y()?"top-start":"top-end",rt=y()?"bottom-end":"bottom-start",at=y()?"bottom-start":"bottom-end",lt=y()?"left-start":"right-start",ct=y()?"right-start":"left-start",ht={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},dt={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class ut extends z{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ht}static get DefaultType(){return dt}static get NAME(){return"dropdown"}toggle(){p(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(p(this._element)||this._menu.classList.contains("show"))return;const t=ut.getParentFromElement(this._element),e={relatedTarget:this._element};if(!$.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)K.setDataAttribute(this._menu,"popper","none");else{if(void 0===s)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:h(this._config.reference)?e=d(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find(t=>"applyStyles"===t.name&&!1===t.enabled);this._popper=s.createPopper(e,this._menu,i),n&&K.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach(t=>$.on(t,"mouseover",_)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),$.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(p(this._element)||!this._menu.classList.contains("show"))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){$.on(this._element,"click.bs.dropdown",t=>{t.preventDefault(),this.toggle()})}_completeHide(t){$.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>$.off(t,"mouseover",_)),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),K.removeDataAttribute(this._menu,"popper"),$.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...K.getDataAttributes(this._element),...t},g("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!h(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError("dropdown".toUpperCase()+': Option "reference" provided type "object" without a required "getBoundingClientRect" method.');return t}_getMenuElement(){return i.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return lt;if(t.classList.contains("dropstart"))return ct;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ot:nt:e?at:rt}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem(t){const e=i.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(f);if(!e.length)return;let s=e.indexOf(t.target);"ArrowUp"===t.key&&s>0&&s--,"ArrowDown"===t.key&&s<e.length-1&&s++,s=-1===s?0:s,e[s].focus()}static dropdownInterface(t,e){let s=A.get(t,"bs.dropdown");if(s||(s=new ut(t,"object"==typeof e?e:null)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){ut.dropdownInterface(this,t)}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const e=i.find('[data-bs-toggle="dropdown"]');for(let s=0,i=e.length;s<i;s++){const i=A.get(e[s],"bs.dropdown");if(!i||!1===i._config.autoClose)continue;if(!i._element.classList.contains("show"))continue;const n={relatedTarget:i._element};if(t){const e=t.composedPath(),s=e.includes(i._menu);if(e.includes(i._element)||"inside"===i._config.autoClose&&!s||"outside"===i._config.autoClose&&s)continue;if(i._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;"click"===t.type&&(n.clickEvent=t)}i._completeHide(n)}}static getParentFromElement(t){return a(t)||t.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?"Space"===t.key||"Escape"!==t.key&&("ArrowDown"!==t.key&&"ArrowUp"!==t.key||t.target.closest(".dropdown-menu")):!it.test(t.key))return;const e=this.classList.contains("show");if(!e&&"Escape"===t.key)return;if(t.preventDefault(),t.stopPropagation(),p(this))return;const s=()=>this.matches('[data-bs-toggle="dropdown"]')?this:i.prev(this,'[data-bs-toggle="dropdown"]')[0];if("Escape"===t.key)return s().focus(),void ut.clearMenus();e||"ArrowUp"!==t.key&&"ArrowDown"!==t.key?e&&"Space"!==t.key?ut.getInstance(s())._selectMenuItem(t):ut.clearMenus():s().click()}}$.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',ut.dataApiKeydownHandler),$.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",ut.dataApiKeydownHandler),$.on(document,"click.bs.dropdown.data-api",ut.clearMenus),$.on(document,"keyup.bs.dropdown.data-api",ut.clearMenus),$.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),ut.dropdownInterface(this)})),w(ut);const gt=()=>{const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)},ft=(t=gt())=>{pt(),mt("body","paddingRight",e=>e+t),mt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",e=>e+t),mt(".sticky-top","marginRight",e=>e-t)},pt=()=>{const t=document.body.style.overflow;t&&K.setDataAttribute(document.body,"overflow",t),document.body.style.overflow="hidden"},mt=(t,e,s)=>{const n=gt();i.find(t).forEach(t=>{if(t!==document.body&&window.innerWidth>t.clientWidth+n)return;const i=t.style[e],o=window.getComputedStyle(t)[e];K.setDataAttribute(t,e,i),t.style[e]=s(Number.parseFloat(o))+"px"})},_t=()=>{bt("body","overflow"),bt("body","paddingRight"),bt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),bt(".sticky-top","marginRight")},bt=(t,e)=>{i.find(t).forEach(t=>{const s=K.getDataAttribute(t,e);void 0===s?t.style.removeProperty(e):(K.removeDataAttribute(t,e),t.style[e]=s)})},vt={isVisible:!0,isAnimated:!1,rootElement:document.body,clickCallback:null},yt={isVisible:"boolean",isAnimated:"boolean",rootElement:"element",clickCallback:"(function|null)"};class wt{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&b(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation(()=>{E(t)})):E(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation(()=>{this.dispose(),E(t)})):E(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...vt,..."object"==typeof t?t:{}}).rootElement=t.rootElement||document.body,g("backdrop",t,yt),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),$.on(this._getElement(),"mousedown.bs.backdrop",()=>{E(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&($.off(this._element,"mousedown.bs.backdrop"),this._getElement().parentNode.removeChild(this._element),this._isAppended=!1)}_emulateAnimation(t){if(!this._config.isAnimated)return void E(t);const e=l(this._getElement());$.one(this._getElement(),"transitionend",()=>E(t)),u(this._getElement(),e)}}const Et={backdrop:!0,keyboard:!0,focus:!0},Tt={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class At extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=i.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1}static get Default(){return Et}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown||this._isTransitioning)return;this._isAnimated()&&(this._isTransitioning=!0);const e=$.trigger(this._element,"show.bs.modal",{relatedTarget:t});this._isShown||e.defaultPrevented||(this._isShown=!0,ft(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),$.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',t=>this.hide(t)),$.on(this._dialog,"mousedown.dismiss.bs.modal",()=>{$.one(this._element,"mouseup.dismiss.bs.modal",t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(t)))}hide(t){if(t&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if($.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),$.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),$.off(this._element,"click.dismiss.bs.modal"),$.off(this._dialog,"mousedown.dismiss.bs.modal"),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(t=>$.off(t,".bs.modal")),this._backdrop.dispose(),super.dispose(),$.off(document,"focusin.bs.modal")}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new wt({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...Et,...K.getDataAttributes(this._element),...t},g("modal",t,Tt),t}_showElement(t){const e=this._isAnimated(),s=i.findOne(".modal-body",this._dialog);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._element.setAttribute("role","dialog"),this._element.scrollTop=0,s&&(s.scrollTop=0),e&&b(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus(),this._queueCallback(()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,$.trigger(this._element,"shown.bs.modal",{relatedTarget:t})},this._dialog,e)}_enforceFocus(){$.off(document,"focusin.bs.modal"),$.on(document,"focusin.bs.modal",t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()})}_setEscapeEvent(){this._isShown?$.on(this._element,"keydown.dismiss.bs.modal",t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()}):$.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?$.on(window,"resize.bs.modal",()=>this._adjustDialog()):$.off(window,"resize.bs.modal")}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove("modal-open"),this._resetAdjustments(),_t(),$.trigger(this._element,"hidden.bs.modal")})}_showBackdrop(t){$.on(this._element,"click.dismiss.bs.modal",t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())}),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if($.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight;t||(this._element.style.overflowY="hidden"),this._element.classList.add("modal-static");const e=l(this._dialog);$.off(this._element,"transitionend"),$.one(this._element,"transitionend",()=>{this._element.classList.remove("modal-static"),t||($.one(this._element,"transitionend",()=>{this._element.style.overflowY=""}),u(this._element,e))}),u(this._element,e),this._element.focus()}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=gt(),s=e>0;(!s&&t&&!y()||s&&!t&&y())&&(this._element.style.paddingLeft=e+"px"),(s&&!t&&!y()||!s&&t&&y())&&(this._element.style.paddingRight=e+"px")}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const s=At.getInstance(this)||new At(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===s[t])throw new TypeError(`No method named "${t}"`);s[t](e)}}))}}$.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=a(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),$.one(e,"show.bs.modal",t=>{t.defaultPrevented||$.one(e,"hidden.bs.modal",()=>{f(this)&&this.focus()})}),(At.getInstance(e)||new At(e)).toggle(this)})),w(At);const kt={backdrop:!0,keyboard:!0,scroll:!1},Lt={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class Ct extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return"offcanvas"}static get Default(){return kt}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||$.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(ft(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show"),this._queueCallback(()=>{$.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})},this._element,!0))}hide(){this._isShown&&($.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||($.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),this._backdrop.hide(),this._queueCallback(()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||_t(),$.trigger(this._element,"hidden.bs.offcanvas")},this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),$.off(document,"focusin.bs.offcanvas")}_getConfig(t){return t={...kt,...K.getDataAttributes(this._element),..."object"==typeof t?t:{}},g("offcanvas",t,Lt),t}_initializeBackDrop(){return new wt({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){$.off(document,"focusin.bs.offcanvas"),$.on(document,"focusin.bs.offcanvas",e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()}),t.focus()}_addEventListeners(){$.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',()=>this.hide()),$.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()})}static jQueryInterface(t){return this.each((function(){const e=A.get(this,"bs.offcanvas")||new Ct(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}$.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=a(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),p(this))return;$.one(e,"hidden.bs.offcanvas",()=>{f(this)&&this.focus()});const s=i.findOne(".offcanvas.show");s&&s!==e&&Ct.getInstance(s).hide(),(A.get(e,"bs.offcanvas")||new Ct(e)).toggle(this)})),$.on(window,"load.bs.offcanvas.data-api",()=>{i.find(".offcanvas.show").forEach(t=>(A.get(t,"bs.offcanvas")||new Ct(t)).show())}),w(Ct);const Dt=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Nt=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,St=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Ot=(t,e)=>{const s=t.nodeName.toLowerCase();if(e.includes(s))return!Dt.has(s)||Boolean(Nt.test(t.nodeValue)||St.test(t.nodeValue));const i=e.filter(t=>t instanceof RegExp);for(let t=0,e=i.length;t<e;t++)if(i[t].test(s))return!0;return!1};function It(t,e,s){if(!t.length)return t;if(s&&"function"==typeof s)return s(t);const i=(new window.DOMParser).parseFromString(t,"text/html"),n=Object.keys(e),o=[].concat(...i.body.querySelectorAll("*"));for(let t=0,s=o.length;t<s;t++){const s=o[t],i=s.nodeName.toLowerCase();if(!n.includes(i)){s.parentNode.removeChild(s);continue}const r=[].concat(...s.attributes),a=[].concat(e["*"]||[],e[i]||[]);r.forEach(t=>{Ot(t,a)||s.removeAttribute(t.nodeName)})}return i.body.innerHTML}const xt=new RegExp("(^|\\s)bs-tooltip\\S+","g"),jt=new Set(["sanitize","allowList","sanitizeFn"]),Pt={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Mt={AUTO:"auto",TOP:"top",RIGHT:y()?"left":"right",BOTTOM:"bottom",LEFT:y()?"right":"left"},Ht={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,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},Rt={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"};class Bt extends z{constructor(t,e){if(void 0===s)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return Ht}static get NAME(){return"tooltip"}static get Event(){return Rt}static get DefaultType(){return Pt}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),$.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.parentNode&&this.tip.parentNode.removeChild(this.tip),this._popper&&this._popper.destroy(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=$.trigger(this._element,this.constructor.Event.SHOW),e=m(this._element),i=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!i)return;const o=this.getTipElement(),r=n(this.constructor.NAME);o.setAttribute("id",r),this._element.setAttribute("aria-describedby",r),this.setContent(),this._config.animation&&o.classList.add("fade");const a="function"==typeof this._config.placement?this._config.placement.call(this,o,this._element):this._config.placement,l=this._getAttachment(a);this._addAttachmentClass(l);const{container:c}=this._config;A.set(o,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(c.appendChild(o),$.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=s.createPopper(this._element,o,this._getPopperConfig(l)),o.classList.add("show");const h="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;h&&o.classList.add(...h.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>{$.on(t,"mouseover",_)});const d=this.tip.classList.contains("fade");this._queueCallback(()=>{const t=this._hoverState;this._hoverState=null,$.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)},this.tip,d)}hide(){if(!this._popper)return;const t=this.getTipElement();if($.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>$.off(t,"mouseover",_)),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains("fade");this._queueCallback(()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.parentNode&&t.parentNode.removeChild(t),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),$.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))},this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(i.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return h(e)?(e=d(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=It(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const s=this.constructor.DATA_KEY;return(e=e||A.get(t.delegateTarget,s))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),A.set(t.delegateTarget,s,e)),e}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add("bs-tooltip-"+this.updateAttachment(t))}_getAttachment(t){return Mt[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(t=>{if("click"===t)$.on(this._element,this.constructor.Event.CLICK,this._config.selector,t=>this.toggle(t));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,s="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;$.on(this._element,e,this._config.selector,t=>this._enter(t)),$.on(this._element,s,this._config.selector,t=>this._leave(t))}}),this._hideModalHandler=()=>{this._element&&this.hide()},$.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e._config.delay&&e._config.delay.show?e._timeout=setTimeout(()=>{"show"===e._hoverState&&e.show()},e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e._config.delay&&e._config.delay.hide?e._timeout=setTimeout(()=>{"out"===e._hoverState&&e.hide()},e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=K.getDataAttributes(this._element);return Object.keys(e).forEach(t=>{jt.has(t)&&delete e[t]}),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:d(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),g("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=It(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(xt);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.tooltip");const s="object"==typeof t&&t;if((e||!/dispose|hide/.test(t))&&(e||(e=new Bt(this,s)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}w(Bt);const $t=new RegExp("(^|\\s)bs-popover\\S+","g"),zt={...Bt.Default,placement:"right",offset:[0,8],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>'},Ut={...Bt.DefaultType,content:"(string|element|function)"},qt={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class Ft extends Bt{static get Default(){return zt}static get NAME(){return"popover"}static get Event(){return qt}static get DefaultType(){return Ut}isWithContent(){return this.getTitle()||this._getContent()}setContent(){const t=this.getTipElement();this.setElementContent(i.findOne(".popover-header",t),this.getTitle());let e=this._getContent();"function"==typeof e&&(e=e.call(this._element)),this.setElementContent(i.findOne(".popover-body",t),e),t.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add("bs-popover-"+this.updateAttachment(t))}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match($t);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.popover");const s="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new Ft(this,s),A.set(this,"bs.popover",e)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}w(Ft);const Wt={offset:10,method:"auto",target:""},Kt={offset:"number",method:"string",target:"(string|element)"};class Vt extends z{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,$.on(this._scrollElement,"scroll.bs.scrollspy",()=>this._process()),this.refresh(),this._process()}static get Default(){return Wt}static get NAME(){return"scrollspy"}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":"position",e="auto"===this._config.method?t:this._config.method,s="position"===e?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),i.find(this._selector).map(t=>{const n=r(t),o=n?i.findOne(n):null;if(o){const t=o.getBoundingClientRect();if(t.width||t.height)return[K[e](o).top+s,n]}return null}).filter(t=>t).sort((t,e)=>t[0]-e[0]).forEach(t=>{this._offsets.push(t[0]),this._targets.push(t[1])})}dispose(){$.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={...Wt,...K.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&h(t.target)){let{id:e}=t.target;e||(e=n("scrollspy"),t.target.id=e),t.target="#"+e}return g("scrollspy",t,Kt),t}_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 t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),s=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=s){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t<this._offsets[e+1])&&this._activate(this._targets[e])}}_activate(t){this._activeTarget=t,this._clear();const e=this._selector.split(",").map(e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`),s=i.findOne(e.join(","));s.classList.contains("dropdown-item")?(i.findOne(".dropdown-toggle",s.closest(".dropdown")).classList.add("active"),s.classList.add("active")):(s.classList.add("active"),i.parents(s,".nav, .list-group").forEach(t=>{i.prev(t,".nav-link, .list-group-item").forEach(t=>t.classList.add("active")),i.prev(t,".nav-item").forEach(t=>{i.children(t,".nav-link").forEach(t=>t.classList.add("active"))})})),$.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){i.find(this._selector).filter(t=>t.classList.contains("active")).forEach(t=>t.classList.remove("active"))}static jQueryInterface(t){return this.each((function(){const e=Vt.getInstance(this)||new Vt(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}$.on(window,"load.bs.scrollspy.data-api",()=>{i.find('[data-bs-spy="scroll"]').forEach(t=>new Vt(t))}),w(Vt);class Qt extends z{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let t;const e=a(this._element),s=this._element.closest(".nav, .list-group");if(s){const e="UL"===s.nodeName||"OL"===s.nodeName?":scope > li > .active":".active";t=i.find(e,s),t=t[t.length-1]}const n=t?$.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if($.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==n&&n.defaultPrevented)return;this._activate(this._element,s);const o=()=>{$.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),$.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,o):o()}_activate(t,e,s){const n=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?i.children(e,".active"):i.find(":scope > li > .active",e))[0],o=s&&n&&n.classList.contains("fade"),r=()=>this._transitionComplete(t,n,s);n&&o?(n.classList.remove("show"),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,e,s){if(e){e.classList.remove("active");const t=i.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),b(t),t.classList.contains("fade")&&t.classList.add("show");let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&i.find(".dropdown-toggle",e).forEach(t=>t.classList.add("active")),t.setAttribute("aria-expanded",!0)}s&&s()}static jQueryInterface(t){return this.each((function(){const e=A.get(this,"bs.tab")||new Qt(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}$.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),p(this)||(A.get(this,"bs.tab")||new Qt(this)).show()})),w(Qt);const Xt={animation:"boolean",autohide:"boolean",delay:"number"},Yt={animation:!0,autohide:!0,delay:5e3};class Gt extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Xt}static get Default(){return Yt}static get NAME(){return"toast"}show(){$.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove("hide"),b(this._element),this._element.classList.add("showing"),this._queueCallback(()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),$.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()},this._element,this._config.animation))}hide(){this._element.classList.contains("show")&&($.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove("show"),this._queueCallback(()=>{this._element.classList.add("hide"),$.trigger(this._element,"hidden.bs.toast")},this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose()}_getConfig(t){return t={...Yt,...K.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},g("toast",t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const s=t.relatedTarget;this._element===s||this._element.contains(s)||this._maybeScheduleHide()}_setListeners(){$.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',()=>this.hide()),$.on(this._element,"mouseover.bs.toast",t=>this._onInteraction(t,!0)),$.on(this._element,"mouseout.bs.toast",t=>this._onInteraction(t,!1)),$.on(this._element,"focusin.bs.toast",t=>this._onInteraction(t,!0)),$.on(this._element,"focusout.bs.toast",t=>this._onInteraction(t,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.toast");if(e||(e=new Gt(this,"object"==typeof t&&t)),"string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return w(Gt),{Alert:U,Button:q,Carousel:J,Collapse:st,Dropdown:ut,Modal:At,Offcanvas:Ct,Popover:Ft,ScrollSpy:Vt,Tab:Qt,Toast:Gt,Tooltip:Bt}})); | ||
//# sourceMappingURL=bootstrap.min.js.map |
/*! | ||
* Bootstrap alert.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap alert.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,6 +7,6 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.Data, global.EventHandler, global.Base)); | ||
}(this, (function (Data, EventHandler, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/data', './dom/event-handler', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.SelectorEngine, global.Data, global.EventHandler, global.Base)); | ||
}(this, (function (SelectorEngine, Data, EventHandler, BaseComponent) { 'use strict'; | ||
@@ -19,11 +19,2 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const getSelector = element => { | ||
@@ -58,47 +49,2 @@ let selector = element.getAttribute('data-bs-target'); | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
element.dispatchEvent(new Event(TRANSITION_END)); | ||
}; | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
}; | ||
const getjQuery = () => { | ||
@@ -124,3 +70,3 @@ const { | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -131,2 +77,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -146,3 +93,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): alert.js | ||
* Bootstrap (v5.0.1): alert.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -176,4 +123,4 @@ * -------------------------------------------------------------------------- | ||
// Getters | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -205,12 +152,5 @@ | ||
element.classList.remove(CLASS_NAME_SHOW); | ||
const isAnimated = element.classList.contains(CLASS_NAME_FADE); | ||
if (!element.classList.contains(CLASS_NAME_FADE)) { | ||
this._destroyElement(element); | ||
return; | ||
} | ||
const transitionDuration = getTransitionDurationFromElement(element); | ||
EventHandler__default['default'].one(element, 'transitionend', () => this._destroyElement(element)); | ||
emulateTransitionEnd(element, transitionDuration); | ||
this._queueCallback(() => this._destroyElement(element), element, isAnimated); | ||
} | ||
@@ -267,3 +207,3 @@ | ||
defineJQueryPlugin(NAME, Alert); | ||
defineJQueryPlugin(Alert); | ||
@@ -270,0 +210,0 @@ return Alert; |
/*! | ||
* Bootstrap base-component.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap base-component.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,6 +7,6 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Base = factory(global.Data, global.EventHandler)); | ||
}(this, (function (Data, EventHandler) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/selector-engine.js'), require('./dom/event-handler.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/selector-engine', './dom/event-handler'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Base = factory(global.Data, global.SelectorEngine, global.EventHandler)); | ||
}(this, (function (Data, SelectorEngine, EventHandler) { 'use strict'; | ||
@@ -16,7 +16,87 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
element.dispatchEvent(new Event(TRANSITION_END)); | ||
}; | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const getElement = obj => { | ||
if (isElement(obj)) { | ||
// it's a jQuery object or a node element | ||
return obj.jquery ? obj[0] : obj; | ||
} | ||
if (typeof obj === 'string' && obj.length > 0) { | ||
return SelectorEngine__default['default'].findOne(obj); | ||
} | ||
return null; | ||
}; | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
}; | ||
const execute = callback => { | ||
if (typeof callback === 'function') { | ||
callback(); | ||
} | ||
}; | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): base-component.js | ||
* Bootstrap (v5.0.1): base-component.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -31,7 +111,7 @@ * -------------------------------------------------------------------------- | ||
const VERSION = '5.0.0'; | ||
const VERSION = '5.0.1'; | ||
class BaseComponent { | ||
constructor(element) { | ||
element = typeof element === 'string' ? document.querySelector(element) : element; | ||
element = getElement(element); | ||
@@ -48,5 +128,18 @@ if (!element) { | ||
Data__default['default'].remove(this._element, this.constructor.DATA_KEY); | ||
EventHandler__default['default'].off(this._element, `.${this.constructor.DATA_KEY}`); | ||
this._element = null; | ||
EventHandler__default['default'].off(this._element, this.constructor.EVENT_KEY); | ||
Object.getOwnPropertyNames(this).forEach(propertyName => { | ||
this[propertyName] = null; | ||
}); | ||
} | ||
_queueCallback(callback, element, isAnimated = true) { | ||
if (!isAnimated) { | ||
execute(callback); | ||
return; | ||
} | ||
const transitionDuration = getTransitionDurationFromElement(element); | ||
EventHandler__default['default'].one(element, 'transitionend', () => execute(callback)); | ||
emulateTransitionEnd(element, transitionDuration); | ||
} | ||
/** Static */ | ||
@@ -63,2 +156,14 @@ | ||
static get NAME() { | ||
throw new Error('You have to implement the static method "NAME", for each component!'); | ||
} | ||
static get DATA_KEY() { | ||
return `bs.${this.NAME}`; | ||
} | ||
static get EVENT_KEY() { | ||
return `.${this.DATA_KEY}`; | ||
} | ||
} | ||
@@ -65,0 +170,0 @@ |
/*! | ||
* Bootstrap button.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap button.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,6 +7,6 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.Data, global.EventHandler, global.Base)); | ||
}(this, (function (Data, EventHandler, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/data', './dom/event-handler', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.SelectorEngine, global.Data, global.EventHandler, global.Base)); | ||
}(this, (function (SelectorEngine, Data, EventHandler, BaseComponent) { 'use strict'; | ||
@@ -19,9 +19,2 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const getjQuery = () => { | ||
@@ -47,3 +40,3 @@ const { | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -54,2 +47,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -69,3 +63,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): button.js | ||
* Bootstrap (v5.0.1): button.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -95,4 +89,4 @@ * -------------------------------------------------------------------------- | ||
// Getters | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -147,3 +141,3 @@ | ||
defineJQueryPlugin(NAME, Button); | ||
defineJQueryPlugin(Button); | ||
@@ -150,0 +144,0 @@ return Button; |
/*! | ||
* Bootstrap carousel.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap carousel.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,22 +7,15 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Carousel = factory(global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base)); | ||
}(this, (function (Data, EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/data', './dom/event-handler', './dom/manipulator', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Carousel = factory(global.SelectorEngine, global.Data, global.EventHandler, global.Manipulator, global.Base)); | ||
}(this, (function (SelectorEngine, Data, EventHandler, Manipulator, BaseComponent) { 'use strict'; | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
@@ -67,25 +60,2 @@ | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
@@ -95,20 +65,12 @@ element.dispatchEvent(new Event(TRANSITION_END)); | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
@@ -166,3 +128,3 @@ | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -173,2 +135,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -188,3 +151,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): carousel.js | ||
* Bootstrap (v5.0.1): carousel.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -290,4 +253,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -370,13 +333,2 @@ | ||
this._slide(order, this._items[index]); | ||
} | ||
dispose() { | ||
this._items = null; | ||
this._config = null; | ||
this._interval = null; | ||
this._isPaused = null; | ||
this._isSliding = null; | ||
this._activeElement = null; | ||
this._indicatorsElement = null; | ||
super.dispose(); | ||
} // Private | ||
@@ -610,2 +562,11 @@ | ||
const triggerSlidEvent = () => { | ||
EventHandler__default['default'].trigger(this._element, EVENT_SLID, { | ||
relatedTarget: nextElement, | ||
direction: eventDirectionName, | ||
from: activeElementIndex, | ||
to: nextElementIndex | ||
}); | ||
}; | ||
if (this._element.classList.contains(CLASS_NAME_SLIDE)) { | ||
@@ -616,4 +577,4 @@ nextElement.classList.add(orderClassName); | ||
nextElement.classList.add(directionalClassName); | ||
const transitionDuration = getTransitionDurationFromElement(activeElement); | ||
EventHandler__default['default'].one(activeElement, 'transitionend', () => { | ||
const completeCallBack = () => { | ||
nextElement.classList.remove(directionalClassName, orderClassName); | ||
@@ -623,12 +584,6 @@ nextElement.classList.add(CLASS_NAME_ACTIVE); | ||
this._isSliding = false; | ||
setTimeout(() => { | ||
EventHandler__default['default'].trigger(this._element, EVENT_SLID, { | ||
relatedTarget: nextElement, | ||
direction: eventDirectionName, | ||
from: activeElementIndex, | ||
to: nextElementIndex | ||
}); | ||
}, 0); | ||
}); | ||
emulateTransitionEnd(activeElement, transitionDuration); | ||
setTimeout(triggerSlidEvent, 0); | ||
}; | ||
this._queueCallback(completeCallBack, activeElement, true); | ||
} else { | ||
@@ -638,8 +593,3 @@ activeElement.classList.remove(CLASS_NAME_ACTIVE); | ||
this._isSliding = false; | ||
EventHandler__default['default'].trigger(this._element, EVENT_SLID, { | ||
relatedTarget: nextElement, | ||
direction: eventDirectionName, | ||
from: activeElementIndex, | ||
to: nextElementIndex | ||
}); | ||
triggerSlidEvent(); | ||
} | ||
@@ -763,3 +713,3 @@ | ||
defineJQueryPlugin(NAME, Carousel); | ||
defineJQueryPlugin(Carousel); | ||
@@ -766,0 +716,0 @@ return Carousel; |
/*! | ||
* Bootstrap collapse.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap collapse.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,24 +7,15 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Collapse = factory(global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base)); | ||
}(this, (function (Data, EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/data', './dom/event-handler', './dom/manipulator', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Collapse = factory(global.SelectorEngine, global.Data, global.EventHandler, global.Manipulator, global.Base)); | ||
}(this, (function (SelectorEngine, Data, EventHandler, Manipulator, BaseComponent) { 'use strict'; | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const toType = obj => { | ||
@@ -77,47 +68,25 @@ if (obj === null || obj === undefined) { | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
element.dispatchEvent(new Event(TRANSITION_END)); | ||
}; | ||
const getElement = obj => { | ||
if (isElement(obj)) { | ||
// it's a jQuery object or a node element | ||
return obj.jquery ? obj[0] : obj; | ||
} | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
if (typeof obj === 'string' && obj.length > 0) { | ||
return SelectorEngine__default['default'].findOne(obj); | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
return null; | ||
}; | ||
@@ -159,3 +128,3 @@ | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -166,2 +135,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -181,3 +151,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): collapse.js | ||
* Bootstrap (v5.0.1): collapse.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -259,4 +229,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -353,5 +323,5 @@ | ||
const scrollSize = `scroll${capitalizedDimension}`; | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', complete); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
this._queueCallback(complete, this._element, true); | ||
this._element.style[dimension] = `${this._element[scrollSize]}px`; | ||
@@ -407,5 +377,4 @@ } | ||
this._element.style[dimension] = ''; | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', complete); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
this._queueCallback(complete, this._element, true); | ||
} | ||
@@ -415,10 +384,2 @@ | ||
this._isTransitioning = isTransitioning; | ||
} | ||
dispose() { | ||
super.dispose(); | ||
this._config = null; | ||
this._parent = null; | ||
this._triggerArray = null; | ||
this._isTransitioning = null; | ||
} // Private | ||
@@ -445,12 +406,3 @@ | ||
} = this._config; | ||
if (isElement(parent)) { | ||
// it's a jQuery object | ||
if (typeof parent.jquery !== 'undefined' || typeof parent[0] !== 'undefined') { | ||
parent = parent[0]; | ||
} | ||
} else { | ||
parent = SelectorEngine__default['default'].findOne(parent); | ||
} | ||
parent = getElement(parent); | ||
const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent="${parent}"]`; | ||
@@ -556,3 +508,3 @@ SelectorEngine__default['default'].find(selector, parent).forEach(element => { | ||
defineJQueryPlugin(NAME, Collapse); | ||
defineJQueryPlugin(Collapse); | ||
@@ -559,0 +511,0 @@ return Collapse; |
/*! | ||
* Bootstrap data.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap data.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -14,3 +14,3 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/data.js | ||
* Bootstrap (v5.0.1): dom/data.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -17,0 +17,0 @@ * -------------------------------------------------------------------------- |
/*! | ||
* Bootstrap event-handler.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap event-handler.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -12,9 +12,2 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const getjQuery = () => { | ||
@@ -34,3 +27,3 @@ const { | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/event-handler.js | ||
* Bootstrap (v5.0.1): dom/event-handler.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -37,0 +30,0 @@ * -------------------------------------------------------------------------- |
/*! | ||
* Bootstrap manipulator.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap manipulator.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -14,3 +14,3 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/manipulator.js | ||
* Bootstrap (v5.0.1): dom/manipulator.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -17,0 +17,0 @@ * -------------------------------------------------------------------------- |
/*! | ||
* Bootstrap selector-engine.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap selector-engine.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -14,3 +14,3 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/selector-engine.js | ||
* Bootstrap (v5.0.1): dom/selector-engine.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -17,0 +17,0 @@ * -------------------------------------------------------------------------- |
/*! | ||
* Bootstrap dropdown.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap dropdown.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,6 +7,6 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@popperjs/core'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['@popperjs/core', './dom/data', './dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Dropdown = factory(global.Popper, global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base)); | ||
}(this, (function (Popper, Data, EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@popperjs/core'), require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['@popperjs/core', './dom/selector-engine', './dom/data', './dom/event-handler', './dom/manipulator', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Dropdown = factory(global.Popper, global.SelectorEngine, global.Data, global.EventHandler, global.Manipulator, global.Base)); | ||
}(this, (function (Popper, SelectorEngine, Data, EventHandler, Manipulator, BaseComponent) { 'use strict'; | ||
@@ -36,15 +36,8 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var Popper__namespace = /*#__PURE__*/_interopNamespace(Popper); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const toType = obj => { | ||
@@ -87,4 +80,27 @@ if (obj === null || obj === undefined) { | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const getElement = obj => { | ||
if (isElement(obj)) { | ||
// it's a jQuery object or a node element | ||
return obj.jquery ? obj[0] : obj; | ||
} | ||
if (typeof obj === 'string' && obj.length > 0) { | ||
return SelectorEngine__default['default'].findOne(obj); | ||
} | ||
return null; | ||
}; | ||
const typeCheckConfig = (componentName, config, configTypes) => { | ||
@@ -156,3 +172,3 @@ Object.keys(configTypes).forEach(property => { | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -163,2 +179,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -178,3 +195,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dropdown.js | ||
* Bootstrap (v5.0.1): dropdown.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -266,4 +283,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -315,7 +332,3 @@ | ||
} else if (isElement(this._config.reference)) { | ||
referenceElement = this._config.reference; // Check if it's jQuery element | ||
if (typeof this._config.reference.jquery !== 'undefined') { | ||
referenceElement = this._config.reference[0]; | ||
} | ||
referenceElement = getElement(this._config.reference); | ||
} else if (typeof this._config.reference === 'object') { | ||
@@ -367,8 +380,4 @@ referenceElement = this._config.reference; | ||
dispose() { | ||
this._menu = null; | ||
if (this._popper) { | ||
this._popper.destroy(); | ||
this._popper = null; | ||
} | ||
@@ -559,10 +568,4 @@ | ||
static clearMenus(event) { | ||
if (event) { | ||
if (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY) { | ||
return; | ||
} | ||
if (/input|select|option|textarea|form/i.test(event.target.tagName)) { | ||
return; | ||
} | ||
if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { | ||
return; | ||
} | ||
@@ -593,6 +596,6 @@ | ||
continue; | ||
} // Tab navigation through the dropdown menu shouldn't close the menu | ||
} // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu | ||
if (event.type === 'keyup' && event.key === TAB_KEY && context._menu.contains(event.target)) { | ||
if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { | ||
continue; | ||
@@ -683,3 +686,3 @@ } | ||
defineJQueryPlugin(NAME, Dropdown); | ||
defineJQueryPlugin(Dropdown); | ||
@@ -686,0 +689,0 @@ return Dropdown; |
/*! | ||
* Bootstrap modal.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap modal.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,20 +7,14 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Modal = factory(global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base)); | ||
}(this, (function (EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/event-handler', './dom/manipulator', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Modal = factory(global.SelectorEngine, global.EventHandler, global.Manipulator, global.Base)); | ||
}(this, (function (SelectorEngine, EventHandler, Manipulator, BaseComponent) { 'use strict'; | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
@@ -93,4 +87,14 @@ const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const emulateTransitionEnd = (element, duration) => { | ||
@@ -164,3 +168,3 @@ let called = false; | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -171,2 +175,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -192,3 +197,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/scrollBar.js | ||
* Bootstrap (v5.0.1): util/scrollBar.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -267,3 +272,3 @@ * -------------------------------------------------------------------------- | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/backdrop.js | ||
* Bootstrap (v5.0.1): util/backdrop.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
@@ -352,2 +357,3 @@ * -------------------------------------------------------------------------- | ||
}; | ||
config.rootElement = config.rootElement || document.body; | ||
typeCheckConfig(NAME$1, config, DefaultType$1); | ||
@@ -397,3 +403,3 @@ return config; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): modal.js | ||
* Bootstrap (v5.0.1): modal.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -465,4 +471,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -548,9 +554,3 @@ | ||
if (isAnimated) { | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', event => this._hideModal(event)); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
} else { | ||
this._hideModal(); | ||
} | ||
this._queueCallback(() => this._hideModal(), this._element, isAnimated); | ||
} | ||
@@ -560,2 +560,5 @@ | ||
[window, this._dialog].forEach(htmlElement => EventHandler__default['default'].off(htmlElement, EVENT_KEY)); | ||
this._backdrop.dispose(); | ||
super.dispose(); | ||
@@ -569,11 +572,2 @@ /** | ||
EventHandler__default['default'].off(document, EVENT_FOCUSIN); | ||
this._config = null; | ||
this._dialog = null; | ||
this._backdrop.dispose(); | ||
this._backdrop = null; | ||
this._isShown = null; | ||
this._ignoreBackdropClick = null; | ||
this._isTransitioning = null; | ||
} | ||
@@ -648,9 +642,3 @@ | ||
if (isAnimated) { | ||
const transitionDuration = getTransitionDurationFromElement(this._dialog); | ||
EventHandler__default['default'].one(this._dialog, 'transitionend', transitionComplete); | ||
emulateTransitionEnd(this._dialog, transitionDuration); | ||
} else { | ||
transitionComplete(); | ||
} | ||
this._queueCallback(transitionComplete, this._dialog, isAnimated); | ||
} | ||
@@ -845,3 +833,3 @@ | ||
defineJQueryPlugin(NAME, Modal); | ||
defineJQueryPlugin(Modal); | ||
@@ -848,0 +836,0 @@ return Modal; |
/*! | ||
* Bootstrap offcanvas.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap offcanvas.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -20,8 +20,2 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
@@ -94,4 +88,14 @@ const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const emulateTransitionEnd = (element, duration) => { | ||
@@ -179,3 +183,3 @@ let called = false; | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -186,2 +190,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -207,3 +212,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/scrollBar.js | ||
* Bootstrap (v5.0.1): util/scrollBar.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -282,3 +287,3 @@ * -------------------------------------------------------------------------- | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/backdrop.js | ||
* Bootstrap (v5.0.1): util/backdrop.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
@@ -367,2 +372,3 @@ * -------------------------------------------------------------------------- | ||
}; | ||
config.rootElement = config.rootElement || document.body; | ||
typeCheckConfig(NAME$1, config, DefaultType$1); | ||
@@ -412,3 +418,3 @@ return config; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): offcanvas.js | ||
* Bootstrap (v5.0.1): offcanvas.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
@@ -468,8 +474,8 @@ * -------------------------------------------------------------------------- | ||
static get NAME() { | ||
return NAME; | ||
} | ||
static get Default() { | ||
return Default; | ||
} | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
} // Public | ||
@@ -520,5 +526,3 @@ | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', completeCallBack); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
this._queueCallback(completeCallBack, this._element, true); | ||
} | ||
@@ -563,5 +567,3 @@ | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', completeCallback); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
this._queueCallback(completeCallback, this._element, true); | ||
} | ||
@@ -574,4 +576,2 @@ | ||
EventHandler__default['default'].off(document, EVENT_FOCUSIN); | ||
this._config = null; | ||
this._backdrop = null; | ||
} // Private | ||
@@ -679,3 +679,3 @@ | ||
defineJQueryPlugin(NAME, Offcanvas); | ||
defineJQueryPlugin(Offcanvas); | ||
@@ -682,0 +682,0 @@ return Offcanvas; |
/*! | ||
* Bootstrap popover.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap popover.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,20 +7,13 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/selector-engine.js'), require('./tooltip.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/selector-engine', './tooltip'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.Data, global.SelectorEngine, global.Tooltip)); | ||
}(this, (function (Data, SelectorEngine, Tooltip) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/data.js'), require('./tooltip.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/data', './tooltip'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.SelectorEngine, global.Data, global.Tooltip)); | ||
}(this, (function (SelectorEngine, Data, Tooltip) { 'use strict'; | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip); | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const getjQuery = () => { | ||
@@ -46,3 +39,3 @@ const { | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -53,2 +46,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -68,3 +62,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): popover.js | ||
* Bootstrap (v5.0.1): popover.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -126,6 +120,2 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
} | ||
static get Event() { | ||
@@ -135,6 +125,2 @@ return Event; | ||
static get EVENT_KEY() { | ||
return EVENT_KEY; | ||
} | ||
static get DefaultType() { | ||
@@ -170,3 +156,3 @@ return DefaultType; | ||
_getContent() { | ||
return this._element.getAttribute('data-bs-content') || this.config.content; | ||
return this._element.getAttribute('data-bs-content') || this._config.content; | ||
} | ||
@@ -218,3 +204,3 @@ | ||
defineJQueryPlugin(NAME, Popover); | ||
defineJQueryPlugin(Popover); | ||
@@ -221,0 +207,0 @@ return Popover; |
/*! | ||
* Bootstrap scrollspy.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap scrollspy.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,12 +7,12 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.ScrollSpy = factory(global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base)); | ||
}(this, (function (EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/event-handler', './dom/manipulator', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.ScrollSpy = factory(global.SelectorEngine, global.EventHandler, global.Manipulator, global.Base)); | ||
}(this, (function (SelectorEngine, EventHandler, Manipulator, BaseComponent) { 'use strict'; | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
@@ -22,6 +22,7 @@ | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Bootstrap (v5.0.1): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MAX_UID = 1000000; | ||
@@ -85,4 +86,14 @@ | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const typeCheckConfig = (componentName, config, configTypes) => { | ||
@@ -120,3 +131,3 @@ Object.keys(configTypes).forEach(property => { | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -127,2 +138,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -142,3 +154,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): scrollspy.js | ||
* Bootstrap (v5.0.1): scrollspy.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -208,4 +220,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -243,11 +255,4 @@ | ||
dispose() { | ||
EventHandler__default['default'].off(this._scrollElement, EVENT_KEY); | ||
super.dispose(); | ||
EventHandler__default['default'].off(this._scrollElement, EVENT_KEY); | ||
this._scrollElement = null; | ||
this._config = null; | ||
this._selector = null; | ||
this._offsets = null; | ||
this._targets = null; | ||
this._activeTarget = null; | ||
this._scrollHeight = null; | ||
} // Private | ||
@@ -399,3 +404,3 @@ | ||
defineJQueryPlugin(NAME, ScrollSpy); | ||
defineJQueryPlugin(ScrollSpy); | ||
@@ -402,0 +407,0 @@ return ScrollSpy; |
/*! | ||
* Bootstrap tab.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap tab.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,23 +7,14 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tab = factory(global.Data, global.EventHandler, global.SelectorEngine, global.Base)); | ||
}(this, (function (Data, EventHandler, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['./dom/selector-engine', './dom/data', './dom/event-handler', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tab = factory(global.SelectorEngine, global.Data, global.EventHandler, global.Base)); | ||
}(this, (function (SelectorEngine, Data, EventHandler, BaseComponent) { 'use strict'; | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const getSelector = element => { | ||
@@ -58,47 +49,2 @@ let selector = element.getAttribute('data-bs-target'); | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
element.dispatchEvent(new Event(TRANSITION_END)); | ||
}; | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
}; | ||
const isDisabled = element => { | ||
@@ -142,3 +88,3 @@ if (!element || element.nodeType !== Node.ELEMENT_NODE) { | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -149,2 +95,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -164,3 +111,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): tab.js | ||
* Bootstrap (v5.0.1): tab.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -203,4 +150,4 @@ * -------------------------------------------------------------------------- | ||
// Getters | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -263,6 +210,5 @@ | ||
if (active && isTransitioning) { | ||
const transitionDuration = getTransitionDurationFromElement(active); | ||
active.classList.remove(CLASS_NAME_SHOW); | ||
EventHandler__default['default'].one(active, 'transitionend', complete); | ||
emulateTransitionEnd(active, transitionDuration); | ||
this._queueCallback(complete, element, true); | ||
} else { | ||
@@ -362,3 +308,3 @@ complete(); | ||
defineJQueryPlugin(NAME, Tab); | ||
defineJQueryPlugin(Tab); | ||
@@ -365,0 +311,0 @@ return Tab; |
/*! | ||
* Bootstrap toast.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap toast.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -19,11 +19,2 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
const toType = obj => { | ||
@@ -37,47 +28,12 @@ if (obj === null || obj === undefined) { | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
element.dispatchEvent(new Event(TRANSITION_END)); | ||
}; | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
@@ -119,3 +75,3 @@ | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -126,2 +82,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -141,3 +98,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): toast.js | ||
* Bootstrap (v5.0.1): toast.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -156,2 +113,6 @@ * -------------------------------------------------------------------------- | ||
const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; | ||
const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; | ||
const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; | ||
const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; | ||
const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; | ||
const EVENT_HIDE = `hide${EVENT_KEY}`; | ||
@@ -187,2 +148,4 @@ const EVENT_HIDDEN = `hidden${EVENT_KEY}`; | ||
this._timeout = null; | ||
this._hasMouseInteraction = false; | ||
this._hasKeyboardInteraction = false; | ||
@@ -201,4 +164,4 @@ this._setListeners(); | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
static get NAME() { | ||
return NAME; | ||
} // Public | ||
@@ -227,7 +190,3 @@ | ||
if (this._config.autohide) { | ||
this._timeout = setTimeout(() => { | ||
this.hide(); | ||
}, this._config.delay); | ||
} | ||
this._maybeScheduleHide(); | ||
}; | ||
@@ -241,9 +200,3 @@ | ||
if (this._config.animation) { | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', complete); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
} else { | ||
complete(); | ||
} | ||
this._queueCallback(complete, this._element, this._config.animation); | ||
} | ||
@@ -270,9 +223,3 @@ | ||
if (this._config.animation) { | ||
const transitionDuration = getTransitionDurationFromElement(this._element); | ||
EventHandler__default['default'].one(this._element, 'transitionend', complete); | ||
emulateTransitionEnd(this._element, transitionDuration); | ||
} else { | ||
complete(); | ||
} | ||
this._queueCallback(complete, this._element, this._config.animation); | ||
} | ||
@@ -288,3 +235,2 @@ | ||
super.dispose(); | ||
this._config = null; | ||
} // Private | ||
@@ -302,4 +248,50 @@ | ||
_maybeScheduleHide() { | ||
if (!this._config.autohide) { | ||
return; | ||
} | ||
if (this._hasMouseInteraction || this._hasKeyboardInteraction) { | ||
return; | ||
} | ||
this._timeout = setTimeout(() => { | ||
this.hide(); | ||
}, this._config.delay); | ||
} | ||
_onInteraction(event, isInteracting) { | ||
switch (event.type) { | ||
case 'mouseover': | ||
case 'mouseout': | ||
this._hasMouseInteraction = isInteracting; | ||
break; | ||
case 'focusin': | ||
case 'focusout': | ||
this._hasKeyboardInteraction = isInteracting; | ||
break; | ||
} | ||
if (isInteracting) { | ||
this._clearTimeout(); | ||
return; | ||
} | ||
const nextElement = event.relatedTarget; | ||
if (this._element === nextElement || this._element.contains(nextElement)) { | ||
return; | ||
} | ||
this._maybeScheduleHide(); | ||
} | ||
_setListeners() { | ||
EventHandler__default['default'].on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); | ||
EventHandler__default['default'].on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); | ||
EventHandler__default['default'].on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); | ||
EventHandler__default['default'].on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); | ||
EventHandler__default['default'].on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); | ||
} | ||
@@ -342,3 +334,3 @@ | ||
defineJQueryPlugin(NAME, Toast); | ||
defineJQueryPlugin(Toast); | ||
@@ -345,0 +337,0 @@ return Toast; |
/*! | ||
* Bootstrap tooltip.js v5.0.0 (https://getbootstrap.com/) | ||
* Bootstrap tooltip.js v5.0.1 (https://getbootstrap.com/) | ||
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) | ||
@@ -7,6 +7,6 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@popperjs/core'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['@popperjs/core', './dom/data', './dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tooltip = factory(global.Popper, global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base)); | ||
}(this, (function (Popper, Data, EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@popperjs/core'), require('./dom/selector-engine.js'), require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) : | ||
typeof define === 'function' && define.amd ? define(['@popperjs/core', './dom/selector-engine', './dom/data', './dom/event-handler', './dom/manipulator', './base-component'], factory) : | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tooltip = factory(global.Popper, global.SelectorEngine, global.Data, global.EventHandler, global.Manipulator, global.Base)); | ||
}(this, (function (Popper, SelectorEngine, Data, EventHandler, Manipulator, BaseComponent) { 'use strict'; | ||
@@ -36,6 +36,6 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var Popper__namespace = /*#__PURE__*/_interopNamespace(Popper); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data); | ||
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler); | ||
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator); | ||
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine); | ||
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent); | ||
@@ -45,9 +45,8 @@ | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Bootstrap (v5.0.1): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
* -------------------------------------------------------------------------- | ||
*/ | ||
const MAX_UID = 1000000; | ||
const MILLISECONDS_MULTIPLIER = 1000; | ||
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) | ||
@@ -76,47 +75,25 @@ const toType = obj => { | ||
const getTransitionDurationFromElement = element => { | ||
if (!element) { | ||
return 0; | ||
} // Get transition-duration of the element | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false; | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0]; | ||
} | ||
let { | ||
transitionDuration, | ||
transitionDelay | ||
} = window.getComputedStyle(element); | ||
const floatTransitionDuration = Number.parseFloat(transitionDuration); | ||
const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found | ||
if (!floatTransitionDuration && !floatTransitionDelay) { | ||
return 0; | ||
} // If multiple durations are defined, take the first | ||
transitionDuration = transitionDuration.split(',')[0]; | ||
transitionDelay = transitionDelay.split(',')[0]; | ||
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; | ||
return typeof obj.nodeType !== 'undefined'; | ||
}; | ||
const triggerTransitionEnd = element => { | ||
element.dispatchEvent(new Event(TRANSITION_END)); | ||
}; | ||
const getElement = obj => { | ||
if (isElement(obj)) { | ||
// it's a jQuery object or a node element | ||
return obj.jquery ? obj[0] : obj; | ||
} | ||
const isElement = obj => (obj[0] || obj).nodeType; | ||
const emulateTransitionEnd = (element, duration) => { | ||
let called = false; | ||
const durationPadding = 5; | ||
const emulatedDuration = duration + durationPadding; | ||
function listener() { | ||
called = true; | ||
element.removeEventListener(TRANSITION_END, listener); | ||
if (typeof obj === 'string' && obj.length > 0) { | ||
return SelectorEngine__default['default'].findOne(obj); | ||
} | ||
element.addEventListener(TRANSITION_END, listener); | ||
setTimeout(() => { | ||
if (!called) { | ||
triggerTransitionEnd(element); | ||
} | ||
}, emulatedDuration); | ||
return null; | ||
}; | ||
@@ -183,3 +160,3 @@ | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -190,2 +167,3 @@ const $ = getjQuery(); | ||
if ($) { | ||
const name = plugin.NAME; | ||
const JQUERY_NO_CONFLICT = $.fn[name]; | ||
@@ -205,3 +183,3 @@ $.fn[name] = plugin.jQueryInterface; | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/sanitizer.js | ||
* Bootstrap (v5.0.1): util/sanitizer.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -319,3 +297,3 @@ * -------------------------------------------------------------------------- | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): tooltip.js | ||
* Bootstrap (v5.0.1): tooltip.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -381,3 +359,3 @@ * -------------------------------------------------------------------------- | ||
}; | ||
const Event$1 = { | ||
const Event = { | ||
HIDE: `hide${EVENT_KEY}`, | ||
@@ -424,3 +402,3 @@ HIDDEN: `hidden${EVENT_KEY}`, | ||
this.config = this._getConfig(config); | ||
this._config = this._getConfig(config); | ||
this.tip = null; | ||
@@ -440,14 +418,6 @@ | ||
static get DATA_KEY() { | ||
return DATA_KEY; | ||
} | ||
static get Event() { | ||
return Event$1; | ||
return Event; | ||
} | ||
static get EVENT_KEY() { | ||
return EVENT_KEY; | ||
} | ||
static get DefaultType() { | ||
@@ -504,7 +474,2 @@ return DefaultType; | ||
this._isEnabled = null; | ||
this._timeout = null; | ||
this._hoverState = null; | ||
this._activeTrigger = null; | ||
if (this._popper) { | ||
@@ -514,5 +479,2 @@ this._popper.destroy(); | ||
this._popper = null; | ||
this.config = null; | ||
this.tip = null; | ||
super.dispose(); | ||
@@ -546,7 +508,7 @@ } | ||
if (this.config.animation) { | ||
if (this._config.animation) { | ||
tip.classList.add(CLASS_NAME_FADE); | ||
} | ||
const placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this._element) : this.config.placement; | ||
const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; | ||
@@ -557,4 +519,5 @@ const attachment = this._getAttachment(placement); | ||
const container = this._getContainer(); | ||
const { | ||
container | ||
} = this._config; | ||
Data__default['default'].set(tip, this.constructor.DATA_KEY, this); | ||
@@ -574,3 +537,3 @@ | ||
tip.classList.add(CLASS_NAME_SHOW); | ||
const customClass = typeof this.config.customClass === 'function' ? this.config.customClass() : this.config.customClass; | ||
const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; | ||
@@ -601,9 +564,5 @@ if (customClass) { | ||
if (this.tip.classList.contains(CLASS_NAME_FADE)) { | ||
const transitionDuration = getTransitionDurationFromElement(this.tip); | ||
EventHandler__default['default'].one(this.tip, 'transitionend', complete); | ||
emulateTransitionEnd(this.tip, transitionDuration); | ||
} else { | ||
complete(); | ||
} | ||
const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE); | ||
this._queueCallback(complete, this.tip, isAnimated); | ||
} | ||
@@ -656,10 +615,5 @@ | ||
this._activeTrigger[TRIGGER_HOVER] = false; | ||
const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE); | ||
if (this.tip.classList.contains(CLASS_NAME_FADE)) { | ||
const transitionDuration = getTransitionDurationFromElement(tip); | ||
EventHandler__default['default'].one(tip, 'transitionend', complete); | ||
emulateTransitionEnd(tip, transitionDuration); | ||
} else { | ||
complete(); | ||
} | ||
this._queueCallback(complete, this.tip, isAnimated); | ||
@@ -686,3 +640,3 @@ this._hoverState = ''; | ||
const element = document.createElement('div'); | ||
element.innerHTML = this.config.template; | ||
element.innerHTML = this._config.template; | ||
this.tip = element.children[0]; | ||
@@ -703,9 +657,6 @@ return this.tip; | ||
if (typeof content === 'object' && isElement(content)) { | ||
if (content.jquery) { | ||
content = content[0]; | ||
} // content is a DOM node or a jQuery | ||
if (isElement(content)) { | ||
content = getElement(content); // content is a DOM node or a jQuery | ||
if (this.config.html) { | ||
if (this._config.html) { | ||
if (content.parentNode !== element) { | ||
@@ -722,5 +673,5 @@ element.innerHTML = ''; | ||
if (this.config.html) { | ||
if (this.config.sanitize) { | ||
content = sanitizeHtml(content, this.config.allowList, this.config.sanitizeFn); | ||
if (this._config.html) { | ||
if (this._config.sanitize) { | ||
content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); | ||
} | ||
@@ -738,3 +689,3 @@ | ||
if (!title) { | ||
title = typeof this.config.title === 'function' ? this.config.title.call(this._element) : this.config.title; | ||
title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; | ||
} | ||
@@ -773,3 +724,3 @@ | ||
offset | ||
} = this.config; | ||
} = this._config; | ||
@@ -793,3 +744,3 @@ if (typeof offset === 'string') { | ||
options: { | ||
fallbackPlacements: this.config.fallbackPlacements | ||
fallbackPlacements: this._config.fallbackPlacements | ||
} | ||
@@ -804,3 +755,3 @@ }, { | ||
options: { | ||
boundary: this.config.boundary | ||
boundary: this._config.boundary | ||
} | ||
@@ -825,3 +776,3 @@ }, { | ||
return { ...defaultBsPopperConfig, | ||
...(typeof this.config.popperConfig === 'function' ? this.config.popperConfig(defaultBsPopperConfig) : this.config.popperConfig) | ||
...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) | ||
}; | ||
@@ -834,14 +785,2 @@ } | ||
_getContainer() { | ||
if (this.config.container === false) { | ||
return document.body; | ||
} | ||
if (isElement(this.config.container)) { | ||
return this.config.container; | ||
} | ||
return SelectorEngine__default['default'].findOne(this.config.container); | ||
} | ||
_getAttachment(placement) { | ||
@@ -852,11 +791,12 @@ return AttachmentMap[placement.toUpperCase()]; | ||
_setListeners() { | ||
const triggers = this.config.trigger.split(' '); | ||
const triggers = this._config.trigger.split(' '); | ||
triggers.forEach(trigger => { | ||
if (trigger === 'click') { | ||
EventHandler__default['default'].on(this._element, this.constructor.Event.CLICK, this.config.selector, event => this.toggle(event)); | ||
EventHandler__default['default'].on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); | ||
} else if (trigger !== TRIGGER_MANUAL) { | ||
const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; | ||
const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; | ||
EventHandler__default['default'].on(this._element, eventIn, this.config.selector, event => this._enter(event)); | ||
EventHandler__default['default'].on(this._element, eventOut, this.config.selector, event => this._leave(event)); | ||
EventHandler__default['default'].on(this._element, eventIn, this._config.selector, event => this._enter(event)); | ||
EventHandler__default['default'].on(this._element, eventOut, this._config.selector, event => this._leave(event)); | ||
} | ||
@@ -873,4 +813,4 @@ }); | ||
if (this.config.selector) { | ||
this.config = { ...this.config, | ||
if (this._config.selector) { | ||
this._config = { ...this._config, | ||
trigger: 'manual', | ||
@@ -915,3 +855,3 @@ selector: '' | ||
if (!context.config.delay || !context.config.delay.show) { | ||
if (!context._config.delay || !context._config.delay.show) { | ||
context.show(); | ||
@@ -925,3 +865,3 @@ return; | ||
} | ||
}, context.config.delay.show); | ||
}, context._config.delay.show); | ||
} | ||
@@ -943,3 +883,3 @@ | ||
if (!context.config.delay || !context.config.delay.hide) { | ||
if (!context._config.delay || !context._config.delay.hide) { | ||
context.hide(); | ||
@@ -953,3 +893,3 @@ return; | ||
} | ||
}, context.config.delay.hide); | ||
}, context._config.delay.hide); | ||
} | ||
@@ -974,7 +914,2 @@ | ||
}); | ||
if (config && typeof config.container === 'object' && config.container.jquery) { | ||
config.container = config.container[0]; | ||
} | ||
config = { ...this.constructor.Default, | ||
@@ -984,2 +919,3 @@ ...dataAttributes, | ||
}; | ||
config.container = config.container === false ? document.body : getElement(config.container); | ||
@@ -1013,6 +949,6 @@ if (typeof config.delay === 'number') { | ||
if (this.config) { | ||
for (const key in this.config) { | ||
if (this.constructor.Default[key] !== this.config[key]) { | ||
config[key] = this.config[key]; | ||
if (this._config) { | ||
for (const key in this._config) { | ||
if (this.constructor.Default[key] !== this._config[key]) { | ||
config[key] = this._config[key]; | ||
} | ||
@@ -1084,3 +1020,3 @@ } | ||
defineJQueryPlugin(NAME, Tooltip); | ||
defineJQueryPlugin(Tooltip); | ||
@@ -1087,0 +1023,0 @@ return Tooltip; |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): alert.js | ||
* Bootstrap (v5.0.1): alert.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -10,5 +10,3 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
getElementFromSelector, | ||
getTransitionDurationFromElement | ||
getElementFromSelector | ||
} from './util/index' | ||
@@ -49,4 +47,4 @@ import Data from './dom/data' | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -80,11 +78,4 @@ | ||
if (!element.classList.contains(CLASS_NAME_FADE)) { | ||
this._destroyElement(element) | ||
return | ||
} | ||
const transitionDuration = getTransitionDurationFromElement(element) | ||
EventHandler.one(element, 'transitionend', () => this._destroyElement(element)) | ||
emulateTransitionEnd(element, transitionDuration) | ||
const isAnimated = element.classList.contains(CLASS_NAME_FADE) | ||
this._queueCallback(() => this._destroyElement(element), element, isAnimated) | ||
} | ||
@@ -142,4 +133,4 @@ | ||
defineJQueryPlugin(NAME, Alert) | ||
defineJQueryPlugin(Alert) | ||
export default Alert |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): base-component.js | ||
* Bootstrap (v5.0.1): base-component.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -9,2 +9,8 @@ * -------------------------------------------------------------------------- | ||
import Data from './dom/data' | ||
import { | ||
emulateTransitionEnd, | ||
execute, | ||
getElement, | ||
getTransitionDurationFromElement | ||
} from './util/index' | ||
import EventHandler from './dom/event-handler' | ||
@@ -18,7 +24,7 @@ | ||
const VERSION = '5.0.0' | ||
const VERSION = '5.0.1' | ||
class BaseComponent { | ||
constructor(element) { | ||
element = typeof element === 'string' ? document.querySelector(element) : element | ||
element = getElement(element) | ||
@@ -35,6 +41,21 @@ if (!element) { | ||
Data.remove(this._element, this.constructor.DATA_KEY) | ||
EventHandler.off(this._element, `.${this.constructor.DATA_KEY}`) | ||
this._element = null | ||
EventHandler.off(this._element, this.constructor.EVENT_KEY) | ||
Object.getOwnPropertyNames(this).forEach(propertyName => { | ||
this[propertyName] = null | ||
}) | ||
} | ||
_queueCallback(callback, element, isAnimated = true) { | ||
if (!isAnimated) { | ||
execute(callback) | ||
return | ||
} | ||
const transitionDuration = getTransitionDurationFromElement(element) | ||
EventHandler.one(element, 'transitionend', () => execute(callback)) | ||
emulateTransitionEnd(element, transitionDuration) | ||
} | ||
/** Static */ | ||
@@ -49,4 +70,16 @@ | ||
} | ||
static get NAME() { | ||
throw new Error('You have to implement the static method "NAME", for each component!') | ||
} | ||
static get DATA_KEY() { | ||
return `bs.${this.NAME}` | ||
} | ||
static get EVENT_KEY() { | ||
return `.${this.DATA_KEY}` | ||
} | ||
} | ||
export default BaseComponent |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): button.js | ||
* Bootstrap (v5.0.1): button.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -39,4 +39,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -94,4 +94,4 @@ | ||
defineJQueryPlugin(NAME, Button) | ||
defineJQueryPlugin(Button) | ||
export default Button |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): carousel.js | ||
* Bootstrap (v5.0.1): carousel.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -10,5 +10,3 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
getElementFromSelector, | ||
getTransitionDurationFromElement, | ||
isRTL, | ||
@@ -133,4 +131,4 @@ isVisible, | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -220,14 +218,2 @@ | ||
dispose() { | ||
this._items = null | ||
this._config = null | ||
this._interval = null | ||
this._isPaused = null | ||
this._isSliding = null | ||
this._activeElement = null | ||
this._indicatorsElement = null | ||
super.dispose() | ||
} | ||
// Private | ||
@@ -460,2 +446,11 @@ | ||
const triggerSlidEvent = () => { | ||
EventHandler.trigger(this._element, EVENT_SLID, { | ||
relatedTarget: nextElement, | ||
direction: eventDirectionName, | ||
from: activeElementIndex, | ||
to: nextElementIndex | ||
}) | ||
} | ||
if (this._element.classList.contains(CLASS_NAME_SLIDE)) { | ||
@@ -469,5 +464,3 @@ nextElement.classList.add(orderClassName) | ||
const transitionDuration = getTransitionDurationFromElement(activeElement) | ||
EventHandler.one(activeElement, 'transitionend', () => { | ||
const completeCallBack = () => { | ||
nextElement.classList.remove(directionalClassName, orderClassName) | ||
@@ -480,13 +473,6 @@ nextElement.classList.add(CLASS_NAME_ACTIVE) | ||
setTimeout(() => { | ||
EventHandler.trigger(this._element, EVENT_SLID, { | ||
relatedTarget: nextElement, | ||
direction: eventDirectionName, | ||
from: activeElementIndex, | ||
to: nextElementIndex | ||
}) | ||
}, 0) | ||
}) | ||
setTimeout(triggerSlidEvent, 0) | ||
} | ||
emulateTransitionEnd(activeElement, transitionDuration) | ||
this._queueCallback(completeCallBack, activeElement, true) | ||
} else { | ||
@@ -497,8 +483,3 @@ activeElement.classList.remove(CLASS_NAME_ACTIVE) | ||
this._isSliding = false | ||
EventHandler.trigger(this._element, EVENT_SLID, { | ||
relatedTarget: nextElement, | ||
direction: eventDirectionName, | ||
from: activeElementIndex, | ||
to: nextElementIndex | ||
}) | ||
triggerSlidEvent() | ||
} | ||
@@ -627,4 +608,4 @@ | ||
defineJQueryPlugin(NAME, Carousel) | ||
defineJQueryPlugin(Carousel) | ||
export default Carousel |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): collapse.js | ||
* Bootstrap (v5.0.1): collapse.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -10,7 +10,5 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
getElement, | ||
getSelectorFromElement, | ||
getElementFromSelector, | ||
getTransitionDurationFromElement, | ||
isElement, | ||
reflow, | ||
@@ -111,4 +109,4 @@ typeCheckConfig | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -205,7 +203,4 @@ | ||
const scrollSize = `scroll${capitalizedDimension}` | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', complete) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
this._queueCallback(complete, this._element, true) | ||
this._element.style[dimension] = `${this._element[scrollSize]}px` | ||
@@ -256,6 +251,4 @@ } | ||
this._element.style[dimension] = '' | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', complete) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
this._queueCallback(complete, this._element, true) | ||
} | ||
@@ -267,10 +260,2 @@ | ||
dispose() { | ||
super.dispose() | ||
this._config = null | ||
this._parent = null | ||
this._triggerArray = null | ||
this._isTransitioning = null | ||
} | ||
// Private | ||
@@ -295,10 +280,3 @@ | ||
if (isElement(parent)) { | ||
// it's a jQuery object | ||
if (typeof parent.jquery !== 'undefined' || typeof parent[0] !== 'undefined') { | ||
parent = parent[0] | ||
} | ||
} else { | ||
parent = SelectorEngine.findOne(parent) | ||
} | ||
parent = getElement(parent) | ||
@@ -414,4 +392,4 @@ const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent="${parent}"]` | ||
defineJQueryPlugin(NAME, Collapse) | ||
defineJQueryPlugin(Collapse) | ||
export default Collapse |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/data.js | ||
* Bootstrap (v5.0.1): dom/data.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -5,0 +5,0 @@ * -------------------------------------------------------------------------- |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/event-handler.js | ||
* Bootstrap (v5.0.1): dom/event-handler.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -5,0 +5,0 @@ * -------------------------------------------------------------------------- |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/manipulator.js | ||
* Bootstrap (v5.0.1): dom/manipulator.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -5,0 +5,0 @@ * -------------------------------------------------------------------------- |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dom/selector-engine.js | ||
* Bootstrap (v5.0.1): dom/selector-engine.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -5,0 +5,0 @@ * -------------------------------------------------------------------------- |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): dropdown.js | ||
* Bootstrap (v5.0.1): dropdown.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -12,2 +12,3 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
getElement, | ||
getElementFromSelector, | ||
@@ -120,4 +121,4 @@ isDisabled, | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -171,8 +172,3 @@ | ||
} else if (isElement(this._config.reference)) { | ||
referenceElement = this._config.reference | ||
// Check if it's jQuery element | ||
if (typeof this._config.reference.jquery !== 'undefined') { | ||
referenceElement = this._config.reference[0] | ||
} | ||
referenceElement = getElement(this._config.reference) | ||
} else if (typeof this._config.reference === 'object') { | ||
@@ -223,7 +219,4 @@ referenceElement = this._config.reference | ||
dispose() { | ||
this._menu = null | ||
if (this._popper) { | ||
this._popper.destroy() | ||
this._popper = null | ||
} | ||
@@ -418,10 +411,4 @@ | ||
static clearMenus(event) { | ||
if (event) { | ||
if (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY)) { | ||
return | ||
} | ||
if (/input|select|option|textarea|form/i.test(event.target.tagName)) { | ||
return | ||
} | ||
if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) { | ||
return | ||
} | ||
@@ -456,4 +443,4 @@ | ||
// Tab navigation through the dropdown menu shouldn't close the menu | ||
if (event.type === 'keyup' && event.key === TAB_KEY && context._menu.contains(event.target)) { | ||
// Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu | ||
if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) { | ||
continue | ||
@@ -548,4 +535,4 @@ } | ||
defineJQueryPlugin(NAME, Dropdown) | ||
defineJQueryPlugin(Dropdown) | ||
export default Dropdown |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): modal.js | ||
* Bootstrap (v5.0.1): modal.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -96,4 +96,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -180,10 +180,3 @@ | ||
if (isAnimated) { | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', event => this._hideModal(event)) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
} else { | ||
this._hideModal() | ||
} | ||
this._queueCallback(() => this._hideModal(), this._element, isAnimated) | ||
} | ||
@@ -195,2 +188,3 @@ | ||
this._backdrop.dispose() | ||
super.dispose() | ||
@@ -204,10 +198,2 @@ | ||
EventHandler.off(document, EVENT_FOCUSIN) | ||
this._config = null | ||
this._dialog = null | ||
this._backdrop.dispose() | ||
this._backdrop = null | ||
this._isShown = null | ||
this._ignoreBackdropClick = null | ||
this._isTransitioning = null | ||
} | ||
@@ -278,10 +264,3 @@ | ||
if (isAnimated) { | ||
const transitionDuration = getTransitionDurationFromElement(this._dialog) | ||
EventHandler.one(this._dialog, 'transitionend', transitionComplete) | ||
emulateTransitionEnd(this._dialog, transitionDuration) | ||
} else { | ||
transitionComplete() | ||
} | ||
this._queueCallback(transitionComplete, this._dialog, isAnimated) | ||
} | ||
@@ -470,4 +449,4 @@ | ||
defineJQueryPlugin(NAME, Modal) | ||
defineJQueryPlugin(Modal) | ||
export default Modal |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): offcanvas.js | ||
* Bootstrap (v5.0.1): offcanvas.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
@@ -10,5 +10,3 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
getElementFromSelector, | ||
getTransitionDurationFromElement, | ||
isDisabled, | ||
@@ -84,2 +82,6 @@ isVisible, | ||
static get NAME() { | ||
return NAME | ||
} | ||
static get Default() { | ||
@@ -89,6 +91,2 @@ return Default | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
} | ||
// Public | ||
@@ -130,5 +128,3 @@ | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', completeCallBack) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
this._queueCallback(completeCallBack, this._element, true) | ||
} | ||
@@ -166,5 +162,3 @@ | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', completeCallback) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
this._queueCallback(completeCallback, this._element, true) | ||
} | ||
@@ -176,5 +170,2 @@ | ||
EventHandler.off(document, EVENT_FOCUSIN) | ||
this._config = null | ||
this._backdrop = null | ||
} | ||
@@ -289,4 +280,4 @@ | ||
defineJQueryPlugin(NAME, Offcanvas) | ||
defineJQueryPlugin(Offcanvas) | ||
export default Offcanvas |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): popover.js | ||
* Bootstrap (v5.0.1): popover.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -79,6 +79,2 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
} | ||
static get Event() { | ||
@@ -88,6 +84,2 @@ return Event | ||
static get EVENT_KEY() { | ||
return EVENT_KEY | ||
} | ||
static get DefaultType() { | ||
@@ -125,3 +117,3 @@ return DefaultType | ||
_getContent() { | ||
return this._element.getAttribute('data-bs-content') || this.config.content | ||
return this._element.getAttribute('data-bs-content') || this._config.content | ||
} | ||
@@ -172,4 +164,4 @@ | ||
defineJQueryPlugin(NAME, Popover) | ||
defineJQueryPlugin(Popover) | ||
export default Popover |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): scrollspy.js | ||
* Bootstrap (v5.0.1): scrollspy.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -90,4 +90,4 @@ * -------------------------------------------------------------------------- | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -141,12 +141,4 @@ | ||
dispose() { | ||
EventHandler.off(this._scrollElement, EVENT_KEY) | ||
super.dispose() | ||
EventHandler.off(this._scrollElement, EVENT_KEY) | ||
this._scrollElement = null | ||
this._config = null | ||
this._selector = null | ||
this._offsets = null | ||
this._targets = null | ||
this._activeTarget = null | ||
this._scrollHeight = null | ||
} | ||
@@ -316,4 +308,4 @@ | ||
defineJQueryPlugin(NAME, ScrollSpy) | ||
defineJQueryPlugin(ScrollSpy) | ||
export default ScrollSpy |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): tab.js | ||
* Bootstrap (v5.0.1): tab.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -10,5 +10,3 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
getElementFromSelector, | ||
getTransitionDurationFromElement, | ||
isDisabled, | ||
@@ -61,4 +59,4 @@ reflow | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -130,7 +128,4 @@ | ||
if (active && isTransitioning) { | ||
const transitionDuration = getTransitionDurationFromElement(active) | ||
active.classList.remove(CLASS_NAME_SHOW) | ||
EventHandler.one(active, 'transitionend', complete) | ||
emulateTransitionEnd(active, transitionDuration) | ||
this._queueCallback(complete, element, true) | ||
} else { | ||
@@ -231,4 +226,4 @@ complete() | ||
defineJQueryPlugin(NAME, Tab) | ||
defineJQueryPlugin(Tab) | ||
export default Tab |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): toast.js | ||
* Bootstrap (v5.0.1): toast.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -10,4 +10,2 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
getTransitionDurationFromElement, | ||
reflow, | ||
@@ -32,2 +30,6 @@ typeCheckConfig | ||
const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}` | ||
const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}` | ||
const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}` | ||
const EVENT_FOCUSIN = `focusin${EVENT_KEY}` | ||
const EVENT_FOCUSOUT = `focusout${EVENT_KEY}` | ||
const EVENT_HIDE = `hide${EVENT_KEY}` | ||
@@ -69,2 +71,4 @@ const EVENT_HIDDEN = `hidden${EVENT_KEY}` | ||
this._timeout = null | ||
this._hasMouseInteraction = false | ||
this._hasKeyboardInteraction = false | ||
this._setListeners() | ||
@@ -83,4 +87,4 @@ } | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
static get NAME() { | ||
return NAME | ||
} | ||
@@ -109,7 +113,3 @@ | ||
if (this._config.autohide) { | ||
this._timeout = setTimeout(() => { | ||
this.hide() | ||
}, this._config.delay) | ||
} | ||
this._maybeScheduleHide() | ||
} | ||
@@ -120,10 +120,4 @@ | ||
this._element.classList.add(CLASS_NAME_SHOWING) | ||
if (this._config.animation) { | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', complete) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
} else { | ||
complete() | ||
} | ||
this._queueCallback(complete, this._element, this._config.animation) | ||
} | ||
@@ -148,10 +142,3 @@ | ||
this._element.classList.remove(CLASS_NAME_SHOW) | ||
if (this._config.animation) { | ||
const transitionDuration = getTransitionDurationFromElement(this._element) | ||
EventHandler.one(this._element, 'transitionend', complete) | ||
emulateTransitionEnd(this._element, transitionDuration) | ||
} else { | ||
complete() | ||
} | ||
this._queueCallback(complete, this._element, this._config.animation) | ||
} | ||
@@ -167,3 +154,2 @@ | ||
super.dispose() | ||
this._config = null | ||
} | ||
@@ -185,4 +171,49 @@ | ||
_maybeScheduleHide() { | ||
if (!this._config.autohide) { | ||
return | ||
} | ||
if (this._hasMouseInteraction || this._hasKeyboardInteraction) { | ||
return | ||
} | ||
this._timeout = setTimeout(() => { | ||
this.hide() | ||
}, this._config.delay) | ||
} | ||
_onInteraction(event, isInteracting) { | ||
switch (event.type) { | ||
case 'mouseover': | ||
case 'mouseout': | ||
this._hasMouseInteraction = isInteracting | ||
break | ||
case 'focusin': | ||
case 'focusout': | ||
this._hasKeyboardInteraction = isInteracting | ||
break | ||
default: | ||
break | ||
} | ||
if (isInteracting) { | ||
this._clearTimeout() | ||
return | ||
} | ||
const nextElement = event.relatedTarget | ||
if (this._element === nextElement || this._element.contains(nextElement)) { | ||
return | ||
} | ||
this._maybeScheduleHide() | ||
} | ||
_setListeners() { | ||
EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()) | ||
EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)) | ||
EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)) | ||
EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)) | ||
EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)) | ||
} | ||
@@ -224,4 +255,4 @@ | ||
defineJQueryPlugin(NAME, Toast) | ||
defineJQueryPlugin(Toast) | ||
export default Toast |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): tooltip.js | ||
* Bootstrap (v5.0.1): tooltip.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -12,5 +12,4 @@ * -------------------------------------------------------------------------- | ||
defineJQueryPlugin, | ||
emulateTransitionEnd, | ||
findShadowRoot, | ||
getTransitionDurationFromElement, | ||
getElement, | ||
getUID, | ||
@@ -145,3 +144,3 @@ isElement, | ||
// Protected | ||
this.config = this._getConfig(config) | ||
this._config = this._getConfig(config) | ||
this.tip = null | ||
@@ -162,6 +161,2 @@ | ||
static get DATA_KEY() { | ||
return DATA_KEY | ||
} | ||
static get Event() { | ||
@@ -171,6 +166,2 @@ return Event | ||
static get EVENT_KEY() { | ||
return EVENT_KEY | ||
} | ||
static get DefaultType() { | ||
@@ -228,6 +219,2 @@ return DefaultType | ||
this._isEnabled = null | ||
this._timeout = null | ||
this._hoverState = null | ||
this._activeTrigger = null | ||
if (this._popper) { | ||
@@ -237,5 +224,2 @@ this._popper.destroy() | ||
this._popper = null | ||
this.config = null | ||
this.tip = null | ||
super.dispose() | ||
@@ -271,9 +255,9 @@ } | ||
if (this.config.animation) { | ||
if (this._config.animation) { | ||
tip.classList.add(CLASS_NAME_FADE) | ||
} | ||
const placement = typeof this.config.placement === 'function' ? | ||
this.config.placement.call(this, tip, this._element) : | ||
this.config.placement | ||
const placement = typeof this._config.placement === 'function' ? | ||
this._config.placement.call(this, tip, this._element) : | ||
this._config.placement | ||
@@ -283,3 +267,3 @@ const attachment = this._getAttachment(placement) | ||
const container = this._getContainer() | ||
const { container } = this._config | ||
Data.set(tip, this.constructor.DATA_KEY, this) | ||
@@ -300,3 +284,3 @@ | ||
const customClass = typeof this.config.customClass === 'function' ? this.config.customClass() : this.config.customClass | ||
const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass | ||
if (customClass) { | ||
@@ -327,9 +311,4 @@ tip.classList.add(...customClass.split(' ')) | ||
if (this.tip.classList.contains(CLASS_NAME_FADE)) { | ||
const transitionDuration = getTransitionDurationFromElement(this.tip) | ||
EventHandler.one(this.tip, 'transitionend', complete) | ||
emulateTransitionEnd(this.tip, transitionDuration) | ||
} else { | ||
complete() | ||
} | ||
const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE) | ||
this._queueCallback(complete, this.tip, isAnimated) | ||
} | ||
@@ -380,11 +359,4 @@ | ||
if (this.tip.classList.contains(CLASS_NAME_FADE)) { | ||
const transitionDuration = getTransitionDurationFromElement(tip) | ||
EventHandler.one(tip, 'transitionend', complete) | ||
emulateTransitionEnd(tip, transitionDuration) | ||
} else { | ||
complete() | ||
} | ||
const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE) | ||
this._queueCallback(complete, this.tip, isAnimated) | ||
this._hoverState = '' | ||
@@ -411,3 +383,3 @@ } | ||
const element = document.createElement('div') | ||
element.innerHTML = this.config.template | ||
element.innerHTML = this._config.template | ||
@@ -429,9 +401,7 @@ this.tip = element.children[0] | ||
if (typeof content === 'object' && isElement(content)) { | ||
if (content.jquery) { | ||
content = content[0] | ||
} | ||
if (isElement(content)) { | ||
content = getElement(content) | ||
// content is a DOM node or a jQuery | ||
if (this.config.html) { | ||
if (this._config.html) { | ||
if (content.parentNode !== element) { | ||
@@ -448,5 +418,5 @@ element.innerHTML = '' | ||
if (this.config.html) { | ||
if (this.config.sanitize) { | ||
content = sanitizeHtml(content, this.config.allowList, this.config.sanitizeFn) | ||
if (this._config.html) { | ||
if (this._config.sanitize) { | ||
content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn) | ||
} | ||
@@ -464,5 +434,5 @@ | ||
if (!title) { | ||
title = typeof this.config.title === 'function' ? | ||
this.config.title.call(this._element) : | ||
this.config.title | ||
title = typeof this._config.title === 'function' ? | ||
this._config.title.call(this._element) : | ||
this._config.title | ||
} | ||
@@ -500,3 +470,3 @@ | ||
_getOffset() { | ||
const { offset } = this.config | ||
const { offset } = this._config | ||
@@ -521,3 +491,3 @@ if (typeof offset === 'string') { | ||
options: { | ||
fallbackPlacements: this.config.fallbackPlacements | ||
fallbackPlacements: this._config.fallbackPlacements | ||
} | ||
@@ -534,3 +504,3 @@ }, | ||
options: { | ||
boundary: this.config.boundary | ||
boundary: this._config.boundary | ||
} | ||
@@ -560,3 +530,3 @@ }, | ||
...defaultBsPopperConfig, | ||
...(typeof this.config.popperConfig === 'function' ? this.config.popperConfig(defaultBsPopperConfig) : this.config.popperConfig) | ||
...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) | ||
} | ||
@@ -569,14 +539,2 @@ } | ||
_getContainer() { | ||
if (this.config.container === false) { | ||
return document.body | ||
} | ||
if (isElement(this.config.container)) { | ||
return this.config.container | ||
} | ||
return SelectorEngine.findOne(this.config.container) | ||
} | ||
_getAttachment(placement) { | ||
@@ -587,7 +545,7 @@ return AttachmentMap[placement.toUpperCase()] | ||
_setListeners() { | ||
const triggers = this.config.trigger.split(' ') | ||
const triggers = this._config.trigger.split(' ') | ||
triggers.forEach(trigger => { | ||
if (trigger === 'click') { | ||
EventHandler.on(this._element, this.constructor.Event.CLICK, this.config.selector, event => this.toggle(event)) | ||
EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)) | ||
} else if (trigger !== TRIGGER_MANUAL) { | ||
@@ -601,4 +559,4 @@ const eventIn = trigger === TRIGGER_HOVER ? | ||
EventHandler.on(this._element, eventIn, this.config.selector, event => this._enter(event)) | ||
EventHandler.on(this._element, eventOut, this.config.selector, event => this._leave(event)) | ||
EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)) | ||
EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)) | ||
} | ||
@@ -615,5 +573,5 @@ }) | ||
if (this.config.selector) { | ||
this.config = { | ||
...this.config, | ||
if (this._config.selector) { | ||
this._config = { | ||
...this._config, | ||
trigger: 'manual', | ||
@@ -659,3 +617,3 @@ selector: '' | ||
if (!context.config.delay || !context.config.delay.show) { | ||
if (!context._config.delay || !context._config.delay.show) { | ||
context.show() | ||
@@ -669,3 +627,3 @@ return | ||
} | ||
}, context.config.delay.show) | ||
}, context._config.delay.show) | ||
} | ||
@@ -690,3 +648,3 @@ | ||
if (!context.config.delay || !context.config.delay.hide) { | ||
if (!context._config.delay || !context._config.delay.hide) { | ||
context.hide() | ||
@@ -700,3 +658,3 @@ return | ||
} | ||
}, context.config.delay.hide) | ||
}, context._config.delay.hide) | ||
} | ||
@@ -723,6 +681,2 @@ | ||
if (config && typeof config.container === 'object' && config.container.jquery) { | ||
config.container = config.container[0] | ||
} | ||
config = { | ||
@@ -734,2 +688,4 @@ ...this.constructor.Default, | ||
config.container = config.container === false ? document.body : getElement(config.container) | ||
if (typeof config.delay === 'number') { | ||
@@ -762,6 +718,6 @@ config.delay = { | ||
if (this.config) { | ||
for (const key in this.config) { | ||
if (this.constructor.Default[key] !== this.config[key]) { | ||
config[key] = this.config[key] | ||
if (this._config) { | ||
for (const key in this._config) { | ||
if (this.constructor.Default[key] !== this._config[key]) { | ||
config[key] = this._config[key] | ||
} | ||
@@ -828,4 +784,4 @@ } | ||
defineJQueryPlugin(NAME, Tooltip) | ||
defineJQueryPlugin(Tooltip) | ||
export default Tooltip |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/backdrop.js | ||
* Bootstrap (v5.0.1): util/backdrop.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
@@ -92,2 +92,4 @@ * -------------------------------------------------------------------------- | ||
} | ||
config.rootElement = config.rootElement || document.body | ||
typeCheckConfig(NAME, config, DefaultType) | ||
@@ -94,0 +96,0 @@ return config |
@@ -0,4 +1,6 @@ | ||
import SelectorEngine from '../dom/selector-engine' | ||
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/index.js | ||
* Bootstrap (v5.0.1): util/index.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -103,4 +105,26 @@ * -------------------------------------------------------------------------- | ||
const isElement = obj => (obj[0] || obj).nodeType | ||
const isElement = obj => { | ||
if (!obj || typeof obj !== 'object') { | ||
return false | ||
} | ||
if (typeof obj.jquery !== 'undefined') { | ||
obj = obj[0] | ||
} | ||
return typeof obj.nodeType !== 'undefined' | ||
} | ||
const getElement = obj => { | ||
if (isElement(obj)) { // it's a jQuery object or a node element | ||
return obj.jquery ? obj[0] : obj | ||
} | ||
if (typeof obj === 'string' && obj.length > 0) { | ||
return SelectorEngine.findOne(obj) | ||
} | ||
return null | ||
} | ||
const emulateTransitionEnd = (element, duration) => { | ||
@@ -218,3 +242,3 @@ let called = false | ||
const defineJQueryPlugin = (name, plugin) => { | ||
const defineJQueryPlugin = plugin => { | ||
onDOMContentLoaded(() => { | ||
@@ -224,2 +248,3 @@ const $ = getjQuery() | ||
if ($) { | ||
const name = plugin.NAME | ||
const JQUERY_NO_CONFLICT = $.fn[name] | ||
@@ -243,2 +268,3 @@ $.fn[name] = plugin.jQueryInterface | ||
export { | ||
getElement, | ||
getUID, | ||
@@ -245,0 +271,0 @@ getSelectorFromElement, |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/sanitizer.js | ||
* Bootstrap (v5.0.1): util/sanitizer.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -5,0 +5,0 @@ * -------------------------------------------------------------------------- |
/** | ||
* -------------------------------------------------------------------------- | ||
* Bootstrap (v5.0.0): util/scrollBar.js | ||
* Bootstrap (v5.0.1): util/scrollBar.js | ||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) | ||
@@ -5,0 +5,0 @@ * -------------------------------------------------------------------------- |
{ | ||
"name": "bootstrap", | ||
"description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", | ||
"version": "5.0.0", | ||
"version": "5.0.1", | ||
"config": { | ||
@@ -104,8 +104,8 @@ "version_short": "5.0" | ||
"@babel/cli": "^7.13.16", | ||
"@babel/core": "^7.14.0", | ||
"@babel/preset-env": "^7.14.1", | ||
"@babel/core": "^7.14.2", | ||
"@babel/preset-env": "^7.14.2", | ||
"@popperjs/core": "^2.9.2", | ||
"@rollup/plugin-babel": "^5.3.0", | ||
"@rollup/plugin-commonjs": "^18.0.0", | ||
"@rollup/plugin-node-resolve": "^11.2.1", | ||
"@rollup/plugin-commonjs": "^19.0.0", | ||
"@rollup/plugin-node-resolve": "^13.0.0", | ||
"@rollup/plugin-replace": "^2.4.2", | ||
@@ -116,3 +116,3 @@ "autoprefixer": "^10.2.5", | ||
"cross-env": "^7.0.3", | ||
"eslint": "^7.25.0", | ||
"eslint": "^7.26.0", | ||
"eslint-config-xo": "^0.36.0", | ||
@@ -122,3 +122,3 @@ "eslint-plugin-import": "^2.22.1", | ||
"find-unused-sass-variables": "^3.1.0", | ||
"glob": "^7.1.6", | ||
"glob": "^7.1.7", | ||
"globby": "^11.0.3", | ||
@@ -136,3 +136,3 @@ "hammer-simulator": "0.0.1", | ||
"karma-jasmine": "^4.0.1", | ||
"karma-jasmine-html-reporter": "^1.5.4", | ||
"karma-jasmine-html-reporter": "^1.6.0", | ||
"karma-rollup-preprocessor": "^7.0.7", | ||
@@ -143,3 +143,3 @@ "linkinator": "^2.13.6", | ||
"npm-run-all": "^4.1.5", | ||
"postcss": "^8.2.13", | ||
"postcss": "^8.2.15", | ||
"postcss-cli": "^8.3.1", | ||
@@ -149,3 +149,3 @@ "rollup": "^2.47.0", | ||
"rtlcss": "^3.1.2", | ||
"sass": "^1.32.12", | ||
"sass": "^1.32.13", | ||
"shelljs": "^0.8.4", | ||
@@ -152,0 +152,0 @@ "stylelint": "^13.13.1", |
@@ -25,5 +25,5 @@ <p align="center"> | ||
## Bootstrap 4 | ||
## Bootstrap 5 | ||
Our default branch is for development of our upcoming Bootstrap 5 release. Head to the [`v4-dev` branch](https://github.com/twbs/bootstrap/tree/v4-dev) to view the readme, documentation, and source code for Bootstrap 4. | ||
Our default branch is for development of our Bootstrap 5 release. Head to the [`v4-dev` branch](https://github.com/twbs/bootstrap/tree/v4-dev) to view the readme, documentation, and source code for Bootstrap 4. | ||
@@ -50,7 +50,7 @@ | ||
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v5.0.0.zip) | ||
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v5.0.1.zip) | ||
- Clone the repo: `git clone https://github.com/twbs/bootstrap.git` | ||
- Install with [npm](https://www.npmjs.com/): `npm install bootstrap` | ||
- Install with [yarn](https://yarnpkg.com/): `yarn add bootstrap` | ||
- Install with [Composer](https://getcomposer.org/): `composer require twbs/bootstrap:5.0.0` | ||
- Install with [Composer](https://getcomposer.org/): `composer require twbs/bootstrap:5.0.1` | ||
- Install with [NuGet](https://www.nuget.org/): CSS: `Install-Package bootstrap` Sass: `Install-Package bootstrap.sass` | ||
@@ -57,0 +57,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
8301368
59671