diff --git a/404.html b/404.html index cef56ce95..7f4a0ce6b 100644 --- a/404.html +++ b/404.html @@ -73,4 +73,7 @@ */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()
//404
You seem to have taken a wrong turn! Let's get you back on track! -404
\ No newline at end of file +404 \ No newline at end of file diff --git a/code-of-conduct/index.html b/code-of-conduct/index.html index 37bc924ba..5ea2ac2cc 100644 --- a/code-of-conduct/index.html +++ b/code-of-conduct/index.html @@ -120,4 +120,7 @@ https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.

Community Impact Guidelines were inspired by Mozilla’s code of conduct enforcement ladder.

For answers to common questions about this code of conduct, see the FAQ at https://www.contributor-covenant.org/faq. Translations are available at -https://www.contributor-covenant.org/translations.

pumb
\ No newline at end of file +https://www.contributor-covenant.org/translations.

pumb
\ No newline at end of file diff --git a/company/index.html b/company/index.html new file mode 100644 index 000000000..ed6e8367c --- /dev/null +++ b/company/index.html @@ -0,0 +1,84 @@ +Company | http4k +

Meet http4k Limited

Founded in 2017, http4k has grown into one of the most popular HTTP libraries for Kotlin, reflecting over 15 years of +combined experience in server-side development. Our mission was to create a library that embodies simplicity and +clarity, enabling developers to build robust applications without the complexities often associated with traditional +frameworks.

With it’s uniform HTTP client/server model, http4k occupies a unique space within the Kotlin ecosystem and emphasizes +functional principles, immutability, minimal dependencies and a focus on test-driven design. Today, http4k boasts over +100 integrations and is utilized worldwide to power applications of all sizes.

http4k Limited is a UK-based company that provides consulting services, training, and support for global clients of all sizes +that use http4k to power their applications.

The Founders of http4k

David Denton

logo

Co-creator of http4k, driving Tech and Community engagement. Extensive delivery experience across diverse industries, having led high-impact projects and their teams. A Google Developer Expert and Kotlin Open Source Voice, serial international speaker.

Ivan Sanchez

logo

Co-creator of http4k, focusing on technical strategy and team leadership. With over twenty years of experience, excels in fostering collaboration across cross-functional teams to deliver complex software systems. A Google Developer Expert in Kotlin, international speaker and trainer.

Professional Services

support

Support

It’s important that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

faq

Solve

We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

training

Educate

We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

Let's talk

Contact us
pumb
\ No newline at end of file diff --git a/consulting/index.html b/consulting/index.html index b9f082390..66ce7cc25 100644 --- a/consulting/index.html +++ b/consulting/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

Consulting

Unlock the full potential of your applications with consulting services directly from the architects of http4k. We provide tailored guidance and support at every stage of your journey through the http4k ecosystem.

We recognise that although organisations use happily Open Source Software such as http4k, they may gain additional peace of mind from having direct access to expert advice. For this purpose, the project creators offer a range of professional services to support http4k users in making the most of the powerful feature set which http4k provides, including:

  • System architecture and design review
  • Testing strategy and implementation review
  • Project-level Developer and Team mentoring
  • Troubleshooting integration issues and debugging
  • Kotlin language Developer training
  • Advice on extending or creating custom builds of http4k

If your organisation is interested in getting support or consulting on this basis, please get in touch.

Custom consulting from the experts

No-one knows http4k better than the people who built it. Get tailored advice and support from the creators of http4k.

System architecture and design review

Get expert advice on how to structure your applications for maximum performance and maintainability.

Troubleshooting and debugging

If you’re having problems with your http4k application, we can help you get to the bottom of it.

Professional Services

Support

It’s important to us that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

Solve

We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

Educate

We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

Let's talk

Contact us
pumb
\ No newline at end of file +

Consulting

Unlock the full potential of your applications with consulting services directly from the architects of http4k. We provide tailored guidance and support at every stage of your journey through the http4k ecosystem.

We recognise that although organisations use happily Open Source Software such as http4k, they may gain additional peace of mind from having direct access to expert advice. For this purpose, the project creators offer a range of professional services to support http4k users in making the most of the powerful feature set which http4k provides, including:

  • System architecture and design review
  • Testing strategy and implementation review
  • Project-level Developer and Team mentoring
  • Troubleshooting integration issues and debugging
  • Kotlin language Developer training
  • Advice on extending or creating custom builds of http4k

If your organisation is interested in getting support or consulting on this basis, please get in touch.

Custom consulting from the experts

No-one knows http4k better than the people who built it. Get tailored advice and support from the creators of http4k.

System architecture and design review

Get expert advice on how to structure your applications for maximum performance and maintainability.

Troubleshooting and debugging

If you’re having problems with your http4k application, we can help you get to the bottom of it.

Professional Services

Support

It’s important that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

Solve

We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

Educate

We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

Let's talk

Contact us
pumb
\ No newline at end of file diff --git a/contributing/index.html b/contributing/index.html index d5f5a89c6..8e7e4c39e 100644 --- a/contributing/index.html +++ b/contributing/index.html @@ -84,4 +84,7 @@ for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, -and YourKit YouMonitor.

pumb
\ No newline at end of file +and YourKit YouMonitor.

pumb
\ No newline at end of file diff --git a/disclaimer/index.html b/disclaimer/index.html index 9a0e31873..febba9f5d 100644 --- a/disclaimer/index.html +++ b/disclaimer/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

Disclaimer

Last updated: 2024-05-20

WEBSITE DISCLAIMER

The information provided by http4k Ltd (“Company”, “we”, “our”, “us”) on http4k.org (the “Site”) is for general informational purposes only. All information on the Site is provided in good faith, however we make no representation or warranty of any kind, express or implied, regarding the accuracy, adequacy, validity, reliability, availability, or completeness of any information on the Site.

UNDER NO CIRCUMSTANCE SHALL WE HAVE ANY LIABILITY TO YOU FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF THE SITE OR RELIANCE ON ANY INFORMATION PROVIDED ON THE SITE. YOUR USE OF THE SITE AND YOUR RELIANCE ON ANY INFORMATION ON THE SITE IS SOLELY AT YOUR OWN RISK.

EXTERNAL LINKS DISCLAIMER

The Site may contain (or you may be sent through the Site) links to other websites or content belonging to or originating from third parties or links to websites and features. Such external links are not investigated, monitored, or checked for accuracy, adequacy, validity, reliability, availability or completeness by us.

WE DO NOT WARRANT, ENDORSE, GUARANTEE, OR ASSUME RESPONSIBILITY FOR THE ACCURACY OR RELIABILITY OF ANY INFORMATION OFFERED BY THIRD-PARTY WEBSITES LINKED THROUGH THE SITE OR ANY WEBSITE OR FEATURE LINKED IN ANY BANNER OR OTHER ADVERTISING. WE WILL NOT BE A PARTY TO OR IN ANY WAY BE RESPONSIBLE FOR MONITORING ANY TRANSACTION BETWEEN YOU AND THIRD-PARTY PROVIDERS OF PRODUCTS OR SERVICES.

AFFILIATES DISCLAIMER

The Site may contain links to affiliate websites, and we may receive an affiliate commission for any purchases or actions made by you on the affiliate websites using such links.

TESTIMONIALS DISCLAIMER

The Site may contain testimonials by users of our products and/or services. These testimonials reflect the real-life experiences and opinions of such users. However, the experiences are personal to those particular users, and may not necessarily be representative of all users of our products and/or services. We do not claim, and you should not assume that all users will have the same experiences.

YOUR INDIVIDUAL RESULTS MAY VARY.

The testimonials on the Site are submitted in various forms such as text, audio and/or video, and are reviewed by us before being posted. They appear on the Site verbatim as given by the users, except for the correction of grammar or typing errors. Some testimonials may have been shortened for the sake of brevity, where the full testimonial contained extraneous information not relevant to the general public.

The views and opinions contained in the testimonials belong solely to the individual user and do not reflect our views and opinions.

ERRORS AND OMISSIONS DISCLAIMER

While we have made every attempt to ensure that the information contained in this site has been obtained from reliable sources, http4k Ltd is not responsible for any errors or omissions or for the results obtained from the use of this information. All information in this site is provided “as is”, with no guarantee of completeness, accuracy, timeliness or of the results obtained from the use of this information, and without warranty of any kind, express or implied, including, but not limited to warranties of performance, merchantability, and fitness for a particular purpose.

In no event will http4k Ltd, its related partnerships or corporations, or the partners, agents or employees thereof be liable to you or anyone else for any decision made or action taken in reliance on the information in this Site or for any consequential, special or similar damages, even if advised of the possibility of such damages.

LOGOS AND TRADEMARKS DISCLAIMER

All logos and trademarks of third parties referenced on http4k.org are the trademarks and logos of their respective owners. Any inclusion of such trademarks or logos does not imply or constitute any approval, endorsement or sponsorship of http4k Ltd by such owners.

CONTACT US

Should you have any feedback, comments, requests for technical support or other inquiries, please contact us by email: info@http4k.org.

pumb
\ No newline at end of file +

Disclaimer

Last updated: 2024-05-20

WEBSITE DISCLAIMER

The information provided by http4k Ltd (“Company”, “we”, “our”, “us”) on http4k.org (the “Site”) is for general informational purposes only. All information on the Site is provided in good faith, however we make no representation or warranty of any kind, express or implied, regarding the accuracy, adequacy, validity, reliability, availability, or completeness of any information on the Site.

UNDER NO CIRCUMSTANCE SHALL WE HAVE ANY LIABILITY TO YOU FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF THE SITE OR RELIANCE ON ANY INFORMATION PROVIDED ON THE SITE. YOUR USE OF THE SITE AND YOUR RELIANCE ON ANY INFORMATION ON THE SITE IS SOLELY AT YOUR OWN RISK.

EXTERNAL LINKS DISCLAIMER

The Site may contain (or you may be sent through the Site) links to other websites or content belonging to or originating from third parties or links to websites and features. Such external links are not investigated, monitored, or checked for accuracy, adequacy, validity, reliability, availability or completeness by us.

WE DO NOT WARRANT, ENDORSE, GUARANTEE, OR ASSUME RESPONSIBILITY FOR THE ACCURACY OR RELIABILITY OF ANY INFORMATION OFFERED BY THIRD-PARTY WEBSITES LINKED THROUGH THE SITE OR ANY WEBSITE OR FEATURE LINKED IN ANY BANNER OR OTHER ADVERTISING. WE WILL NOT BE A PARTY TO OR IN ANY WAY BE RESPONSIBLE FOR MONITORING ANY TRANSACTION BETWEEN YOU AND THIRD-PARTY PROVIDERS OF PRODUCTS OR SERVICES.

AFFILIATES DISCLAIMER

The Site may contain links to affiliate websites, and we may receive an affiliate commission for any purchases or actions made by you on the affiliate websites using such links.

TESTIMONIALS DISCLAIMER

The Site may contain testimonials by users of our products and/or services. These testimonials reflect the real-life experiences and opinions of such users. However, the experiences are personal to those particular users, and may not necessarily be representative of all users of our products and/or services. We do not claim, and you should not assume that all users will have the same experiences.

YOUR INDIVIDUAL RESULTS MAY VARY.

The testimonials on the Site are submitted in various forms such as text, audio and/or video, and are reviewed by us before being posted. They appear on the Site verbatim as given by the users, except for the correction of grammar or typing errors. Some testimonials may have been shortened for the sake of brevity, where the full testimonial contained extraneous information not relevant to the general public.

The views and opinions contained in the testimonials belong solely to the individual user and do not reflect our views and opinions.

ERRORS AND OMISSIONS DISCLAIMER

While we have made every attempt to ensure that the information contained in this site has been obtained from reliable sources, http4k Ltd is not responsible for any errors or omissions or for the results obtained from the use of this information. All information in this site is provided “as is”, with no guarantee of completeness, accuracy, timeliness or of the results obtained from the use of this information, and without warranty of any kind, express or implied, including, but not limited to warranties of performance, merchantability, and fitness for a particular purpose.

In no event will http4k Ltd, its related partnerships or corporations, or the partners, agents or employees thereof be liable to you or anyone else for any decision made or action taken in reliance on the information in this Site or for any consequential, special or similar damages, even if advised of the possibility of such damages.

LOGOS AND TRADEMARKS DISCLAIMER

All logos and trademarks of third parties referenced on http4k.org are the trademarks and logos of their respective owners. Any inclusion of such trademarks or logos does not imply or constitute any approval, endorsement or sponsorship of http4k Ltd by such owners.

CONTACT US

Should you have any feedback, comments, requests for technical support or other inquiries, please contact us by email: info@http4k.org.

pumb
\ No newline at end of file diff --git a/ecosystem/connect/changelog/index.html b/ecosystem/connect/changelog/index.html index 37fff8019..8536667c7 100644 --- a/ecosystem/connect/changelog/index.html +++ b/ecosystem/connect/changelog/index.html @@ -85,4 +85,7 @@ to individual requests

v2.14.2.0

  • http4k-connect-* : upgrade http4k, kotlin, others

v2.14.1.0

  • http4k-connect-* : upgrade http4k
  • http4k-connect-kapt-generator : Un-hardcode result type as per Action interface.

v2.14.0.0

  • http4k-connect-* : [Breaking] Changed Result type on Action to be generic to support other programming models. This will only affect users who are implementing their own clients. To fix, change:
interface MyClient<R> : Action<R>
 // to 
 interface MyClient<R> : Action<Result<R, RemoteFailure>>
-

v2.13.0.1

  • *http4k-connect-amazon-s3-fake : Send response XML as well as status code on errors.

v2.13.0.0

  • http4k-connect-* : Rejig of dependencies to be consistent.

v2.12.0.0

  • http4k-connect-storage-core : New module, containing storage abstractions which can be used without the fakes.

v2.11.0.0

  • http4k-connect-amazon-sns : [New module]
  • *http4k-connect-amazon-sns-fake : [New module]
  • http4k-connect- : Make all action classes Data classes so they are test friendly
  • http4k-connect-amazon-sqs : [Breaking] Tags is now a List<Tag> instead of a Map<String, String>.

v2.10.0.0

  • http4k-connect-amazon- : Add convenience functions to create clients from the system environment.
  • http4k-connect-amazon- : Removed unused Payload type for various clients.
  • http4k-connect-* : Upgrade values4k and http4k

v2.9.2.0

  • http4k-connect-amazon- : Add convenience methods for constructing AWS clients

v2.9.1.0

  • http4k-connect-amazon- : Expose Moshi to client API users for JSON-based systems

v2.9.0.0

  • http4k-connect-amazon-sqs : Fixed SQS MessageAttributes as API is not as advertised…
  • http4k-connect-amazon-fake : Extracting out endpoints for easier extension.

v2.8.0.0

  • http4k-connect-* : Upgrade to http4k 4.X.X.X.

v2.7.1.0

  • http4k-connect-amazon-systemsmanager : Refined model.
  • http4k-connect-amazon-* : Fixed handling of ARNs.

v2.7.0.0

  • http4k-connect-amazon-* : Refined ARN model.
  • http4k-connect-amazon-s3 : Fix Delete Bucket action.

v2.6.0.0

  • http4k-connect-amazon-* : API improvements for all AWS services.
  • http4k-connect-* : defaultPort() -> defaultPort

v2.5.1.0

  • *http4k-connect-amazon-lambda : Expose AutoMarshalling in extension function.

v2.5.0.0

  • *http4k-connect-amazon-lambda : Expose AutoMarshalling for invoking functions.

v2.4.0.0

  • http4k-connect- : Remove need for AWSCredentialScope - just use Region instead since each service already knows the scope required.

v2.3.2.0

  • *http4k-connect-amazon-sqs : [New module] Client and fake.
  • *http4k-connect-amazon-sqs-fake : [New module] See README for limitations of FakeSQS.
  • *http4k-connect-amazon-sts : Added STSCredentialsProvider to refresh credentials when required.

v2.3.1.1

  • http4k-connect- : Fix #11 thread safety of DocumentBuilderFactory.

v2.3.1.0

  • *http4k-connect-amazon-lambda : [New module] Support for invoking AWS Lambda functions.
  • *http4k-connect-amazon-lambda-fake : [New module] Includes FakeLambda runtime to run/deploy named HttpHandlers into.

v2.3.0.0

  • http4k-connect- : Use Kotshi generated adapters instead of Kotlin Reflection, allowing removal of large Kotlin Reflection JAR. Note that the Kotlin-reflect dependency must be explicitly excluded due to transitivity in your projects.

v2.2.2.0

  • http4k-connect- : Generate and ship extension functions for all actions. Rename S3.Bucket to S3Bucket.

v2.2.1.0

  • http4k-connect- : Ship Javadoc.

v2.2.0.0

  • http4k-connect- : Repackage all action classes.

v2.1.0.0

  • http4k-connect- : Repackage all action classes.

v2.0.2.1

  • http4k-connect- : Switch all interfaces to use new invoke() mechanism.

v1.1.0.1

  • http4k-connect- : Upgrade http4k and Values4k.

v1.0.1.0

  • http4k-connect-amazon-kms-fake : Simplify signing.

v1.0.0.0

  • http4k-connect-amazon-kms : [New module] New client module.
  • http4k-connect-amazon-kms-fake : [New module] New client fake module.
  • http4k-connect-amazon-s3 : [New module] New client module.
  • http4k-connect-amazon-s3-fake : [New module] New client fake module.
  • http4k-connect-amazon-secretsmanager : [New module] New client module.
  • http4k-connect-amazon-secretsmanager-fake : [New module] New client fake module.
  • http4k-connect-amazon-systemsmanager : [New module] New client module.
  • http4k-connect-amazon-systemsmanager-fake : [New module] New client fake module.
  • http4k-connect-google-analytics : [New module] New client module.
  • http4k-connect-storage-http : [New module] New storage module.
  • http4k-connect-storage-jdbc : [New module] New storage module.
  • http4k-connect-storage-redis : [New module] New storage module.
  • http4k-connect-storage-s3 : [New module] New storage module.

v0.20.0.0

  • Initial release.
\ No newline at end of file +

v2.13.0.1

  • *http4k-connect-amazon-s3-fake : Send response XML as well as status code on errors.

v2.13.0.0

  • http4k-connect-* : Rejig of dependencies to be consistent.

v2.12.0.0

  • http4k-connect-storage-core : New module, containing storage abstractions which can be used without the fakes.

v2.11.0.0

  • http4k-connect-amazon-sns : [New module]
  • *http4k-connect-amazon-sns-fake : [New module]
  • http4k-connect- : Make all action classes Data classes so they are test friendly
  • http4k-connect-amazon-sqs : [Breaking] Tags is now a List<Tag> instead of a Map<String, String>.

v2.10.0.0

  • http4k-connect-amazon- : Add convenience functions to create clients from the system environment.
  • http4k-connect-amazon- : Removed unused Payload type for various clients.
  • http4k-connect-* : Upgrade values4k and http4k

v2.9.2.0

  • http4k-connect-amazon- : Add convenience methods for constructing AWS clients

v2.9.1.0

  • http4k-connect-amazon- : Expose Moshi to client API users for JSON-based systems

v2.9.0.0

  • http4k-connect-amazon-sqs : Fixed SQS MessageAttributes as API is not as advertised…
  • http4k-connect-amazon-fake : Extracting out endpoints for easier extension.

v2.8.0.0

  • http4k-connect-* : Upgrade to http4k 4.X.X.X.

v2.7.1.0

  • http4k-connect-amazon-systemsmanager : Refined model.
  • http4k-connect-amazon-* : Fixed handling of ARNs.

v2.7.0.0

  • http4k-connect-amazon-* : Refined ARN model.
  • http4k-connect-amazon-s3 : Fix Delete Bucket action.

v2.6.0.0

  • http4k-connect-amazon-* : API improvements for all AWS services.
  • http4k-connect-* : defaultPort() -> defaultPort

v2.5.1.0

  • *http4k-connect-amazon-lambda : Expose AutoMarshalling in extension function.

v2.5.0.0

  • *http4k-connect-amazon-lambda : Expose AutoMarshalling for invoking functions.

v2.4.0.0

  • http4k-connect- : Remove need for AWSCredentialScope - just use Region instead since each service already knows the scope required.

v2.3.2.0

  • *http4k-connect-amazon-sqs : [New module] Client and fake.
  • *http4k-connect-amazon-sqs-fake : [New module] See README for limitations of FakeSQS.
  • *http4k-connect-amazon-sts : Added STSCredentialsProvider to refresh credentials when required.

v2.3.1.1

  • http4k-connect- : Fix #11 thread safety of DocumentBuilderFactory.

v2.3.1.0

  • *http4k-connect-amazon-lambda : [New module] Support for invoking AWS Lambda functions.
  • *http4k-connect-amazon-lambda-fake : [New module] Includes FakeLambda runtime to run/deploy named HttpHandlers into.

v2.3.0.0

  • http4k-connect- : Use Kotshi generated adapters instead of Kotlin Reflection, allowing removal of large Kotlin Reflection JAR. Note that the Kotlin-reflect dependency must be explicitly excluded due to transitivity in your projects.

v2.2.2.0

  • http4k-connect- : Generate and ship extension functions for all actions. Rename S3.Bucket to S3Bucket.

v2.2.1.0

  • http4k-connect- : Ship Javadoc.

v2.2.0.0

  • http4k-connect- : Repackage all action classes.

v2.1.0.0

  • http4k-connect- : Repackage all action classes.

v2.0.2.1

  • http4k-connect- : Switch all interfaces to use new invoke() mechanism.

v1.1.0.1

  • http4k-connect- : Upgrade http4k and Values4k.

v1.0.1.0

  • http4k-connect-amazon-kms-fake : Simplify signing.

v1.0.0.0

  • http4k-connect-amazon-kms : [New module] New client module.
  • http4k-connect-amazon-kms-fake : [New module] New client fake module.
  • http4k-connect-amazon-s3 : [New module] New client module.
  • http4k-connect-amazon-s3-fake : [New module] New client fake module.
  • http4k-connect-amazon-secretsmanager : [New module] New client module.
  • http4k-connect-amazon-secretsmanager-fake : [New module] New client fake module.
  • http4k-connect-amazon-systemsmanager : [New module] New client module.
  • http4k-connect-amazon-systemsmanager-fake : [New module] New client fake module.
  • http4k-connect-google-analytics : [New module] New client module.
  • http4k-connect-storage-http : [New module] New storage module.
  • http4k-connect-storage-jdbc : [New module] New storage module.
  • http4k-connect-storage-redis : [New module] New storage module.
  • http4k-connect-storage-s3 : [New module] New storage module.

v0.20.0.0

  • Initial release.
\ No newline at end of file diff --git a/ecosystem/connect/concepts/clients/index.html b/ecosystem/connect/concepts/clients/index.html index 1533381a2..73785185b 100644 --- a/ecosystem/connect/concepts/clients/index.html +++ b/ecosystem/connect/concepts/clients/index.html @@ -92,4 +92,7 @@ val echoed: Result<Echoed, RemoteFailure> = example.echo("hello world") // or... val alsoEchoed: Result<Echoed, RemoteFailure> = example(Echo("hello world")) - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/concepts/fakes/index.html b/ecosystem/connect/concepts/fakes/index.html index c8f5845ae..b4b8669b5 100644 --- a/ecosystem/connect/concepts/fakes/index.html +++ b/ecosystem/connect/concepts/fakes/index.html @@ -74,4 +74,7 @@

Concept: System Fakes

Each module comes with it’s own Fake system which implements the remote HTTP interface. In like with the Server as a Function concept, this Fake class implements HttpHandler and:

  1. Can be used in in-memory tests as a swap-out replacement for an HTTP client
  2. Can be started and bound to a HTTP port - each Fake has it’s own unique port
  3. Can be deployed into test environments as a replacement for the real thing.
  4. Can be used to simulate Chaotic behaviour using the built in OpenApi interface (see http://localhost:/chaos)

The module naming scheme for Fakes is:

org.http4k:http4k-connect-{vendor}-{system}-fake

Inject the fake in place of a standard HTTP Handler, or start the Fake as a server with:

FakeExample().start()
 > Started FakeExample on 22375
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/concepts/pattern/index.html b/ecosystem/connect/concepts/pattern/index.html index 3f27e08c2..934f78a6a 100644 --- a/ecosystem/connect/concepts/pattern/index.html +++ b/ecosystem/connect/concepts/pattern/index.html @@ -258,4 +258,7 @@ getRepoLatestCommit(owner, repo).flatMap { getUser(it.author) } val latestUser: Result<UserDetails, RemoteRequestFailed> = gitHub.getLatestUser("http4k", "http4k-connect") -

Summary

Actions and API Clients are the core building blocks of http4k Connect. They allow us to structure our API Client code in a modular, testable and reusable way, and also to compose our own custom API Clients out of the individual parts that we are interested in. The Connect pattern is a powerful way to structure our API Client code in a way that is similar to how we structure our inbound APIs, and also to build functions which combine one or more calls to the API.

\ No newline at end of file +

Summary

Actions and API Clients are the core building blocks of http4k Connect. They allow us to structure our API Client code in a modular, testable and reusable way, and also to compose our own custom API Clients out of the individual parts that we are interested in. The Connect pattern is a powerful way to structure our API Client code in a way that is similar to how we structure our inbound APIs, and also to build functions which combine one or more calls to the API.

\ No newline at end of file diff --git a/ecosystem/connect/contributing/index.html b/ecosystem/connect/contributing/index.html index d4bb13978..02bb6d902 100644 --- a/ecosystem/connect/contributing/index.html +++ b/ecosystem/connect/contributing/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

Contributors Guide

Contributions

Notes for adding a new Client & Fake

  • Use the Example project client and fake as a template module.
  • The naming of the modules is: http4k-connect-<vendor>-<system>. We are also grouping the systems by vendor in directory structure. To add the modules in the right place in settings.gradle.kts use the functions provided.
  • The work for adding other http4k-connect Gradle dependencies is already done in the core build.gradle file. You just need to add external dependencies into the module gradle file if there are any. If not, feel free to omit it.
  • Fakes should extend ChaoticHttpHandler, which adds in the misbehave() and behave() functions to enable the Chaotic behaviour.
  • Each Fake should implement the FakeSystemContract.
  • Tests against external systems should be added wherever possible to prove the contracts are in place, or adding Docker* setup to run them. *This is work in progress.

Notes for adding Storage implementations

  • The naming of the modules is: http4k-connect-storage-<type>. To add the module in the right place in settings.gradle.kts use the function provided.
  • There is a contract StorageContract to prove that the implementation.
  • Testcontainers can be used to prove out testing for various storage backends
\ No newline at end of file +

Contributors Guide

Contributions

Notes for adding a new Client & Fake

  • Use the Example project client and fake as a template module.
  • The naming of the modules is: http4k-connect-<vendor>-<system>. We are also grouping the systems by vendor in directory structure. To add the modules in the right place in settings.gradle.kts use the functions provided.
  • The work for adding other http4k-connect Gradle dependencies is already done in the core build.gradle file. You just need to add external dependencies into the module gradle file if there are any. If not, feel free to omit it.
  • Fakes should extend ChaoticHttpHandler, which adds in the misbehave() and behave() functions to enable the Chaotic behaviour.
  • Each Fake should implement the FakeSystemContract.
  • Tests against external systems should be added wherever possible to prove the contracts are in place, or adding Docker* setup to run them. *This is work in progress.

Notes for adding Storage implementations

  • The naming of the modules is: http4k-connect-storage-<type>. To add the module in the right place in settings.gradle.kts use the function provided.
  • There is a contract StorageContract to prove that the implementation.
  • Testcontainers can be used to prove out testing for various storage backends
\ No newline at end of file diff --git a/ecosystem/connect/index.html b/ecosystem/connect/index.html index 1469c0bf7..244a57a46 100644 --- a/ecosystem/connect/index.html +++ b/ecosystem/connect/index.html @@ -79,4 +79,7 @@ testing. These are all underpinned by a variation on the uniform Server as a Function model powered by the HttpHandler interface exposed by http4k Core, so you can:

  1. Take advantage of the simple and powerful SaaF model and APIs used in http4k.
  2. Plug everything together completely in-memory and take advantage of this powerful model.
  3. Have access to the underlying HTTP clients (and hence add metrics or logging).
  4. Run stateful Fake implementations of 3rd party systems locally or in test environments.

Although centered around usage in http4k-based projects, http4k-connect does not require this and the libraries are usable from any JVM application.

Rationale

Although convenient, many API Client libraries introduce many heavyweight dependencies or contain a plethora of non-required functionality, which can have a large effect on binary size. As an alternative, http4k-connect provides lightweight versions of popular APIs covering standard use-cases.

## About the docs

The main documentation has moved to the main http4k site site -The content for the documentation is now hosted alongside the main site in the repo http4k/www

\ No newline at end of file +The content for the documentation is now hosted alongside the main site in the repo http4k/www

\ No newline at end of file diff --git a/ecosystem/connect/reference/ai/anthropic/index.html b/ecosystem/connect/reference/ai/anthropic/index.html index 179f3a0d7..0985ef4be 100644 --- a/ecosystem/connect/reference/ai/anthropic/index.html +++ b/ecosystem/connect/reference/ai/anthropic/index.html @@ -84,4 +84,7 @@ environments without using up valuable request tokens!

  • MessageCompletion (streaming and non-streaming)

Security

The Fake server endpoints are secured with a API key header, but the value is not checked for anything other than presence.

Generation of responses

By default, a random LoremIpsum generator creates message completion responses for the Fake. This behaviour can be overridden to generate custom response formats (eg. structured responses) if required. To do so, create instances of the MessageCompletionGenerator interface and return as appropriate.

Default Fake port: 18909

To start:

FakeAnthropicAI().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/ai/azure/index.html b/ecosystem/connect/reference/ai/azure/index.html index 92aba5471..5b3fd6156 100644 --- a/ecosystem/connect/reference/ai/azure/index.html +++ b/ecosystem/connect/reference/ai/azure/index.html @@ -97,4 +97,7 @@ environments without using up valuable request tokens!

  • GetInfo
  • ChatCompletions
  • Completions
  • CreateEmbeddings

Security

The Fake server endpoints are secured with a BearerToken header, but the value is not checked for anything other than presence.

Generation of responses

By default, a random LoremIpsum generator creates chat completion responses for the Fake. This behaviour can be overridden to generate custom response formats (eg. structured responses) if required. To do so, create instances of the ChatCompletionGenerator interface and return as appropriate.

Default Fake port: 14504

To start:

FakeAzureAI().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/ai/langchain/index.html b/ecosystem/connect/reference/ai/langchain/index.html index 8964339de..37f00221a 100644 --- a/ecosystem/connect/reference/ai/langchain/index.html +++ b/ecosystem/connect/reference/ai/langchain/index.html @@ -80,4 +80,7 @@ }

LangChain4J is a versatile library that simplifies the creation and management of language processing workflows., It provides many integrations but does not allow for using http4k clients or http4k-connect clients. This module gives you some of these integrations by providing LangChain model adapters.

Current adapters support http4k client integrations for the following models, allowing you to use them in your http4k applications:

  • OpenAI
    • OpenAiChatLanguageModel
    • OpenAiChatImageModel
    • OpenAiChatEmbeddingModel
  • Ollama
    • OllamaChatLanguageModel
    • OllamaChatImageModel
    • OllamaChatEmbeddingModel
  • S3 Document Loaders

Using these adapters is as simple as:

val model: ChatLanguageModel = OpenAiChatLanguageModel(OpenAI.Http(OpenAIToken.of("hello"), FakeOpenAI()))
 val chat: Response<AiMessage> = model.generate("hello kitty")
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/ai/lmstudio/index.html b/ecosystem/connect/reference/ai/lmstudio/index.html index 8c76f0c72..ffc4a091e 100644 --- a/ecosystem/connect/reference/ai/lmstudio/index.html +++ b/ecosystem/connect/reference/ai/lmstudio/index.html @@ -100,4 +100,7 @@ environments without using up valuable request tokens!

  • GetModels
  • ChatCompletion

Generation of responses

By default, a random LoremIpsum generator creates chat completion responses for the Fake. This behaviour can be overridden to generate custom response formats (eg. structured responses) if required. To do so, create instances of the ChatCompletionGenerator interface and return as appropriate.

Default Fake port: 58438

To start:

FakeLmStudio().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/ai/ollama/index.html b/ecosystem/connect/reference/ai/ollama/index.html index 675242a53..06671acb7 100644 --- a/ecosystem/connect/reference/ai/ollama/index.html +++ b/ecosystem/connect/reference/ai/ollama/index.html @@ -98,4 +98,7 @@ environments without using up valuable request tokens!

  • GetModels
  • ChatCompletion
  • Completion
  • PullModel
  • CreateEmbeddings

Generation of responses

By default, a random LoremIpsum generator creates chat completion responses for the Fake. This behaviour can be overridden to generate custom response formats (eg. structured responses) if required. To do so, create instances of the ChatCompletionGenerator interface and return as appropriate.

Default Fake port: 31193

To start:

FakeOllama().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/ai/openai/index.html b/ecosystem/connect/reference/ai/openai/index.html index dd28243cf..dbe15c3a8 100644 --- a/ecosystem/connect/reference/ai/openai/index.html +++ b/ecosystem/connect/reference/ai/openai/index.html @@ -102,4 +102,7 @@ of 256x/512x/1024x are supported.

Generation of responses

By default, a random LoremIpsum generator creates chat completion responses for the Fake. This behaviour can be overridden to generate custom response formats (eg. structured responses) if required. To do so, create instances of the ChatCompletionGenerator interface and return as appropriate.

Default Fake port: 45674

To start:

FakeOpenAI().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/apprunner/index.html b/ecosystem/connect/reference/amazon/apprunner/index.html index 37d5ba06c..a0df161e7 100644 --- a/ecosystem/connect/reference/amazon/apprunner/index.html +++ b/ecosystem/connect/reference/amazon/apprunner/index.html @@ -102,4 +102,7 @@

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 62628

To start:

FakeAppRunner().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/cloudfront/index.html b/ecosystem/connect/reference/amazon/cloudfront/index.html index f01695930..8ea7729e0 100644 --- a/ecosystem/connect/reference/amazon/cloudfront/index.html +++ b/ecosystem/connect/reference/amazon/cloudfront/index.html @@ -97,4 +97,7 @@ .createInvalidation(DistributionId.of("a-distribution-id"), listOf("/path"), 1, random()) }

Default Fake port: 15420

To start:

FakeCloudFront().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/cloudwatchlogs/index.html b/ecosystem/connect/reference/amazon/cloudwatchlogs/index.html index be831aa03..a2e012f08 100644 --- a/ecosystem/connect/reference/amazon/cloudwatchlogs/index.html +++ b/ecosystem/connect/reference/amazon/cloudwatchlogs/index.html @@ -97,4 +97,7 @@ println(result)

Default Fake port: 56514

To start:

FakeCloudWatchLogs().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/cognito/index.html b/ecosystem/connect/reference/amazon/cognito/index.html index b97c2d1a5..4675d6bcc 100644 --- a/ecosystem/connect/reference/amazon/cognito/index.html +++ b/ecosystem/connect/reference/amazon/cognito/index.html @@ -84,4 +84,7 @@ Authorization Code grants and returns JWTs which have been signed with a private key. The matching public key can be retrieved from the following endpoint:

http://<server:port>/<user pool id>/.well-known/jwks.json

Note that there are 2 keys returned by the JWKs endpoint - the first is “expired” and not used, the second is the one used to sign the JWTs.

Default Fake port: 37192

To start:

FakeCloudFront().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/containercredentials/index.html b/ecosystem/connect/reference/amazon/containercredentials/index.html index b275facb9..441c53cef 100644 --- a/ecosystem/connect/reference/amazon/containercredentials/index.html +++ b/ecosystem/connect/reference/amazon/containercredentials/index.html @@ -83,4 +83,7 @@

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 63556

To start:

FakeContainerCredentials().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/dynamodb/index.html b/ecosystem/connect/reference/amazon/dynamodb/index.html index 791accc67..a86e442c4 100644 --- a/ecosystem/connect/reference/amazon/dynamodb/index.html +++ b/ecosystem/connect/reference/amazon/dynamodb/index.html @@ -245,4 +245,7 @@ // all operations return a Result monad of the API type val deleteResult: Result<TableDescriptionResponse, RemoteFailure> = client.deleteTable(table) println(deleteResult) - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/eventbridge/index.html b/ecosystem/connect/reference/amazon/eventbridge/index.html index c98423643..18759c537 100644 --- a/ecosystem/connect/reference/amazon/eventbridge/index.html +++ b/ecosystem/connect/reference/amazon/eventbridge/index.html @@ -84,4 +84,7 @@ * DeleteEventBus * DescribeEventBus * PutEvents

Example usage

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 13577

To start:

FakeEventBridge().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/evidently/index.html b/ecosystem/connect/reference/amazon/evidently/index.html index ab8d6f93d..96ffdb39c 100644 --- a/ecosystem/connect/reference/amazon/evidently/index.html +++ b/ecosystem/connect/reference/amazon/evidently/index.html @@ -124,4 +124,7 @@

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 45011

To start:

FakeEvidently().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/firehose/index.html b/ecosystem/connect/reference/amazon/firehose/index.html index 312b79063..de421b76b 100644 --- a/ecosystem/connect/reference/amazon/firehose/index.html +++ b/ecosystem/connect/reference/amazon/firehose/index.html @@ -85,4 +85,7 @@ * ListDeliveryStreams * PutRecord * PutRecordBatch

Example usage

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 30879

To start:

FakeFirehose().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/iamidentitycenter/index.html b/ecosystem/connect/reference/amazon/iamidentitycenter/index.html index 1200e6106..a9c735eb8 100644 --- a/ecosystem/connect/reference/amazon/iamidentitycenter/index.html +++ b/ecosystem/connect/reference/amazon/iamidentitycenter/index.html @@ -89,4 +89,7 @@ Uri.of("http://foobar"), ) ) - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/instancemetadata/index.html b/ecosystem/connect/reference/amazon/instancemetadata/index.html index e351a0cc8..7aa6944c1 100644 --- a/ecosystem/connect/reference/amazon/instancemetadata/index.html +++ b/ecosystem/connect/reference/amazon/instancemetadata/index.html @@ -152,4 +152,7 @@ }

:warning: The Ec2InstanceProfile provider should always be last in the chain, since it will time out if not in an Amazon EC2 environment.

Default Fake port: 63407

To start:

FakeInstanceMetadataService().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/kms/index.html b/ecosystem/connect/reference/amazon/kms/index.html index b6adda5a7..dbcab1c5c 100644 --- a/ecosystem/connect/reference/amazon/kms/index.html +++ b/ecosystem/connect/reference/amazon/kms/index.html @@ -115,4 +115,7 @@ Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

The FakeKMS implementation currently does not properly encrypt/decrypt or sign/verify the contents of messages - it uses a trivially simple (and fast) reversible algorithm which simulates this functionality.

Default Fake port: 45302

To start:

FakeKMS().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/lambda/index.html b/ecosystem/connect/reference/amazon/lambda/index.html index a8217120e..0a354e432 100644 --- a/ecosystem/connect/reference/amazon/lambda/index.html +++ b/ecosystem/connect/reference/amazon/lambda/index.html @@ -109,4 +109,7 @@ deployed behind APIGateway (where you have total control over the URL pattern where the lambda can be invoked).

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 50322

To start:

FakeLambda().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/s3/index.html b/ecosystem/connect/reference/amazon/s3/index.html index 250fdbac7..9811b49ec 100644 --- a/ecosystem/connect/reference/amazon/s3/index.html +++ b/ecosystem/connect/reference/amazon/s3/index.html @@ -152,4 +152,7 @@ // share these URIs to your clients so they can perform the operations without credentials } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/secretsmanager/index.html b/ecosystem/connect/reference/amazon/secretsmanager/index.html index 8060ff163..73c0dc856 100644 --- a/ecosystem/connect/reference/amazon/secretsmanager/index.html +++ b/ecosystem/connect/reference/amazon/secretsmanager/index.html @@ -108,4 +108,7 @@

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 58194

To start:

FakeSecretsManager().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/ses/index.html b/ecosystem/connect/reference/amazon/ses/index.html index 5567ead23..21437c490 100644 --- a/ecosystem/connect/reference/amazon/ses/index.html +++ b/ecosystem/connect/reference/amazon/ses/index.html @@ -82,4 +82,7 @@

The SES connector provides the following Actions:

  • SendEmail

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Example usage

Default Fake port: 59920

To start:

FakeSES().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/sns/index.html b/ecosystem/connect/reference/amazon/sns/index.html index 7f4b83671..4b99b675b 100644 --- a/ecosystem/connect/reference/amazon/sns/index.html +++ b/ecosystem/connect/reference/amazon/sns/index.html @@ -82,4 +82,7 @@

The SNS connector provides the following Actions:

  • CreateTopic
  • DeleteTopic
  • ListTopics
  • Publish
  • PublishBatch

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Example usage

Default Fake port: 58430

To start:

FakeSNS().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/sqs/index.html b/ecosystem/connect/reference/amazon/sqs/index.html index 15ff20467..e66281a83 100644 --- a/ecosystem/connect/reference/amazon/sqs/index.html +++ b/ecosystem/connect/reference/amazon/sqs/index.html @@ -114,4 +114,7 @@

Note that the FakeSQS is only suitable for very simple scenarios (testing and deployment for single consumer only) and does NOT implement real SQS semantics such as VisibilityTimeout or maximum number of retrieved messages (it delivers all undeleted messages to each consumer). Fake SQS queues are, as such, all inherently FIFO queues.

Default Fake port: 37391

To start:

FakeSQS().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/sts/index.html b/ecosystem/connect/reference/amazon/sts/index.html index 04913ca20..bad400f0d 100644 --- a/ecosystem/connect/reference/amazon/sts/index.html +++ b/ecosystem/connect/reference/amazon/sts/index.html @@ -100,4 +100,7 @@ println(assumeRoleResult) }

Default Fake port: 20434

To start:

FakeSTS().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/amazon/systemsmanager/index.html b/ecosystem/connect/reference/amazon/systemsmanager/index.html index aeda1c254..19b3b7ef0 100644 --- a/ecosystem/connect/reference/amazon/systemsmanager/index.html +++ b/ecosystem/connect/reference/amazon/systemsmanager/index.html @@ -105,4 +105,7 @@

The client APIs utilise the http4k-aws module for request signing, which means no dependencies on the incredibly fat Amazon-SDK JARs. This means this integration is perfect for running Serverless Lambdas where binary size is a performance factor.

Default Fake port: 42551

To start:

FakeSecretsManager().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/aws/index.html b/ecosystem/connect/reference/aws/index.html index 2d3bd46d8..2f24c74fa 100644 --- a/ecosystem/connect/reference/aws/index.html +++ b/ecosystem/connect/reference/aws/index.html @@ -75,4 +75,7 @@

Reference: AWS

http4k-connect provides a standardised mechanism to connect to several AWS services. They all use the same mechanisms for authentication, which is what this page is about.

Auth

Authing into AWS services is possible with a few different mechanisms based on the environmental variables passed to your app. Under the covers, there is a CredentialProvider implementation which is switchable depending on your use-case:

Static AWS AccessKey/Secret authorisation uses:

  • AWS_REGION
  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_SESSION_TOKEN

This is the default mechanism, so no special action is required:

val sqs = SQS.Http()
 

STS authorisation uses:

  • AWS_REGION
  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_SESSION_TOKEN

This auth method uses the STS AssumeRole action to retrieve the rotating credentials from STS using auth from the environmental variables. This requires overriding the credentials provider used when constructing the client:

val sqs = SQS.Http(credentialsProvider = CredentialsProvider.STS())
 

STS WebIdentity authorisation uses:

  • AWS_ROLE_ARN
  • AWS_WEB_IDENTITY_TOKEN_FILE

This auth method uses the STS AssumeRoleWithWebIdentity action to retrieve the rotating credentials from STS using the Web Identity JWT from the file path contained in the env variable. This requires overriding the credentials provider used when constructing the client:

val sqs = SQS.Http(credentialsProvider = CredentialsProvider.STSWebIdentity())
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/github/index.html b/ecosystem/connect/reference/github/index.html index 8d3c72b9c..0d7db9053 100644 --- a/ecosystem/connect/reference/github/index.html +++ b/ecosystem/connect/reference/github/index.html @@ -78,4 +78,7 @@ implementation("org.http4k:http4k-connect-github") } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/gitlab/index.html b/ecosystem/connect/reference/gitlab/index.html index 0096a2f40..535906ea8 100644 --- a/ecosystem/connect/reference/gitlab/index.html +++ b/ecosystem/connect/reference/gitlab/index.html @@ -78,4 +78,7 @@ implementation("org.http4k:http4k-connect-gitlab") } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/google/analytics-ga4/index.html b/ecosystem/connect/reference/google/analytics-ga4/index.html index abe45edbe..f929dd52b 100644 --- a/ecosystem/connect/reference/google/analytics-ga4/index.html +++ b/ecosystem/connect/reference/google/analytics-ga4/index.html @@ -82,4 +82,7 @@

The GA connector provides the following Actions:

 *  PageView
  *  Event
 

Default Fake port: 35628

To start:

FakeGoogleAnalytics().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/google/analytics-ua/index.html b/ecosystem/connect/reference/google/analytics-ua/index.html index ed25719c1..311d0148e 100644 --- a/ecosystem/connect/reference/google/analytics-ua/index.html +++ b/ecosystem/connect/reference/google/analytics-ua/index.html @@ -82,4 +82,7 @@

The GA connector provides the following Actions:

 *  PageView
  *  Event
 

Default Fake port: 35628

To start:

FakeGoogleAnalytics().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/kafka/rest/index.html b/ecosystem/connect/reference/kafka/rest/index.html index cb289e48c..7d0ae3982 100644 --- a/ecosystem/connect/reference/kafka/rest/index.html +++ b/ecosystem/connect/reference/kafka/rest/index.html @@ -125,4 +125,7 @@ production and consumption of records. Note that consumers by default will start at the start of the topic stream, although they can be committed to.

“auto.commit.enable” is enabled by default but can be set to “false” for manual committing of offsets.

Default Fake port: 30091

To start:

FakeKafkaRest().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/kafka/schemaregistry/index.html b/ecosystem/connect/reference/kafka/schemaregistry/index.html index c3d7ebc72..f4bf5695d 100644 --- a/ecosystem/connect/reference/kafka/schemaregistry/index.html +++ b/ecosystem/connect/reference/kafka/schemaregistry/index.html @@ -80,4 +80,7 @@ implementation("org.http4k:http4k-connect-kafka-schemaregistry-fake") }

The main SchemaRegistry connector provides the following Actions:

  • CheckSchemaRegistered
  • GetSchemaById
  • GetSubjects
  • GetSubjectVersion
  • GetSubjectVersions
  • RegisterSchema

Fake

The Fake provides the above actions.

Default Fake port: 41466

To start:

FakeSchemaRegistry().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/ksp/index.html b/ecosystem/connect/reference/ksp/index.html index f10672bfc..061173630 100644 --- a/ecosystem/connect/reference/ksp/index.html +++ b/ecosystem/connect/reference/ksp/index.html @@ -73,4 +73,7 @@ */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()
\ No newline at end of file +those extensions manually and maintain the API of the client appears to contain methods for each Action.

See the How-to in the docs for details on how to use this KSP plugin.

\ No newline at end of file diff --git a/ecosystem/connect/reference/mattermost/index.html b/ecosystem/connect/reference/mattermost/index.html index 4dd10da9c..aaef5bfbd 100644 --- a/ecosystem/connect/reference/mattermost/index.html +++ b/ecosystem/connect/reference/mattermost/index.html @@ -107,4 +107,7 @@ println(payloads) }

Default Fake port: 54786

To start:

FakeMattermost().start()
-
\ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/overview/index.html b/ecosystem/connect/reference/overview/index.html index b8995ffa7..e837b2585 100644 --- a/ecosystem/connect/reference/overview/index.html +++ b/ecosystem/connect/reference/overview/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

Reference: Module Overview

A quick reference as to what is what with the http4k Connect modules.

Cloud Services

VendorSystemIn-Memory FakeNotes
AWSAppRunner
AWSCloudFront
AWSCloudwatch Logs
AWSDynamoDb
AWSEventBridge
AWSEvidently
AWSFirehose
AWSIAM Identity Center
AWSInstance Metadata
AWSKMS
AWSLambda
AWSS3
AWSSecrets Manager
AWSSES
AWSSNS
AWSSQS
AWSSTS
AWSSystems Manager
GitHubV3 APIClient Shell and WebHook Signing only
GitLabAPIClient Shell and WebHook Signing only
GoogleAnalytics GA4
GoogleAnalytics UA
KafkaRest Proxy
KafkaSchema Registry
MattermostWebHook


AI Services

VendorSystemIn-Memory FakeNotes
AnthropicAIAPIIncludes content generators
AzureAIAPIIncludes content generators and GitHubModels compatability
LangChain4JAdaptersAdapters to be plugged into LangChains
LM StudioAPI
OllamaAPIIncludes content generators and image generation
Open AIAPIIncludes content generators and image generation


Storage Implementations

ImplementationNotes
In-MemoryIncluded with all Fakes
File-BasedIncluded with all Fakes
JDBC
Redis
S3
\ No newline at end of file +

Reference: Module Overview

A quick reference as to what is what with the http4k Connect modules.

Cloud Services

VendorSystemIn-Memory FakeNotes
AWSAppRunner
AWSCloudFront
AWSCloudwatch Logs
AWSDynamoDb
AWSEventBridge
AWSEvidently
AWSFirehose
AWSIAM Identity Center
AWSInstance Metadata
AWSKMS
AWSLambda
AWSS3
AWSSecrets Manager
AWSSES
AWSSNS
AWSSQS
AWSSTS
AWSSystems Manager
GitHubV3 APIClient Shell and WebHook Signing only
GitLabAPIClient Shell and WebHook Signing only
GoogleAnalytics GA4
GoogleAnalytics UA
KafkaRest Proxy
KafkaSchema Registry
MattermostWebHook


AI Services

VendorSystemIn-Memory FakeNotes
AnthropicAIAPIIncludes content generators
AzureAIAPIIncludes content generators and GitHubModels compatability
LangChain4JAdaptersAdapters to be plugged into LangChains
LM StudioAPI
OllamaAPIIncludes content generators and image generation
Open AIAPIIncludes content generators and image generation


Storage Implementations

ImplementationNotes
In-MemoryIncluded with all Fakes
File-BasedIncluded with all Fakes
JDBC
Redis
S3
\ No newline at end of file diff --git a/ecosystem/connect/reference/storage/core/index.html b/ecosystem/connect/reference/storage/core/index.html index f7a871f12..f3b7832c4 100644 --- a/ecosystem/connect/reference/storage/core/index.html +++ b/ecosystem/connect/reference/storage/core/index.html @@ -98,4 +98,7 @@ println(storage["myKey"]) storage.removeAll("myKey") - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/storage/http/index.html b/ecosystem/connect/reference/storage/http/index.html index e02682f11..65c30de97 100644 --- a/ecosystem/connect/reference/storage/http/index.html +++ b/ecosystem/connect/reference/storage/http/index.html @@ -82,4 +82,7 @@ val baseStorage = Storage.InMemory<AnEntity>() baseStorage.asHttpHandler().asServer(SunHttp(8000)).start() -

Then simply use your browser to see the OpenAPI specification at http://localhost:8000:

openapi.png \ No newline at end of file +

Then simply use your browser to see the OpenAPI specification at http://localhost:8000:

openapi.png \ No newline at end of file diff --git a/ecosystem/connect/reference/storage/jdbc/index.html b/ecosystem/connect/reference/storage/jdbc/index.html index 51b6c3ca4..a751a82f3 100644 --- a/ecosystem/connect/reference/storage/jdbc/index.html +++ b/ecosystem/connect/reference/storage/jdbc/index.html @@ -96,4 +96,7 @@ println(storage["myKey"]) storage.removeAll("myKey") - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/storage/redis/index.html b/ecosystem/connect/reference/storage/redis/index.html index 1d2fefd48..113cd4e23 100644 --- a/ecosystem/connect/reference/storage/redis/index.html +++ b/ecosystem/connect/reference/storage/redis/index.html @@ -90,4 +90,7 @@ println(storage["myKey"]) storage.removeAll("myKey") - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/connect/reference/storage/s3/index.html b/ecosystem/connect/reference/storage/s3/index.html index 15685ba2f..13bdbfdf4 100644 --- a/ecosystem/connect/reference/storage/s3/index.html +++ b/ecosystem/connect/reference/storage/s3/index.html @@ -93,4 +93,7 @@ println(storage["myKey"]) storage.removeAll("myKey") - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k-connect/index.html b/ecosystem/http4k-connect/index.html index f95cddd5d..a0086866e 100644 --- a/ecosystem/http4k-connect/index.html +++ b/ecosystem/http4k-connect/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

Http4k Connect

logo

The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

logo

http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

pumb
\ No newline at end of file +

Http4k Connect

logo

The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

logo

http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

pumb
\ No newline at end of file diff --git a/ecosystem/http4k-core/index.html b/ecosystem/http4k-core/index.html index c0e6a3031..fae4c5360 100644 --- a/ecosystem/http4k-core/index.html +++ b/ecosystem/http4k-core/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

Http4k Core

logo

The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

logo

http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

pumb
\ No newline at end of file +

Http4k Core

logo

The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

logo

http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

pumb
\ No newline at end of file diff --git a/ecosystem/http4k/changelog/index.html b/ecosystem/http4k/changelog/index.html index 890e8aec1..281656e96 100644 --- a/ecosystem/http4k/changelog/index.html +++ b/ecosystem/http4k/changelog/index.html @@ -492,4 +492,7 @@ relaxed in what you will accept. :)

v1.10.0

  • Moved Credentials to org.http4k.core package.
  • Add various filters, including SetHostFrom and CatchAll.

v1.9.0

  • Added GenerateDataClasses so you can generate Kotlin data classes from JSON messages.

v1.8.0

  • Added CORs support

v1.7.0

  • Added auto() to Jackson, so you can auto convert body objects into and out of Requests/Responses

v1.6.0

  • Added CachingFilters

v1.5.0

  • Removed static factory methods for Request/Response. They were confusing/incomplete and users can easily recreate them via extension functions.
  • Merge org.http4k.core.Body and org.http4k.lens.Body.
  • Add Request/Response message parsers.

v1.4.0

  • Turn Body into ByteBuffer wrapper rather than typealias. That should make .toString() behave as most people would expected.

v1.3.0

  • Removed non-mandatory parameters from Request and Response constructors. This is aid API clarity. -and force users to use the API methods for properly constructing the objects.
  • Regex Lens added.

v1.0.0

  • Initial major release.
\ No newline at end of file +and force users to use the API methods for properly constructing the objects.
  • Regex Lens added.
  • v1.0.0

    • Initial major release.
    \ No newline at end of file diff --git a/ecosystem/http4k/concepts/http/index.html b/ecosystem/http4k/concepts/http/index.html index 28ab54fe1..271cfd52e 100644 --- a/ecosystem/http4k/concepts/http/index.html +++ b/ecosystem/http4k/concepts/http/index.html @@ -85,4 +85,7 @@ HttpHandler.

    Router

    interface Router {
         fun match(request: Request): RouterMatch
     }
    -

    A selective request handler, which attempts to match an incoming call against a bound HttpHandler.

    \ No newline at end of file +

    A selective request handler, which attempts to match an incoming call against a bound HttpHandler.

    \ No newline at end of file diff --git a/ecosystem/http4k/concepts/lens/index.html b/ecosystem/http4k/concepts/lens/index.html index 3dcdc0d74..f00bd51d1 100644 --- a/ecosystem/http4k/concepts/lens/index.html +++ b/ecosystem/http4k/concepts/lens/index.html @@ -140,4 +140,7 @@ requiredQuery of "myAmazingString", optionalHeader of 123 ) - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/concepts/server-sent-events/index.html b/ecosystem/http4k/concepts/server-sent-events/index.html index c912142d8..8e60fe5e2 100644 --- a/ecosystem/http4k/concepts/server-sent-events/index.html +++ b/ecosystem/http4k/concepts/server-sent-events/index.html @@ -86,4 +86,7 @@ fun withBasePath(new: String): SseRouter fun withFilter(new: SseFilter): SseRouter } -

    Applies the route matching functionality when requests for Sse connections are received by the server.

    \ No newline at end of file +

    Applies the route matching functionality when requests for Sse connections are received by the server.

    \ No newline at end of file diff --git a/ecosystem/http4k/concepts/serverless/index.html b/ecosystem/http4k/concepts/serverless/index.html index 49719242f..bc1a1cb12 100644 --- a/ecosystem/http4k/concepts/serverless/index.html +++ b/ecosystem/http4k/concepts/serverless/index.html @@ -76,4 +76,7 @@

    As per 12-factor configuration principles, the AppLoader is responsible for converting a set of Environment properties (aka System.getEnv()) into the application HttpHandler instance.

    Event-based applications

    Serverless platforms also generally provide the facility to write arbitrary functions which react to events generated within the vendor cloud - e.g on a schedule or when a message is sent to a queue. Whilst the type of events vary by platform, http4k provides a lightweight, easily testable and, most importantly, vendor-neutral API.

    FnHandler

    fun interface FnHandler<In, Ctx, Out> : (In, Ctx) -> Out
     

    The polymorphic interface representing the Serverless function signature for receiving an Event. The Ctx parameter is custom to the vendor platform, but generally encapsulates contextual state regarding the function invocation.

    FnLoader

    typealias FnLoader<Ctx> = (Map<String, String>) -> FnHandler<InputStream, Ctx, InputStream>
     

    As per 12-factor configuration principles, the FnLoader is responsible for converting a set of Environment properties (aka System.getEnv()) into the application FnHandler instance. Note that the result of this call is generified by InputStream request and response types.

    The various http4k Serverless modules also provide a custom converter function to auto-marshall event object in and out of the InputStream, which makes the conversion invisible to the API user.

    FnFilter

    fun interface FnFilter<In, Ctx, Out> : (FnHandler<In, Ctx, Out>) -> FnHandler<In, Ctx, Out>
    -

    Applies decoration to a matched FnHandler before it is invoked. FnFilters can be used to apply tangental effects to the matched FnHandler such as logging, or to modify the incoming event.

    \ No newline at end of file +

    Applies decoration to a matched FnHandler before it is invoked. FnFilters can be used to apply tangental effects to the matched FnHandler such as logging, or to modify the incoming event.

    \ No newline at end of file diff --git a/ecosystem/http4k/concepts/websockets/index.html b/ecosystem/http4k/concepts/websockets/index.html index ced36256f..f45233ad0 100644 --- a/ecosystem/http4k/concepts/websockets/index.html +++ b/ecosystem/http4k/concepts/websockets/index.html @@ -94,4 +94,7 @@ fun withBasePath(new: String): WsRouter fun withFilter(new: WsFilter): WsRouter } -

    Applies the route matching functionality when requests for WebSocket connections are received by the server.

    \ No newline at end of file +

    Applies the route matching functionality when requests for WebSocket connections are received by the server.

    \ No newline at end of file diff --git a/ecosystem/http4k/contributing/index.html b/ecosystem/http4k/contributing/index.html index 7db690695..6c2396056 100644 --- a/ecosystem/http4k/contributing/index.html +++ b/ecosystem/http4k/contributing/index.html @@ -86,4 +86,7 @@ for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, -and YourKit YouMonitor.

    \ No newline at end of file +and YourKit YouMonitor.

    \ No newline at end of file diff --git a/ecosystem/http4k/index.html b/ecosystem/http4k/index.html index 46509a00c..6e29b6c56 100644 --- a/ecosystem/http4k/index.html +++ b/ecosystem/http4k/index.html @@ -168,4 +168,7 @@ // hello Bob }

    Acknowledgments

    Contributors

    This project exists thanks to all the people who contribute. -

    \ No newline at end of file +

    \ No newline at end of file diff --git a/ecosystem/http4k/reference/approvaltests/index.html b/ecosystem/http4k/reference/approvaltests/index.html index 1ba889bcc..939c4f2cc 100644 --- a/ecosystem/http4k/reference/approvaltests/index.html +++ b/ecosystem/http4k/reference/approvaltests/index.html @@ -188,4 +188,7 @@ }

    Implementing custom JUnit Extensions

    As with the rest of http4k, a base implementation, BaseApprovalTest of the Junit5 Extension is provided, allowing API users to implement custom approval schemes or non-FS based approaches for -storing the approval files.

    \ No newline at end of file +storing the approval files.

    \ No newline at end of file diff --git a/ecosystem/http4k/reference/aws/index.html b/ecosystem/http4k/reference/aws/index.html index 51adb0588..3b749c1e5 100644 --- a/ecosystem/http4k/reference/aws/index.html +++ b/ecosystem/http4k/reference/aws/index.html @@ -153,4 +153,7 @@ // delete the bucket println(client(Request(GET, bucketUri))) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/azure/index.html b/ecosystem/http4k/reference/azure/index.html index 64b61e238..d23f52f5a 100644 --- a/ecosystem/http4k/reference/azure/index.html +++ b/ecosystem/http4k/reference/azure/index.html @@ -98,4 +98,7 @@ searchIndexClient.deleteIndex("myIndex") } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/chaos/index.html b/ecosystem/http4k/reference/chaos/index.html index d21b3002d..d54d585de 100644 --- a/ecosystem/http4k/reference/chaos/index.html +++ b/ecosystem/http4k/reference/chaos/index.html @@ -236,4 +236,7 @@ ) println(appWithChaos(Request(GET, "/")).status) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/clients/index.html b/ecosystem/http4k/reference/clients/index.html index d4133ba10..04fc79102 100644 --- a/ecosystem/http4k/reference/clients/index.html +++ b/ecosystem/http4k/reference/clients/index.html @@ -293,4 +293,7 @@ server.stop() } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/cloud_events/index.html b/ecosystem/http4k/reference/cloud_events/index.html index fe24da480..5b0000083 100644 --- a/ecosystem/http4k/reference/cloud_events/index.html +++ b/ecosystem/http4k/reference/cloud_events/index.html @@ -152,4 +152,7 @@ // define a custom event which will be sent/received in the "data" field of the CloudEvent data class MyCloudEventData(val value: Int, val uri: Uri) - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/cloud_native/index.html b/ecosystem/http4k/reference/cloud_native/index.html index 1f8e2317c..fbbfa3ead 100644 --- a/ecosystem/http4k/reference/cloud_native/index.html +++ b/ecosystem/http4k/reference/cloud_native/index.html @@ -212,4 +212,7 @@ // proxied call client(Request(GET, "http://localhost:8000")) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/config/index.html b/ecosystem/http4k/reference/config/index.html index 808b26df9..a48ae87e8 100644 --- a/ecosystem/http4k/reference/config/index.html +++ b/ecosystem/http4k/reference/config/index.html @@ -147,4 +147,7 @@ client(Request(GET, "http://localhost:8001/config")) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/contracts/index.html b/ecosystem/http4k/reference/contracts/index.html index 28e0b88b0..ecb67f987 100644 --- a/ecosystem/http4k/reference/contracts/index.html +++ b/ecosystem/http4k/reference/contracts/index.html @@ -270,4 +270,7 @@

    Receiving Binary content with http4k Contracts (application/octet-stream or multipart etc)

    With binary attachments, you need to turn ensure that the pre-flight validation does not eat the stream. This is possible by instructing http4k to ignore the incoming body for validation purposes:

    routes += "/api/document-upload" meta {
         preFlightExtraction = PreFlightExtraction.IgnoreBody
     } bindContract POST to { req -> Response(OK) }
    -
    \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/core/index.html b/ecosystem/http4k/reference/core/index.html index 04faf64c6..2ae77fb25 100644 --- a/ecosystem/http4k/reference/core/index.html +++ b/ecosystem/http4k/reference/core/index.html @@ -289,4 +289,7 @@ client.received.take(2).forEach(::println)

    Request and Response toString()

    The HttpMessages used by http4k toString in the HTTP wire format, which it simple to capture and replay HTTP message streams later in a similar way to tools like Mountebank.

    CURL format

    Creates curl command for a given request - this is useful to include in audit logs so exact requests can be replayed if required:

    val curl = Request(POST, "http://httpbin.org/post").body(listOf("foo" to "bar").toBody()).toCurl()
     // curl -X POST --data "foo=bar" "http://httpbin.org/post"
    -
    \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/dataframe/index.html b/ecosystem/http4k/reference/dataframe/index.html index 2e43d8d64..e2de3e22d 100644 --- a/ecosystem/http4k/reference/dataframe/index.html +++ b/ecosystem/http4k/reference/dataframe/index.html @@ -128,4 +128,7 @@ println(response.dataFrameCsv<Repository>()) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/digest/index.html b/ecosystem/http4k/reference/digest/index.html index e5d453c09..31f6e20b0 100644 --- a/ecosystem/http4k/reference/digest/index.html +++ b/ecosystem/http4k/reference/digest/index.html @@ -143,4 +143,7 @@ val response = client(request) println(response) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/failsafe/index.html b/ecosystem/http4k/reference/failsafe/index.html index 435407a60..fc3cc3215 100644 --- a/ecosystem/http4k/reference/failsafe/index.html +++ b/ecosystem/http4k/reference/failsafe/index.html @@ -166,4 +166,7 @@ Thread.sleep(1000) } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/graphql/index.html b/ecosystem/http4k/reference/graphql/index.html index c11434c3b..ecc629676 100644 --- a/ecosystem/http4k/reference/graphql/index.html +++ b/ecosystem/http4k/reference/graphql/index.html @@ -152,4 +152,7 @@ println("You can visit the GraphQL playground at: http://localhost:8000") } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/hamkrest/index.html b/ecosystem/http4k/reference/hamkrest/index.html index 0e21c0f7b..fe03de7ba 100644 --- a/ecosystem/http4k/reference/hamkrest/index.html +++ b/ecosystem/http4k/reference/hamkrest/index.html @@ -118,4 +118,7 @@ // composite assertThat(request, hasBody("http4k is cool").and(hasQuery("a", "b"))) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/htmx/index.html b/ecosystem/http4k/reference/htmx/index.html index f57cda9d1..bb9c431f4 100644 --- a/ecosystem/http4k/reference/htmx/index.html +++ b/ecosystem/http4k/reference/htmx/index.html @@ -122,4 +122,7 @@ // We are using Handlebars to power the templates used by this app - see the *.hbs files data object Index : ViewModel data class Time(val date: Date) : ViewModel - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/index.html b/ecosystem/http4k/reference/index.html index f244346ca..613b3c655 100644 --- a/ecosystem/http4k/reference/index.html +++ b/ecosystem/http4k/reference/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    extension modules and integrations

    logo

    The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

    logo

    http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

    pumb
    \ No newline at end of file +

    extension modules and integrations

    logo

    The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

    logo

    http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

    pumb
    \ No newline at end of file diff --git a/ecosystem/http4k/reference/json/index.html b/ecosystem/http4k/reference/json/index.html index f2d2bcab0..f3b960c0f 100644 --- a/ecosystem/http4k/reference/json/index.html +++ b/ecosystem/http4k/reference/json/index.html @@ -297,4 +297,7 @@ // false // true } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/jsonrpc/index.html b/ecosystem/http4k/reference/jsonrpc/index.html index 4ac755bb2..e89950b4d 100644 --- a/ecosystem/http4k/reference/jsonrpc/index.html +++ b/ecosystem/http4k/reference/jsonrpc/index.html @@ -149,4 +149,7 @@ val current = """ {"jsonrpc": "2.0", "method": "current", "id": 3} """ runRequest(current) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/kotest/index.html b/ecosystem/http4k/reference/kotest/index.html index 1b52017a6..69bff45b3 100644 --- a/ecosystem/http4k/reference/kotest/index.html +++ b/ecosystem/http4k/reference/kotest/index.html @@ -125,4 +125,7 @@ // composite request should (haveQuery("a", "b") and haveBody("http4k is cool")) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/micrometer/index.html b/ecosystem/http4k/reference/micrometer/index.html index 649ae8908..61c19b41b 100644 --- a/ecosystem/http4k/reference/micrometer/index.html +++ b/ecosystem/http4k/reference/micrometer/index.html @@ -120,4 +120,7 @@ // see some results registry.forEachMeter { println("${it.id} ${it.measure().joinToString(",")}") } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/multipart/index.html b/ecosystem/http4k/reference/multipart/index.html index 2a48f6f6f..f8fe626c3 100644 --- a/ecosystem/http4k/reference/multipart/index.html +++ b/ecosystem/http4k/reference/multipart/index.html @@ -81,4 +81,7 @@

    About

    Multipart form support for fields and files, including a set of lens extensions for fields/files.

    See the how-to guides for example use.

    Receiving Binary content with http4k Contracts

    With binary attachments, you need to turn ensure that the pre-flight validation does not eat the stream. This is possible by instructing http4k to ignore the incoming body for validation purposes:

    routes += "/api/document-upload" meta {
         preFlightExtraction = PreFlightExtraction.IgnoreBody
     } bindContract POST to { req -> Response(OK) }
    -
    \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/oauth/index.html b/ecosystem/http4k/reference/oauth/index.html index 51660fe0e..7b98ff9bf 100644 --- a/ecosystem/http4k/reference/oauth/index.html +++ b/ecosystem/http4k/reference/oauth/index.html @@ -173,4 +173,7 @@ val response = client(request) println(response) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/opentelemetry/index.html b/ecosystem/http4k/reference/opentelemetry/index.html index e25ae7d4b..1137589a3 100644 --- a/ecosystem/http4k/reference/opentelemetry/index.html +++ b/ecosystem/http4k/reference/opentelemetry/index.html @@ -179,4 +179,7 @@ ) } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/playwright/index.html b/ecosystem/http4k/reference/playwright/index.html index c622bcacc..21b6c5e6f 100644 --- a/ecosystem/http4k/reference/playwright/index.html +++ b/ecosystem/http4k/reference/playwright/index.html @@ -123,4 +123,7 @@ } } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/resilience4j/index.html b/ecosystem/http4k/reference/resilience4j/index.html index 5bbf84e95..66aac8f69 100644 --- a/ecosystem/http4k/reference/resilience4j/index.html +++ b/ecosystem/http4k/reference/resilience4j/index.html @@ -246,4 +246,7 @@ } } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/serverless/index.html b/ecosystem/http4k/reference/serverless/index.html index e94c5cd08..06f4d3535 100644 --- a/ecosystem/http4k/reference/serverless/index.html +++ b/ecosystem/http4k/reference/serverless/index.html @@ -432,4 +432,7 @@ }

    Packaging of the app should be done using ShadowJar and then an action created with the wsk CLI:

    wsk -i action create myFunctionName myApp.jar --main org.http4k.example.MyFunctionClass --web true
     

    Locally, you can then just call the function with curl:

    curl -k `wsk -i action get test --url | tail -1`
    -
    \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/servers/index.html b/ecosystem/http4k/reference/servers/index.html index 6a6ad60e0..6d845023a 100644 --- a/ecosystem/http4k/reference/servers/index.html +++ b/ecosystem/http4k/reference/servers/index.html @@ -123,4 +123,7 @@ }

    Customisation

    Each of the server backends implement an interface ServerConfig, which is written with sensible defaults for the server in questions, but is also designed to be used as a starting point for tweaking to API user needs. To customize, simply use the relevant ServerConfig -class as a starting point and reimplement as required. See the how-to guides for an example of this in use.

    \ No newline at end of file +class as a starting point and reimplement as required. See the how-to guides for an example of this in use.

    \ No newline at end of file diff --git a/ecosystem/http4k/reference/servicevirtualisation/index.html b/ecosystem/http4k/reference/servicevirtualisation/index.html index 484b6ca72..449285aad 100644 --- a/ecosystem/http4k/reference/servicevirtualisation/index.html +++ b/ecosystem/http4k/reference/servicevirtualisation/index.html @@ -78,4 +78,7 @@ implementation("org.http4k:http4k-testing-servirtium") } -

    About

    Service Virtualisation testing technology provides a way of declaring contracts which can record HTTP conversations to a custom Markdown format and then replaying them later offline. http4k provides a fully featured implementation of the Servirtium solution to implement this concept.

    The basic idea is that you define an abstract contract Class/Interface which describes the expected behaviour for a system using a Client class (aka the Client-Under-Test). This contract is then implemented twice:

    1. In a Recording contract - using a MiTM proxy which sits between the Client-Under-Test and the real service. This proxy records the HTTP traffic to a custom Markdown format which can be stored in a VCS, and can be configured to remove the dynamic sections of the traffic such as Date headers etc.
    2. In a Replaying contract - using an MiTM server which matches incoming traffic and replays a recorded conversation for the matched requests in order from the Markdown file.

    The result of these 2 implementations is that we can exercise the Client-Under-Test code against different versions of the contract without performing any actual remote calls to prove compatibility. This is important because there may be complicated orchestration required for testing against a real system, or the end service may be unavailable or flaky.

    http4k provides a few different pieces of support for [Serviritum]:

    1. [JUnit5] extensions which provide the record/replay behaviour, providing a way to record and replay contracts without the use of a real server. This is only compatible when the Client-Under-Test utilises a http4k Client, since it leverages the Server-as-a-Function paradigm.

    2. MiTM proxy servers for record/replay behaviour, by inserting themselves as a proxy in the HTTP call chain and intercepting the HTTP traffic. This is compatible with HTTP clients using any JVM technology, not just http4k services - so can be used as a general JVM-based solution for implementing Servirtium-style tests.

    3. A Storage Provider abstraction for storing and loading recorded contracts from various locations including disk and directly from GitHub.

    Examples of use

    Climate API Demo: github.com/http4k/servirtium-demo-kotlin-climate-tck. The climate API tested uses a simple programatic wrapper for World Bank’s climate-data service. It can respond to requests with XML or JSON payloads, and the http4k-testing-servirtium module can record and payback either. This is a standard showcase for Servirtium.

    Kotlin Examples:

    Java Examples:

    \ No newline at end of file +

    About

    Service Virtualisation testing technology provides a way of declaring contracts which can record HTTP conversations to a custom Markdown format and then replaying them later offline. http4k provides a fully featured implementation of the Servirtium solution to implement this concept.

    The basic idea is that you define an abstract contract Class/Interface which describes the expected behaviour for a system using a Client class (aka the Client-Under-Test). This contract is then implemented twice:

    1. In a Recording contract - using a MiTM proxy which sits between the Client-Under-Test and the real service. This proxy records the HTTP traffic to a custom Markdown format which can be stored in a VCS, and can be configured to remove the dynamic sections of the traffic such as Date headers etc.
    2. In a Replaying contract - using an MiTM server which matches incoming traffic and replays a recorded conversation for the matched requests in order from the Markdown file.

    The result of these 2 implementations is that we can exercise the Client-Under-Test code against different versions of the contract without performing any actual remote calls to prove compatibility. This is important because there may be complicated orchestration required for testing against a real system, or the end service may be unavailable or flaky.

    http4k provides a few different pieces of support for [Serviritum]:

    1. [JUnit5] extensions which provide the record/replay behaviour, providing a way to record and replay contracts without the use of a real server. This is only compatible when the Client-Under-Test utilises a http4k Client, since it leverages the Server-as-a-Function paradigm.

    2. MiTM proxy servers for record/replay behaviour, by inserting themselves as a proxy in the HTTP call chain and intercepting the HTTP traffic. This is compatible with HTTP clients using any JVM technology, not just http4k services - so can be used as a general JVM-based solution for implementing Servirtium-style tests.

    3. A Storage Provider abstraction for storing and loading recorded contracts from various locations including disk and directly from GitHub.

    Examples of use

    Climate API Demo: github.com/http4k/servirtium-demo-kotlin-climate-tck. The climate API tested uses a simple programatic wrapper for World Bank’s climate-data service. It can respond to requests with XML or JSON payloads, and the http4k-testing-servirtium module can record and payback either. This is a standard showcase for Servirtium.

    Kotlin Examples:

    Java Examples:

    \ No newline at end of file diff --git a/ecosystem/http4k/reference/strikt/index.html b/ecosystem/http4k/reference/strikt/index.html index f8f66cbcd..671fb0341 100644 --- a/ecosystem/http4k/reference/strikt/index.html +++ b/ecosystem/http4k/reference/strikt/index.html @@ -116,4 +116,7 @@ query("a").isEqualTo("b") } } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/templating/index.html b/ecosystem/http4k/reference/templating/index.html index dd9418c88..ded2781d1 100644 --- a/ecosystem/http4k/reference/templating/index.html +++ b/ecosystem/http4k/reference/templating/index.html @@ -149,4 +149,7 @@

    Notes for Rocker

    Rocker differs slightly from the dynamic templating engines in that it generates Java classes at compile time. In order to fit this into the http4k model, we have created a special superclass RockerViewModel (which combines the Rocker and the http4k ViewModel interfaces into a common supertype). This should be used as the extendsModelClass property in the generation process by configuration. Note that as the generated classes are Java and NOT Kotlin, Java syntax should be used inside the view files (which need to be named Xyz.rocker.html).

    Notes for Pebble

    The way the underlying model is exposed for Pebble templates differs from the rest of the templating engines. The properties of the ViewModel object are bound to the view context under a model key, rather than directly into the template context itself.

    This means that the model. prefix is required to access the properties of the underlying object in a Pebble template.

    In other words, rendering a firstName property, for example, is done using:

    {{ model.firstName }}
     

    instead of

    {{ firstName }}
    -
    \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/testing/index.html b/ecosystem/http4k/reference/testing/index.html index 9e55859b5..df0200f83 100644 --- a/ecosystem/http4k/reference/testing/index.html +++ b/ecosystem/http4k/reference/testing/index.html @@ -76,4 +76,7 @@ The API has been designed to make it as simple as possible to test both individual endpoints and entire applications in a consistent fashion, which is aided by remembering that:

    1. The input and output Request/Response objects are immutable.
    2. HttpHandlers are just functions.
    3. An entire http4k application is just an HttpHandler.

    Because of the above, there really isn’t much required in the way of “testing infrastructure” - no magic containers or test fixtures that you might find in other frameworks. Testing is just matter of calling the correct function! Additionally, because the server and client HttpHandler interfaces are symmetrical - moving between in and out of container contexts (or indeed even to another HTTP framework entirely) is just a matter of switching out the HttpHandler implementation from the constructed app (out of container) to an HTTP client (in-container).

    That said, possibly the most useful thing is to demonstrate the process that we have developed to test micro-services. A simple example of the development process can be found -here.

    Testing modules

    We have developed the following modules to help with testing:

    • http4k-testing-approval: JUnit 5 extensions for Approval testing of http4k Request and Response messages.
    • http4k-testing-chaos: API for declaring and injecting failure modes into http4k applications, allowing modelling and hence answering of “what if” style questions to help understand how code fares under failure conditions such as latency and dying processes.
    • http4k-testing-hamkrest: a set of composable Hamkrest matchers for matching http4k objects against.
    • http4k-testing-kotest: a set of composable Kotest matchers for matching http4k objects against.
    • http4k-testing-servitium: a fully featured implementation of the Servirtium solution for Service Virtualization testing approach.
    • http4k-testing-strikt: a set of custom Strikt assertions for matching http4k objects against.
    • http4k-testing-webdriver: an ultra-lightweight Selenium WebDriver implementation which can be used to test-drive http4k apps (ie. HttpHandlers).
    \ No newline at end of file +here.

    Testing modules

    We have developed the following modules to help with testing:

    • http4k-testing-approval: JUnit 5 extensions for Approval testing of http4k Request and Response messages.
    • http4k-testing-chaos: API for declaring and injecting failure modes into http4k applications, allowing modelling and hence answering of “what if” style questions to help understand how code fares under failure conditions such as latency and dying processes.
    • http4k-testing-hamkrest: a set of composable Hamkrest matchers for matching http4k objects against.
    • http4k-testing-kotest: a set of composable Kotest matchers for matching http4k objects against.
    • http4k-testing-servitium: a fully featured implementation of the Servirtium solution for Service Virtualization testing approach.
    • http4k-testing-strikt: a set of custom Strikt assertions for matching http4k objects against.
    • http4k-testing-webdriver: an ultra-lightweight Selenium WebDriver implementation which can be used to test-drive http4k apps (ie. HttpHandlers).
    \ No newline at end of file diff --git a/ecosystem/http4k/reference/tracerbullet/index.html b/ecosystem/http4k/reference/tracerbullet/index.html index 618e934c6..d2213c3a7 100644 --- a/ecosystem/http4k/reference/tracerbullet/index.html +++ b/ecosystem/http4k/reference/tracerbullet/index.html @@ -228,4 +228,7 @@ assertThat(User(events, internalApp).initiateCall(), hasStatus(OK)) } } -

    An extended example of this technique can be found at the this repository.

    \ No newline at end of file +

    An extended example of this technique can be found at the this repository.

    \ No newline at end of file diff --git a/ecosystem/http4k/reference/webdriver/index.html b/ecosystem/http4k/reference/webdriver/index.html index 813d8cc90..edd9b9db6 100644 --- a/ecosystem/http4k/reference/webdriver/index.html +++ b/ecosystem/http4k/reference/webdriver/index.html @@ -108,4 +108,7 @@ // hello // <title>hello</title> } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/webhooks/index.html b/ecosystem/http4k/reference/webhooks/index.html index b7458a191..9ce866a71 100644 --- a/ecosystem/http4k/reference/webhooks/index.html +++ b/ecosystem/http4k/reference/webhooks/index.html @@ -147,4 +147,7 @@ server.stop() } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/xml/index.html b/ecosystem/http4k/reference/xml/index.html index e96b43eaa..0c7b2939b 100644 --- a/ecosystem/http4k/reference/xml/index.html +++ b/ecosystem/http4k/reference/xml/index.html @@ -143,4 +143,7 @@ println(messageLens(requestWithEmail)) } - \ No newline at end of file + \ No newline at end of file diff --git a/ecosystem/http4k/reference/yaml/index.html b/ecosystem/http4k/reference/yaml/index.html index a7d85d6da..8461dfb4f 100644 --- a/ecosystem/http4k/reference/yaml/index.html +++ b/ecosystem/http4k/reference/yaml/index.html @@ -79,4 +79,7 @@ implementation("org.http4k:http4k-format-jackson-yaml") implementation("org.http4k:http4k-format-moshi-yaml") } -

    About

    These modules add the ability to use YAML as a first-class citizen when reading from and to HTTP messages.

    \ No newline at end of file +

    About

    These modules add the ability to use YAML as a first-class citizen when reading from and to HTTP messages.

    \ No newline at end of file diff --git a/ecosystem/index.html b/ecosystem/index.html index 91730036d..7bc2e4653 100644 --- a/ecosystem/index.html +++ b/ecosystem/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Ecosystem Overview

    The http4k Ecosystem exists as a number of sub-ecosystems, each with its own focus and set of modules, and each designed with a philosophy of simplicity and efficiency. These modules are lightweight, with minimal dependencies, ensuring that you only pull in what you need. This makes it ideal for those seeking fine-grained control over their dependencies while keeping the overall application size manageable. This modular nature enables developers to build applications incrementally, integrating only the required components without unnecessary bloat.

    As per our ethos, another core principle of the http4k ecosystem is its test-first approach. Each module is crafted to be fully testable without needing external infrastructure, empowering developers to create reliable, well-tested applications from the outset. This focus on testing at all levels makes http4k particularly well-suited for environments where code quality and reliability are paramount.

    logo

    The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

    logo

    http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

    pumb
    \ No newline at end of file +

    Ecosystem Overview

    The http4k Ecosystem exists as a number of sub-ecosystems, each with its own focus and set of modules, and each designed with a philosophy of simplicity and efficiency. These modules are lightweight, with minimal dependencies, ensuring that you only pull in what you need. This makes it ideal for those seeking fine-grained control over their dependencies while keeping the overall application size manageable. This modular nature enables developers to build applications incrementally, integrating only the required components without unnecessary bloat.

    As per our ethos, another core principle of the http4k ecosystem is its test-first approach. Each module is crafted to be fully testable without needing external infrastructure, empowering developers to create reliable, well-tested applications from the outset. This focus on testing at all levels makes http4k particularly well-suited for environments where code quality and reliability are paramount.

    logo

    The core ecosystem is the foundation of the http4k project, providing the essential building blocks for creating HTTP servers and clients. This ecosystem is designed to be lightweight, efficient, and testable, making it ideal for building reliable, high-performance applications.

    logo

    http4k Connect is designed to facilitate seamless integration with external systems and services from the client viewpoint. It is optimised for zero-reflection, ideal for native and serverless use. It ships with in-memory fakes for testing without Docker and keeps dependencies minimal for small binary sizes.

    pumb
    \ No newline at end of file diff --git a/faq/index.html b/faq/index.html index ddc2b9986..9737d8c97 100644 --- a/faq/index.html +++ b/faq/index.html @@ -78,4 +78,7 @@ } bindContract POST to { req -> Response(OK) }

    Serverless

    Q. When using AWS Lambda, I get an “method is invalid” error when testing my lambda.

    A. This comes from the fact that there are 2 different payload formats for AWS Lambda HTTP functions. We support both v1 and v2 formats, but recommend V2 is used as the JSON format is superior. To fix the problem, ensure that your Lambda function payload version matches the name -of the AWS adapter function class being used (v1 or v2)

    pumb
    \ No newline at end of file +of the AWS adapter function class being used (v1 or v2)

    pumb
    \ No newline at end of file diff --git a/howto/arrange_filters_into_stacks/index.html b/howto/arrange_filters_into_stacks/index.html index 2e63cc131..8238026cd 100644 --- a/howto/arrange_filters_into_stacks/index.html +++ b/howto/arrange_filters_into_stacks/index.html @@ -148,4 +148,7 @@ // this just proxies the request to the internet app(Request(GET, "https://http4k.org")) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/attach_context_to_a_request/index.html b/howto/attach_context_to_a_request/index.html index bd630731b..c12a59e72 100644 --- a/howto/attach_context_to_a_request/index.html +++ b/howto/attach_context_to_a_request/index.html @@ -171,4 +171,7 @@ app(Request(GET, "/hello")) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/client_as_a_function/index.html b/howto/client_as_a_function/index.html index 74eb083c3..d4ee54854 100644 --- a/howto/client_as_a_function/index.html +++ b/howto/client_as_a_function/index.html @@ -93,4 +93,7 @@ println(client(request)) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/configure_an_oauth_server/index.html b/howto/configure_an_oauth_server/index.html index 3080766b0..f78888cce 100644 --- a/howto/configure_an_oauth_server/index.html +++ b/howto/configure_an_oauth_server/index.html @@ -244,4 +244,7 @@ tokenRequest: AuthorizationCodeAccessTokenRequest ) = Success(AccessToken(UUID.randomUUID().toString())) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/create_a_custom_json_marshaller/index.html b/howto/create_a_custom_json_marshaller/index.html index 43fb7c153..1e7c119c7 100644 --- a/howto/create_a_custom_json_marshaller/index.html +++ b/howto/create_a_custom_json_marshaller/index.html @@ -187,4 +187,7 @@ */ } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/create_a_swagger_ui/index.html b/howto/create_a_swagger_ui/index.html index a07085fd8..0bb3dca03 100644 --- a/howto/create_a_swagger_ui/index.html +++ b/howto/create_a_swagger_ui/index.html @@ -198,4 +198,7 @@ } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/customise_a_server_backend/index.html b/howto/customise_a_server_backend/index.html index 21ee92f6f..734c3fa4a 100644 --- a/howto/customise_a_server_backend/index.html +++ b/howto/customise_a_server_backend/index.html @@ -149,4 +149,7 @@ ) ).start() } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/deploy_webjars/index.html b/howto/deploy_webjars/index.html index 5075d71c5..e04b133cc 100644 --- a/howto/deploy_webjars/index.html +++ b/howto/deploy_webjars/index.html @@ -105,4 +105,7 @@ // then browse to: http://localhost:8080/webjars/swagger-ui/5.1.3/index.html } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/implement-your-own-clients/index.html b/howto/implement-your-own-clients/index.html index a425e1ff4..35905b2b0 100644 --- a/howto/implement-your-own-clients/index.html +++ b/howto/implement-your-own-clients/index.html @@ -89,4 +89,7 @@ fun MySystem.Companion.Http(http: HttpHandler) = object : MySystem { override fun <R : Any> invoke(action: MySystemAction<R>) = action.toResult(http(action.toRequest())) } -

    See also the guide on using KSP to generate extension functions for your clients!

    \ No newline at end of file +

    See also the guide on using KSP to generate extension functions for your clients!

    \ No newline at end of file diff --git a/howto/index.html b/howto/index.html index 2bee3e315..44dad83b7 100644 --- a/howto/index.html +++ b/howto/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    How-To Guides

    The meat of the http4k documentation is in this section, in which you’ll find ready made solutions to many common use-cases. Because if you’ve got something to achieve - it’s pretty likely that we’ve probably come across it already 😉. Check out the nav on the left for the list of recipes.

    The format for the recipes contains:

    • Required Gradle dependencies
    • A brief description of the problem
    • Fully runnable code example displaying the solution.

    Think of it like a mini StackOverflow - but better because you’ve got the entire solution available to adapt to your particular use-case - 😃.

    As a community-driven project, we would welcome new or updated recipes to make http4k easier to use. The format of the new and updated recipes should follow this Markdown template.

    Read more about the theory behind How-to guides here.

    Arrange Filters into stacks

    A strategy for composing your applications

    http4k Core
    Authentication for HTTP services

    Recipes for how to secure and authenticate HTTP services

    http4k Core
    Client as a function

    Recipes for using http4k to consume HTTP services

    http4k Core
    Configure an OAuth_Server

    Recipe for using http4k to create an authorization server that provides an authorization code access flow

    http4k Core
    Create a custom JSON marshaller

    Recipes for using JSON in http4k applications with a variety of popular JSON APIS

    http4k Core
    Customise a Server backend

    How to use write custom servers backends

    http4k Core
    Deploy WebJars

    Recipe for using WebJars with http4k

    http4k Core
    Implement your own clients

    How to implement your own clients for the Connect pattern

    http4k Connect
    Integrate with OpenAPI

    Recipes for using the http4k-contract module to provide typesafe endpoints with automatically generated OpenAPI documentation

    http4k Core
    Leverage GraphQL

    Recipe for using GraphQL plugins

    http4k Core
    Lookup a user principal

    Recipes for looking up and populating a user principal from a request

    http4k Core
    Make HTTP calls in parallel

    Recipe to make HTTP calls in parallel using a ThreadPoolExecutor

    http4k Core
    Make JSON Faster

    Recipes to make JSON faster through the use of lighter reflection or code generation

    http4k Core
    Monitor http4k

    How to monitor http4k endpoints and applications

    http4k Core
    Pimp your Connect API Clients with KSP!

    How to use KSP to generate extension functions for your Connect clients

    http4k Connect
    Record and replay HTTP traffic

    Recipes for using http4k to record and replay HTTP traffic

    http4k Core
    Redoc and Swagger UI

    Create a Redoc or Swagger UI for your REST API

    http4k Core
    Request Contexts

    Recipes for using http4k with per-request context objects

    http4k Core
    Routing API (Advanced)

    Recipes for using the http4k composable routing API, including serving static content

    http4k Core
    Routing API (Simple)

    Recipes for using the http4k composable routing API

    http4k Core
    Self Document Systems with Tests

    Recipe for creating a Distributed Tracing Tree

    http4k Core
    Serve SSE

    Recipes for using http4k with Server-Sent Events

    http4k Core
    Serve Websocket

    Recipes for using http4k with websockets

    http4k Core
    Server-as-a-Function

    The simplest example of an http4k application

    http4k Core
    Structure your logs with Events

    Recipe for using http4k Events to send structured logs to external log sinks

    http4k Core
    Test using Service Virtualisation

    Implementing Service Virtualisation using Servirtium contracts

    http4k Core
    Typesafe your API with lenses

    Recipes for using the inbuilt http4k Lens API to marshall HTTP messages on and off the wire in a typesafe fashion

    http4k Core
    Use a custom OAuth provider

    Recipe for using http4k with custom OAuth provider

    http4k Core
    Use a Server backend

    Recipes for using http4k with the various Server backends

    http4k Core
    Use a templating engine

    Recipes for using server-side templating engines with http4k applications, including hot-reload functionality

    http4k Core
    Use Auto Content Negotiation

    Recipes for using the Auto Content Negotiation Lens to marshall and unmarshall HTTP messages of various formats

    http4k Core
    Use HTML Forms

    Recipes for using http4k with HTML forms

    http4k Core
    Use Multipart Forms

    Recipes for using http4k with Multipart forms

    http4k Core
    Write different test types

    Recipes for testing http4k applications

    http4k Core
    pumb
    \ No newline at end of file +

    How-To Guides

    The meat of the http4k documentation is in this section, in which you’ll find ready made solutions to many common use-cases. Because if you’ve got something to achieve - it’s pretty likely that we’ve probably come across it already 😉. Check out the nav on the left for the list of recipes.

    The format for the recipes contains:

    • Required Gradle dependencies
    • A brief description of the problem
    • Fully runnable code example displaying the solution.

    Think of it like a mini StackOverflow - but better because you’ve got the entire solution available to adapt to your particular use-case - 😃.

    As a community-driven project, we would welcome new or updated recipes to make http4k easier to use. The format of the new and updated recipes should follow this Markdown template.

    Read more about the theory behind How-to guides here.

    Arrange Filters into stacks

    A strategy for composing your applications

    http4k Core
    Authentication for HTTP services

    Recipes for how to secure and authenticate HTTP services

    http4k Core
    Client as a function

    Recipes for using http4k to consume HTTP services

    http4k Core
    Configure an OAuth_Server

    Recipe for using http4k to create an authorization server that provides an authorization code access flow

    http4k Core
    Create a custom JSON marshaller

    Recipes for using JSON in http4k applications with a variety of popular JSON APIS

    http4k Core
    Customise a Server backend

    How to use write custom servers backends

    http4k Core
    Deploy WebJars

    Recipe for using WebJars with http4k

    http4k Core
    Implement your own clients

    How to implement your own clients for the Connect pattern

    http4k Connect
    Integrate with OpenAPI

    Recipes for using the http4k-contract module to provide typesafe endpoints with automatically generated OpenAPI documentation

    http4k Core
    Leverage GraphQL

    Recipe for using GraphQL plugins

    http4k Core
    Lookup a user principal

    Recipes for looking up and populating a user principal from a request

    http4k Core
    Make HTTP calls in parallel

    Recipe to make HTTP calls in parallel using a ThreadPoolExecutor

    http4k Core
    Make JSON Faster

    Recipes to make JSON faster through the use of lighter reflection or code generation

    http4k Core
    Monitor http4k

    How to monitor http4k endpoints and applications

    http4k Core
    Pimp your Connect API Clients with KSP!

    How to use KSP to generate extension functions for your Connect clients

    http4k Connect
    Record and replay HTTP traffic

    Recipes for using http4k to record and replay HTTP traffic

    http4k Core
    Redoc and Swagger UI

    Create a Redoc or Swagger UI for your REST API

    http4k Core
    Request Contexts

    Recipes for using http4k with per-request context objects

    http4k Core
    Routing API (Advanced)

    Recipes for using the http4k composable routing API, including serving static content

    http4k Core
    Routing API (Simple)

    Recipes for using the http4k composable routing API

    http4k Core
    Self Document Systems with Tests

    Recipe for creating a Distributed Tracing Tree

    http4k Core
    Serve SSE

    Recipes for using http4k with Server-Sent Events

    http4k Core
    Serve Websocket

    Recipes for using http4k with websockets

    http4k Core
    Server-as-a-Function

    The simplest example of an http4k application

    http4k Core
    Structure your logs with Events

    Recipe for using http4k Events to send structured logs to external log sinks

    http4k Core
    Test using Service Virtualisation

    Implementing Service Virtualisation using Servirtium contracts

    http4k Core
    Typesafe your API with lenses

    Recipes for using the inbuilt http4k Lens API to marshall HTTP messages on and off the wire in a typesafe fashion

    http4k Core
    Use a custom OAuth provider

    Recipe for using http4k with custom OAuth provider

    http4k Core
    Use a Server backend

    Recipes for using http4k with the various Server backends

    http4k Core
    Use a templating engine

    Recipes for using server-side templating engines with http4k applications, including hot-reload functionality

    http4k Core
    Use Auto Content Negotiation

    Recipes for using the Auto Content Negotiation Lens to marshall and unmarshall HTTP messages of various formats

    http4k Core
    Use HTML Forms

    Recipes for using http4k with HTML forms

    http4k Core
    Use Multipart Forms

    Recipes for using http4k with Multipart forms

    http4k Core
    Write different test types

    Recipes for testing http4k applications

    http4k Core
    pumb
    \ No newline at end of file diff --git a/howto/integrate_with_openapi/index.html b/howto/integrate_with_openapi/index.html index 48d36c8ea..c3670675c 100644 --- a/howto/integrate_with_openapi/index.html +++ b/howto/integrate_with_openapi/index.html @@ -200,4 +200,7 @@ // Static content: curl -v "http://localhost:8000/static/someStaticFile.txt" // OpenApi/Swagger documentation: curl -v "http://localhost:8000/context/docs/openapi.json" // Echo endpoint (at root): curl -v "http://localhost:8000/echo/hello?age=123" - \ No newline at end of file + \ No newline at end of file diff --git a/howto/leverage_graphql/index.html b/howto/leverage_graphql/index.html index 11d554769..062a2ef10 100644 --- a/howto/leverage_graphql/index.html +++ b/howto/leverage_graphql/index.html @@ -212,4 +212,7 @@ }""" ) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/lookup_a_user_principal/index.html b/howto/lookup_a_user_principal/index.html index 364913c85..0f5fa7e28 100644 --- a/howto/lookup_a_user_principal/index.html +++ b/howto/lookup_a_user_principal/index.html @@ -104,4 +104,7 @@ println(app(Request(GET, "/").header("Authorization", "Bearer 41"))) println(app(Request(GET, "/").header("Authorization", "Bearer 42"))) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/make_json_faster/index.html b/howto/make_json_faster/index.html index 8055c8221..7a75df614 100644 --- a/howto/make_json_faster/index.html +++ b/howto/make_json_faster/index.html @@ -247,4 +247,7 @@ // val lens = json.autoBody<KotshiCat>().toLens() // Request(Method.GET, "foo").with(lens of cat) //} - \ No newline at end of file + \ No newline at end of file diff --git a/howto/make_parallel_calls/index.html b/howto/make_parallel_calls/index.html index 843155ba3..710f148c5 100644 --- a/howto/make_parallel_calls/index.html +++ b/howto/make_parallel_calls/index.html @@ -157,4 +157,7 @@ runningServer.stop() } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/monitor_http4k/index.html b/howto/monitor_http4k/index.html index 0802b4806..2a2087e07 100644 --- a/howto/monitor_http4k/index.html +++ b/howto/monitor_http4k/index.html @@ -278,4 +278,7 @@ debuggedApp(Request(GET, "/foobar").header("Accepted", "my-great-content/type")) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/nestable_routes/index.html b/howto/nestable_routes/index.html index 3d964dc19..c044a6446 100644 --- a/howto/nestable_routes/index.html +++ b/howto/nestable_routes/index.html @@ -159,4 +159,7 @@ println(app(Request(GET, "/matching").header("requiredheader", "somevalue"))) println(app(Request(GET, "/someSpaResource"))) } -

    For the typesafe contract-style routing, refer to this recipe instead,

    \ No newline at end of file +

    For the typesafe contract-style routing, refer to this recipe instead,

    \ No newline at end of file diff --git a/howto/pimp-your-clients-with-ksp/index.html b/howto/pimp-your-clients-with-ksp/index.html index dd3b7f4ca..17ab01fc0 100644 --- a/howto/pimp-your-clients-with-ksp/index.html +++ b/howto/pimp-your-clients-with-ksp/index.html @@ -105,4 +105,7 @@

    … which allows anyone to call it as if it was a standard method:

    val api = API(JavaHttpClient())
     
     val result: Result<String, RemoteFailure> = api.reverse("hello")
    -
    \ No newline at end of file + \ No newline at end of file diff --git a/howto/record_and_replay_http_traffic/index.html b/howto/record_and_replay_http_traffic/index.html index 897d2560c..2401a9422 100644 --- a/howto/record_and_replay_http_traffic/index.html +++ b/howto/record_and_replay_http_traffic/index.html @@ -141,4 +141,7 @@ val client = ApacheClient() storage.requests().forEach { println(client(it)) } } -

    Concepts

    The org.http4k.traffic package contains the interfaces which make up the core concepts for traffic capture and replay. These interfaces are:

    • A Sink consumes request/response pairs for storage.
    • A Source provides lookup of pre-stored Response based on an HTTP Request.
    • Replay instances provide streams of HTTP messages as they were received.
    • A ReadWriteCache combines Sink and Source to provide cache-like storage.
    • A ReadWriteStream combines Sink and Replay to provide a stream of traffic which can be replayed.

    The API has been designed to be modular so API users can provide their own implementations (store in S3 etc..).

    \ No newline at end of file +

    Concepts

    The org.http4k.traffic package contains the interfaces which make up the core concepts for traffic capture and replay. These interfaces are:

    • A Sink consumes request/response pairs for storage.
    • A Source provides lookup of pre-stored Response based on an HTTP Request.
    • Replay instances provide streams of HTTP messages as they were received.
    • A ReadWriteCache combines Sink and Source to provide cache-like storage.
    • A ReadWriteStream combines Sink and Replay to provide a stream of traffic which can be replayed.

    The API has been designed to be modular so API users can provide their own implementations (store in S3 etc..).

    \ No newline at end of file diff --git a/howto/secure_and_auth_http/index.html b/howto/secure_and_auth_http/index.html index fe4fdb871..8395f36fc 100644 --- a/howto/secure_and_auth_http/index.html +++ b/howto/secure_and_auth_http/index.html @@ -207,4 +207,7 @@ } ).asServer(SunHttp(8000)) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/self_document_systems_with_tests/index.html b/howto/self_document_systems_with_tests/index.html index 88159344b..e8f2ac1cd 100644 --- a/howto/self_document_systems_with_tests/index.html +++ b/howto/self_document_systems_with_tests/index.html @@ -221,4 +221,7 @@ assertThat(User(events, internalApp).initiateCall(), hasStatus(OK)) } } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/serve_sse/index.html b/howto/serve_sse/index.html index 995129936..1c8cd7a3b 100644 --- a/howto/serve_sse/index.html +++ b/howto/serve_sse/index.html @@ -130,4 +130,7 @@ PolyHandler(http, sse = sse).asServer(Undertow(9000)).start() } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/serve_websockets/index.html b/howto/serve_websockets/index.html index 10df664fb..a9db80490 100644 --- a/howto/serve_websockets/index.html +++ b/howto/serve_websockets/index.html @@ -243,4 +243,7 @@ server.stop() } } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/server_as_a_function/index.html b/howto/server_as_a_function/index.html index 7bf2f8f08..6fbf091cb 100644 --- a/howto/server_as_a_function/index.html +++ b/howto/server_as_a_function/index.html @@ -98,4 +98,7 @@ println(response) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/simple_routing/index.html b/howto/simple_routing/index.html index 54ff832a0..e1f993086 100644 --- a/howto/simple_routing/index.html +++ b/howto/simple_routing/index.html @@ -101,4 +101,7 @@ println(app(Request(POST, "/rita"))) println(app(Request(DELETE, "/sue"))) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/structure_your_logs_with_events/index.html b/howto/structure_your_logs_with_events/index.html index 0816f71a7..ab3d5864f 100644 --- a/howto/structure_your_logs_with_events/index.html +++ b/howto/structure_your_logs_with_events/index.html @@ -157,4 +157,7 @@ } } } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/test_using_service_virtualisation/index.html b/howto/test_using_service_virtualisation/index.html index fe5ce01ad..94bf8f798 100644 --- a/howto/test_using_service_virtualisation/index.html +++ b/howto/test_using_service_virtualisation/index.html @@ -403,4 +403,7 @@ servirtium.stop() } } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/typesafe_your_api_with_lenses/index.html b/howto/typesafe_your_api_with_lenses/index.html index 6d5e78593..a8d43caed 100644 --- a/howto/typesafe_your_api_with_lenses/index.html +++ b/howto/typesafe_your_api_with_lenses/index.html @@ -169,4 +169,7 @@ val jsonResult: Result<JsonNode, LensFailure> = jsonResultLens(Request(GET, "/foo")) println(jsonResult) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/use_a_custom_oauth_provider/index.html b/howto/use_a_custom_oauth_provider/index.html index 34faeda84..af5c893de 100644 --- a/howto/use_a_custom_oauth_provider/index.html +++ b/howto/use_a_custom_oauth_provider/index.html @@ -193,4 +193,7 @@ return redirect.header("action", "assignToken") } } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/use_a_server_backend/index.html b/howto/use_a_server_backend/index.html index 6672584ff..f505ab2f0 100644 --- a/howto/use_a_server_backend/index.html +++ b/howto/use_a_server_backend/index.html @@ -104,4 +104,7 @@ jettyServer.stop() } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/use_a_templating_engine/index.html b/howto/use_a_templating_engine/index.html index a7a527ec7..d6b8daf07 100644 --- a/howto/use_a_templating_engine/index.html +++ b/howto/use_a_templating_engine/index.html @@ -112,4 +112,7 @@ println(app(Request(GET, "/someUrl"))) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/use_auto_content_negotiation/index.html b/howto/use_auto_content_negotiation/index.html index 23b091b26..b68861ce6 100644 --- a/howto/use_auto_content_negotiation/index.html +++ b/howto/use_auto_content_negotiation/index.html @@ -162,4 +162,7 @@ .let(handler) .also { println(it.bodyString()) } } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/use_html_forms/index.html b/howto/use_html_forms/index.html index 1d238a6dc..dd54cdcee 100644 --- a/howto/use_html_forms/index.html +++ b/howto/use_html_forms/index.html @@ -162,4 +162,7 @@ val age = ageField(validForm) println(age) } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/use_multipart_forms/index.html b/howto/use_multipart_forms/index.html index 595d59c2f..bab7f7aa6 100644 --- a/howto/use_multipart_forms/index.html +++ b/howto/use_multipart_forms/index.html @@ -391,4 +391,7 @@ handler.asServer(ApacheServer(8081)).start() } - \ No newline at end of file + \ No newline at end of file diff --git a/howto/write_different_test_types/index.html b/howto/write_different_test_types/index.html index 5a71453ce..0fe8e7946 100644 --- a/howto/write_different_test_types/index.html +++ b/howto/write_different_test_types/index.html @@ -211,4 +211,7 @@ assertThat(recorderHttp.calls, equalTo(listOf(579))) } } - \ No newline at end of file + \ No newline at end of file diff --git a/index.html b/index.html index 400ca97ee..6c618b059 100644 --- a/index.html +++ b/index.html @@ -89,4 +89,7 @@ applications.

    Check it out

    Corporate partners

    http4k works with selected companies to fund and explore continued innovation around the project. If your organisation is using http4k and would like to take advantage of this program, please get in -touch.

    Springer Nature Technology
    Kotlin Foundation

    Professional Services

    support

    Support

    It’s important to us that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    faq

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    training

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    pumb
    \ No newline at end of file +touch.

    Springer Nature Technology
    Kotlin Foundation

    Professional Services

    support

    Support

    It’s important that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    faq

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    training

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    pumb
    \ No newline at end of file diff --git a/index.xml b/index.xml index 7a14fe782..4dd16aa38 100644 --- a/index.xml +++ b/index.xml @@ -968,7 +968,10 @@ This allows handling cross-cutting concerns independently of a specific client i </span></span><span style="display:flex;"><span> implementation(<span style="color:#e6db74">&#34;org.http4k:http4k-cloudnative&#34;</span>) </span></span><span style="display:flex;"><span>} </span></span></code></pre></div><p>http4k applications are naturally at home operating in distributed, Cloud Native environments. Whilst simple to create, this module -provides requisite tooling to get apps up and running with the minimum of effort to enable the following operational aspects:</p>Confighttps://http4k.org/ecosystem/http4k/reference/config/Mon, 01 Jan 0001 00:00:00 +0000https://http4k.org/ecosystem/http4k/reference/config/<h3 id="installation-gradle">Installation (Gradle)</h3> +provides requisite tooling to get apps up and running with the minimum of effort to enable the following operational aspects:</p>Companyhttps://http4k.org/company/Mon, 01 Jan 0001 00:00:00 +0000https://http4k.org/company/<p>Founded in 2017, http4k has grown into one of the most popular HTTP libraries for Kotlin, reflecting over 15 years of +combined experience in server-side development. Our mission was to create a library that embodies simplicity and +clarity, enabling developers to build robust applications without the complexities often associated with traditional +frameworks.</p>Confighttps://http4k.org/ecosystem/http4k/reference/config/Mon, 01 Jan 0001 00:00:00 +0000https://http4k.org/ecosystem/http4k/reference/config/<h3 id="installation-gradle">Installation (Gradle)</h3> <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-kotlin" data-lang="kotlin"><span style="display:flex;"><span>dependencies { </span></span><span style="display:flex;"><span> implementation(platform("org.http4k:http4k-bom:5.32.4.0")) diff --git a/learn/index.html b/learn/index.html index 73d44f781..50b8eecd0 100644 --- a/learn/index.html +++ b/learn/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    About the docs

    The http4k technical documentation has been designed following the Grand Unified Theory of Documentation. Overall, the http4k developers firmly believe that API design should be natural and friendly to the user, and hence the codebase is not heavily commented. If we have done our jobs correctly, someone with the correct knowledge of a particular domain or platform should be able to implement systems using the http4k APIs by just using an IDE.

    That said, there remains a lot to be written to ensure that the basic concepts of the toolkit are written down, and that users can leverage the significant number of features that http4k provides.

    You can read more about the theory here, but essentially there are four distinct styles of useful documentation, based on what mode the reader is operating in.

    grand unified theory of documentation

    Regardless of which section you are reading, as much of the code as possible exists in the repository and is built with the rest of http4k in our CI. This has the effect of a making the code more verbose (including import statements and similar), but at the same time we can guarantee that the code compiles and you can navigate around it to find where everything is coming from. We hope you agree that this tradeoff is worth it.

    Concepts

    http4k is a simple framework based around several function types, and hopefully the ideas behind it are not difficult to grasp. This section conveys the mindset and rationale behind http4k, and lays out each of the main function types used in the toolkit and how they relate to each other.

    We recommend that all new users familiarise themselves with at least the rationale and HTTP pages of this section.

    Read more about the theory behind Concepts here.

    Tutorials

    Getting started with a new library can be quite daunting, and sometimes everyone needs a little hand holding to get comfortable with how things fit together. This section contains step-by-step guides to get you started with each of http4k’s main conceptual areas. The first tutorial will get you out of the gate and up and running in no time.

    Read more about the theory behind Tutorials here.

    How-to guides

    The meat of the http4k documentation is in this section, in which you’ll find ready made solutions to many common use-cases. Because if you’ve got something to achieve - it’s pretty likely that we’ve probably come across it already 😉.

    The format for the recipes contains:

    • Required Gradle dependencies
    • A brief description of the problem
    • Fully runnable code example displaying the solution.

    Think of it like a mini StackOverflow - but better because you’ve got the entire solution available to adapt to your particular use-case - 😃.

    As a community-driven project, we would welcome new or updated recipes to make http4k easier to use. The format of the new and updated recipes should follow this Markdown template.

    Read more about the theory behind How-to guides here.

    Ecosystem references

    In order to “fly like a butterfly and sting like a bee”, http4k is heavily modularised. This section contains more detailed technical notes on the capabilities present each of the http4k modules. It’s more of a “what” than a “why”.

    Read more about the theory behind Reference guides here.

    pumb
    \ No newline at end of file +

    About the docs

    The http4k technical documentation has been designed following the Grand Unified Theory of Documentation. Overall, the http4k developers firmly believe that API design should be natural and friendly to the user, and hence the codebase is not heavily commented. If we have done our jobs correctly, someone with the correct knowledge of a particular domain or platform should be able to implement systems using the http4k APIs by just using an IDE.

    That said, there remains a lot to be written to ensure that the basic concepts of the toolkit are written down, and that users can leverage the significant number of features that http4k provides.

    You can read more about the theory here, but essentially there are four distinct styles of useful documentation, based on what mode the reader is operating in.

    grand unified theory of documentation

    Regardless of which section you are reading, as much of the code as possible exists in the repository and is built with the rest of http4k in our CI. This has the effect of a making the code more verbose (including import statements and similar), but at the same time we can guarantee that the code compiles and you can navigate around it to find where everything is coming from. We hope you agree that this tradeoff is worth it.

    Concepts

    http4k is a simple framework based around several function types, and hopefully the ideas behind it are not difficult to grasp. This section conveys the mindset and rationale behind http4k, and lays out each of the main function types used in the toolkit and how they relate to each other.

    We recommend that all new users familiarise themselves with at least the rationale and HTTP pages of this section.

    Read more about the theory behind Concepts here.

    Tutorials

    Getting started with a new library can be quite daunting, and sometimes everyone needs a little hand holding to get comfortable with how things fit together. This section contains step-by-step guides to get you started with each of http4k’s main conceptual areas. The first tutorial will get you out of the gate and up and running in no time.

    Read more about the theory behind Tutorials here.

    How-to guides

    The meat of the http4k documentation is in this section, in which you’ll find ready made solutions to many common use-cases. Because if you’ve got something to achieve - it’s pretty likely that we’ve probably come across it already 😉.

    The format for the recipes contains:

    • Required Gradle dependencies
    • A brief description of the problem
    • Fully runnable code example displaying the solution.

    Think of it like a mini StackOverflow - but better because you’ve got the entire solution available to adapt to your particular use-case - 😃.

    As a community-driven project, we would welcome new or updated recipes to make http4k easier to use. The format of the new and updated recipes should follow this Markdown template.

    Read more about the theory behind How-to guides here.

    Ecosystem references

    In order to “fly like a butterfly and sting like a bee”, http4k is heavily modularised. This section contains more detailed technical notes on the capabilities present each of the http4k modules. It’s more of a “what” than a “why”.

    Read more about the theory behind Reference guides here.

    pumb
    \ No newline at end of file diff --git a/lts-support/index.html b/lts-support/index.html index b196fa8a9..004eded22 100644 --- a/lts-support/index.html +++ b/lts-support/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Long-Term Support (LTS)

    Enjoy long-term stability and support with http4k’s Long-Term Support (LTS) offering, designed for organizations that rely on http4k for their critical applications. Our LTS version of http4k provides guaranteed maintenance and updates for a stable release, ensuring your projects remain secure and fully functional without needing frequent upgrades. Additionally, our priority support extends up to 24 months, meaning http4k LTS is your key to maintaining focus on feature delivery while ensuring your http4k applications are future-proof.

    Access expert guidance and priority support directly from the creators and maintainers of http4k. With dedicated channels, including email and Slack, you’ll get fast resolutions to any issues or questions, backed by our deep knowledge of the http4k ecosystem. Whether it’s compatibility updates or bug fixes, our team ensures that your http4k deployment remains fully integrated with the broader Kotlin and JVM environments.

    Additionally, http4k LTS offers transparency with full access to the codebase and rapid integration of community-driven improvements. Built under a permissive Apache2 license, you can rest assured that your applications comply with industry standards while enjoying the reliability and accountability that http4k LTS support provides. Get in touch to learn more about how http4k LTS can stabilize your development process for the long term.

    Access to priority support

    The http4k team are here on Slack and Email to guide you through any issues or questions.

    Up to 24 months peace of mind

    Guaranteed security and bug updates for the stable release channel, allowing you to focus on feature delivery.

    Source code access

    Full access to the LTS http4k codebase for transparency and auditing.

    Frequently Asked Questions

    • What is the http4k LTS programme?

      The LTS programme is a service provided by the http4k team to ensure that your applications remain stable and secure over the long term, enabling peace of mind for organisations that rely on http4k for their critical infrastructure.

    • How long are http4k LTS versions available for?

      As standard, the open source (OSS) version of http4k releases major versions of the ecosystem on a delayed cadence which is aligned with major release dates of the JDK. As a new major http4k OSS version is released, the previous major version enters the http4k LTS programme. See the schedule below for the current timeline.

    • How will my teams access the LTS versions?

      The LTS versions of http4k are hosted in a private Maven repository. To access the these assets, you will need to sign up for the LTS programme and will be supplied with the necessary credentials.

    • What types of updates are included with in the http4k LTS programme?

      LTS version of http4k receive security and necessary bug fixes for community identified bugs. This ensures that your applications remain secure and fully functional without needing frequent upgrades.

    • What type of support is available in http4k LTS

      After signup you will be given access to both email and Slack-based support channels. The http4k team is there to help you with any issues or questions you may have regarding the LTS version of http4k libraries.

    • Can I request specialised features for the http4k LTS version?

      For stability reasons, the LTS version of http4k is focused on security and bug fixes so new features are not considered for these versions. If you have a particular feature request, please get in touch to discuss it with the team. We will then prioritise it for inclusion in the mainline release or can work with you to provide a custom build.

    Professional Services

    Support

    It’s important to us that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    Let's talk

    Contact us
    pumb
    \ No newline at end of file +

    Long-Term Support (LTS)

    Enjoy long-term stability and support with http4k’s Long-Term Support (LTS) offering, designed for organizations that rely on http4k for their critical applications. Our LTS version of http4k provides guaranteed maintenance and updates for a stable release, ensuring your projects remain secure and fully functional without needing frequent upgrades. Additionally, our priority support extends up to 24 months, meaning http4k LTS is your key to maintaining focus on feature delivery while ensuring your http4k applications are future-proof.

    Access expert guidance and priority support directly from the creators and maintainers of http4k. With dedicated channels, including email and Slack, you’ll get fast resolutions to any issues or questions, backed by our deep knowledge of the http4k ecosystem. Whether it’s compatibility updates or bug fixes, our team ensures that your http4k deployment remains fully integrated with the broader Kotlin and JVM environments.

    Additionally, http4k LTS offers transparency with full access to the codebase and rapid integration of community-driven improvements. Built under a permissive Apache2 license, you can rest assured that your applications comply with industry standards while enjoying the reliability and accountability that http4k LTS support provides. Get in touch to learn more about how http4k LTS can stabilize your development process for the long term.

    Access to priority support

    The http4k team are here on Slack and Email to guide you through any issues or questions.

    Up to 24 months peace of mind

    Guaranteed security and bug updates for the stable release channel, allowing you to focus on feature delivery.

    Source code access

    Full access to the LTS http4k codebase for transparency and auditing.

    Frequently Asked Questions

    • What is the http4k LTS programme?

      The LTS programme is a service provided by the http4k team to ensure that your applications remain stable and secure over the long term, enabling peace of mind for organisations that rely on http4k for their critical infrastructure.

    • How long are http4k LTS versions available for?

      As standard, the open source (OSS) version of http4k releases major versions of the ecosystem on a delayed cadence which is aligned with major release dates of the JDK. As a new major http4k OSS version is released, the previous major version enters the http4k LTS programme. See the schedule below for the current timeline.

    • How will my teams access the LTS versions?

      The LTS versions of http4k are hosted in a private Maven repository. To access the these assets, you will need to sign up for the LTS programme and will be supplied with the necessary credentials.

    • What types of updates are included with in the http4k LTS programme?

      LTS version of http4k receive security and necessary bug fixes for community identified bugs. This ensures that your applications remain secure and fully functional without needing frequent upgrades.

    • What type of support is available in http4k LTS

      After signup you will be given access to both email and Slack-based support channels. The http4k team is there to help you with any issues or questions you may have regarding the LTS version of http4k libraries.

    • Can I request specialised features for the http4k LTS version?

      For stability reasons, the LTS version of http4k is focused on security and bug fixes so new features are not considered for these versions. If you have a particular feature request, please get in touch to discuss it with the team. We will then prioritise it for inclusion in the mainline release or can work with you to provide a custom build.

    Professional Services

    Support

    It’s important that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    Let's talk

    Contact us
    pumb
    \ No newline at end of file diff --git a/module/index.html b/module/index.html index c84ddc056..df10cbc35 100644 --- a/module/index.html +++ b/module/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Module

    1 of 0
    \ No newline at end of file +

    Module

    1 of 0
    \ No newline at end of file diff --git a/news/documenting_apis_with_openapi/index.html b/news/documenting_apis_with_openapi/index.html index dbf54ea63..bbdcdf330 100644 --- a/news/documenting_apis_with_openapi/index.html +++ b/news/documenting_apis_with_openapi/index.html @@ -251,4 +251,7 @@ returning(NOT_FOUND to "That person does not exist the family") } bindContract GET to ::handler } -

    Taking a final look at the OpenApi UI here shows that not just has the UI been updated with the new route, but that example entries for the expected response are now displayed, as well as JSON Schema entries for the Person and Age classes in the Schemas section at the bottom.

    Wrapping up…

    Once we have the final specification document available, users of our API can use the various OpenApi Generators to generate HTTP clients in various languages for interacting with it, or to generate fake services that provide our API in their own environments (and thus enabling more simple end-to-end testing). The “Fake HTTP services” technique also enables the creation of Consumer-Driven-Contract style tests, and opens up possibilities for all kinds of interesting Chaos/failure-mode testing (you can even use the http4k-testing-chaos module to help with this 😉).

    The full source for this tutorial can be found here, or for a sense of how this all looks in when mixed into a complete http4k project, check out the http4k-by-example repo, which contains an entire TDD’d project showcasing a multitude of http4k features and testing styles.

    \ No newline at end of file +

    Taking a final look at the OpenApi UI here shows that not just has the UI been updated with the new route, but that example entries for the expected response are now displayed, as well as JSON Schema entries for the Person and Age classes in the Schemas section at the bottom.

    Wrapping up…

    Once we have the final specification document available, users of our API can use the various OpenApi Generators to generate HTTP clients in various languages for interacting with it, or to generate fake services that provide our API in their own environments (and thus enabling more simple end-to-end testing). The “Fake HTTP services” technique also enables the creation of Consumer-Driven-Contract style tests, and opens up possibilities for all kinds of interesting Chaos/failure-mode testing (you can even use the http4k-testing-chaos module to help with this 😉).

    The full source for this tutorial can be found here, or for a sense of how this all looks in when mixed into a complete http4k project, check out the http4k-by-example repo, which contains an entire TDD’d project showcasing a multitude of http4k features and testing styles.

    \ No newline at end of file diff --git a/news/http4k_v4/index.html b/news/http4k_v4/index.html index 5926bf81d..60f69f368 100644 --- a/news/http4k_v4/index.html +++ b/news/http4k_v4/index.html @@ -106,4 +106,7 @@ open telemetry

    The OpenTelemetry project describes itself as…

    "… a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software’s performance and behavior." - OpenTelemetry.io

    It’s a great project run by the CNCF and very well fits in with the ethos that the http4k team believes in. As with all http4k integration modules, we want to enable http4k developers to be able to plug in their apps as simply as possible - in this case, just configure the OpenTelemetry API or Java-agent, then just add some simple Filters to your code to start collecting Distributed Traces or Metrics. Several tracing schemes are supported, including Amazon XRay, Jaeger and Zipkin.

    For more docs on how to get it all working, head over to the docs.


    #### Upgrading & library API changes Like the neat little worker bunnies we are, we've also taken the opportunity to clean up the http4k source code. All previously deprecated code has been removed, leaving the codebase nice and tidy. If you are upgrading, the best idea is to first upgrade to the last v3 version (v3.285.2), deal with any existing deprecations in place, then simply upgrade again to v4.0.0.0.
    #### http4k.org One of the things that our users feedback about was that the structure of the docs in [http4k.org](https://http4k.org) could be improved, so we've begun overhauling the site to simplify the content. Expect this to be a continual improvement thing, but on the whole the content will be organised as follows:
    • Concepts will contain descriptions of the underlying concepts in and around the http4k libraries.
    • Tutorials will be step-by-step guides to getting up and running for various use-cases.
    • How-tos will contain extended examples of how to accomplish particular tasks. eg. provide a custom ServerConfig implementation. Code here will generally be complete and contain runnable examples.
    • Module Reference will contain descriptions of the various features in the different http4k modules. Code in the guide will be snippet-based.
    • Additionally, the Examples repo hosts fully self-contained, runnable projects that can be used as a baseline for particular features - eg. how to write and run an app on Quarkus or use the cloudnative module to enable typesafe configuration

    #### Support & training

    There has been a decent amount of interest lately from our users to come to us to ask for advice about how we can help teams get the best out of http4k. In that vein, we have also been busy building training materials which we can deliver to teams either new to (or experienced in) the library, or to visit teams (currently virtually) to help them out.

    If your team would also like to take advantage of our experience in delivering projects using http4k, then please visit the support/training page, reach out and we’d love to see how we can help.


    #### http4k Connect - Flyweight 3rd party adapters -http4k connect

    http4k-connect is the team’s newest side project, the purpose of which is to eventually standardise patterns for building 3rd party system adapters to various backend services, and for building your own Fakes (backed by data-stores such as InMemory, S3 or Redis). So far (v2.8.0.0), http4k-connect supports at least the common-use case actions for the following systems (and the API is easily extendable for non-supplied actions):

    • AWS KMS: Key Management Service
    • AWS Lambda
    • AWS S3: Simple Storage Service
    • AWS Secrets Manager
    • AWS SQS: Simple Queue Service
    • AWS SSM: Systems Manager
    • AWS STS: Security Token Service
    • Google Analytics

    Mostly, the existence of the project is has been driven by 2 factors:

    • to reduce dependency weight of bringing in SDK modules, especially when in a Serverless context. The AWS service SDKs are especially heavy for dependency weight. Using http4k-connect instead of official SDKs, overall Serverless Function distribution size should be reduced by at least an order of magnitude.
    • to avoid us having to reinvent the same things again and again! (Because we’re very very lazy developers!)

    It’s pretty hot off the press, but will be receiving a lot of attention over the coming weeks and months, and we’ll be documenting the mechanisms in both web and live talks.


    #### That's all folks... (for the moment)

    We’re pretty excited about this release and hope the library will continue to provide powerful tools to make all of our existing (and new!) users’ lives easier in creating kick ass and rock solid HTTP applications.

    In the meantime, if you are using http4k, please consider sponsoring the project to help offset the costs of development, documentation, and support.

    If you’re using it commercially, we offer Commercial Support and Consulting to ensure you’re getting maximum value from the toolkit and its related techniques.

    As ever, we’d love to hear how we’re doing, so please drop into the comm channels to get in touch.

    Peace out.

    // the http4k team

    \ No newline at end of file +http4k connect

    http4k-connect is the team’s newest side project, the purpose of which is to eventually standardise patterns for building 3rd party system adapters to various backend services, and for building your own Fakes (backed by data-stores such as InMemory, S3 or Redis). So far (v2.8.0.0), http4k-connect supports at least the common-use case actions for the following systems (and the API is easily extendable for non-supplied actions):

    • AWS KMS: Key Management Service
    • AWS Lambda
    • AWS S3: Simple Storage Service
    • AWS Secrets Manager
    • AWS SQS: Simple Queue Service
    • AWS SSM: Systems Manager
    • AWS STS: Security Token Service
    • Google Analytics

    Mostly, the existence of the project is has been driven by 2 factors:

    • to reduce dependency weight of bringing in SDK modules, especially when in a Serverless context. The AWS service SDKs are especially heavy for dependency weight. Using http4k-connect instead of official SDKs, overall Serverless Function distribution size should be reduced by at least an order of magnitude.
    • to avoid us having to reinvent the same things again and again! (Because we’re very very lazy developers!)

    It’s pretty hot off the press, but will be receiving a lot of attention over the coming weeks and months, and we’ll be documenting the mechanisms in both web and live talks.


    #### That's all folks... (for the moment)

    We’re pretty excited about this release and hope the library will continue to provide powerful tools to make all of our existing (and new!) users’ lives easier in creating kick ass and rock solid HTTP applications.

    In the meantime, if you are using http4k, please consider sponsoring the project to help offset the costs of development, documentation, and support.

    If you’re using it commercially, we offer Commercial Support and Consulting to ensure you’re getting maximum value from the toolkit and its related techniques.

    As ever, we’d love to hear how we’re doing, so please drop into the comm channels to get in touch.

    Peace out.

    // the http4k team

    \ No newline at end of file diff --git a/news/http4k_v5/index.html b/news/http4k_v5/index.html index c20760d2f..2b4604cd3 100644 --- a/news/http4k_v5/index.html +++ b/news/http4k_v5/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    http4k Platform v5 - New Servers, Loom, TracerBullet, OpenAI plugin SDK and more

    June 2023 / the http4k team
    http4k lego

    We’re thrilled to announce the next major release of http4k! Since the last major release, the team has been busy enhancing existing features, adding new capabilities with help from our amazing community, things that we’ve needed on our own real world projects, and a sprinkling of new magic to keep pushing the boundaries of what’s possible with the http4k technology - all 127 modules of it.

    The first thing to tell you is that we’ve hit a significant milestone and are now getting about 1 million downloads per month from Maven Central. From these numbers and our interactions with the global http4k community, it makes us very happy that so many teams are seeing the power of the Server-as-a-Function model.

    Partnership programme

    Another thing to celebrate is that http4k now has it’s first major corporate partner - the wonderful SpringerNature Technology, where http4k powers a sizeable percentage of their global content delivery platform. The http4k team thanks all the folks at SN Technology for their ongoing collaboration and support - undoubtedly the project would not be where it is now without them!

    Springer Nature Technology

    If your organisation is using the http4k platform and would like to explore potential partnership options - including access to priority support channels, training opportunities, and input into the development plan, then please [reach out](mailto:contact@http4k.org?subject=Partnership opportunities) and we’ll be in touch to see how we can work together.

    With those things out of the way, let’s get on to what you really came for - features!


    Introducing the http4k Platform: 127 modules and counting

    Before we dive into the details of the library updates themselves, we’re announcing today that for the simplicity (to both the http4k community and the team!), we are unifying all http4k ecosystem projects (currently http4k and http4k-connect) under a single major platform version number - starting with v5.

    In addition, to keep pace with Java’s own rapidly evolving ecosystem, we’re going to be switching to aligning major releases of “the Platform” with every JDK release - currently scheduled for every 6 months. This will allow us to track major-version support as features are added and removed from Java and provide an easy way for our users to track the this compatibility. For the moment, http4k and http4k-connect will still have different release cadence and individual release numbers and which are now developed using Java 20 as a base, but in the future there are plans to consolidate the projects under a single platform version.

    In terms of Java compatibility - for the foreseeable future, we are still going to compile http4k for older Java versions (we still target Java 8 as a base). Over time though, we plan to adjust our standard of support for ancient versions and introduce a paid support program for those who still need to run http4k against legacy versions of Java and require updates such as security patches. If that’s already the case for your team or project, be sure to [get in touch with the http4k team](mailto:contact@http4k.org?subject=Support for legacy JVM version) to discuss your particular needs.

    Now - 127 is a pretty big number of modules, especially for what started out with a modest 43 line spike. But we’re definitely not done yet - http4k is a solid foundation - it’s arguably one of the simplest and most test-driven web libraries on the planet. We’ve also proven in http4k-connect that those parts can be composed into an powerful integration layer. Now the http4k team intend to continue that journey - and v5 is just the start.


    http4k Updates

    In v4, we shipped a massive 197 releases (an average of 1.5 per week!) and introduced 12 new modules in a variety of areas: deployment (serverless-lambda-runtime), wire formats (moshi-yaml, jackson-csv, kondor-json), security (digest), testing (strikt), and around simpler usages of OpenAPI (Redoc/SwaggerUI). http4k 5 introduces 5 new modules and tidies up the decks for future developments.

    http4k v5 is available right now from the Toolbox, where you can configure an download a fully compilable project with any combination of the 70 available http4k modules.

    Loom support

    We’re excited to see the re-introduction of virtual threads in Java and the performance improvements that can bring to well-established servers. Loom goes gold in Java 21 and we’re going to be ready for our users to use it straight away.

    For this new major version, we’re introducing three new server backends taking advantage of Java Loom virtual threads: the SDK built-in SunHttp, Jetty, and Helidon.

    Threads

    Servers are only half of the story though - http4k will also add support for Loom-friendy HTTP clients as they get released, and is introducing support for the Loom-native Helidon client in this release. We’ll be sure to keep up-to-date with the other major HTTP client libraries as they update to support Loom.

    TracerBullet: a brand new way of getting test feedback and documenting your systems

    We’re incredibly proud to be introducing TracerBullet, an innovative testing add-on that integrates with the http4k events system. TracerBullet enables teams to focus on how their services work, not just if they work. This powerful tool will change how you approach testing and help you gain deeper insights into your services.

    As a side-effect of introducing TracerBullet, http4k can automatically generate sequence and interaction diagrams, taking advantage of existing tools such as PlantUML, Mermaid, and d2 to create living documentation for your services after each test run!

    http4k TracerBullet

    The http4k team were excited to be invited back to KotlinConf 2023, where we presented how we used the TracerBullet along with Hexagonal Design to visually document multi-service tests. You can check out the video of the presentation here or see a full example of how it works in the demo repo.

    Remodelling of Websocket and SSE support

    Various http4k backends have supported SSE and Websockets for a while, but whilst the innovation was that you could unit-test them entirely in-memory (a world first?), the models did have some restrictions in handling request filtering. As such we have reworked the support to be more consistent with the HTTP handling. This is a breaking change, but it very important for us to be able to more fully support these protocols.

    Removal of deprecated and unsupported features

    As part of the major release cycle, we’re removing all code marked as deprecated in v4 of http4k.

    We have also removed the http4k-templates-dust module due to the removal of Nashorn from the Java distribution. We understand this may impact some users, and we recommend seeking alternative solutions in the long term, but you can continue to use the existing http4k-template-dust assets which are still binary compatible with v5 of http4k.

    Upgrading from http4k v4

    If you are upgrading, the best idea is to first upgrade to the last v4 version, deal with any existing deprecations in place, then simply upgrade again the latest v5 version and repeat.


    http4k-connect Updates

    http4k-connect was conceived as a library of providing client adapters for popular cloud services based on the innovative Connect pattern. v3 of the library added 20 different modules, and covered a number of popular AWS services, as well as integrating with Kafka via HTTP.

    The power of http4k-connect is it’s ability to leverage Kotlin to provide modular adapters based around a common core. Each client endpoint is modeled as a separate “Action”? Is the action you want not supported by the core library, or do you want less information to be parsed? Simple - just write your own endpoint adapter and plug it in!

    Today with the v5 release, we’re expanding the focus slightly - http4k-connect will now be the home of all official http4k platform integrations with third party services, to cover:

    • Featherweight, zero-reflection adapters, for HTTP integrations with cloud services (eg. AWS, Confluent)
    • Fake implementations of cloud services, which allow lightning-fast in-memory testing or local testing without Docker/LocalStack.
    • A pluggable unified Storage interface with five different storage backends - including in-memory, Redis and S3, as well as a StorageExplorer that provides an OpenAPI UI to allow interaction with the storage via browser.
    • Plugin SDKs for building integrations with popular platforms - starting with…

    OpenAI/ChatGPT support

    It’s 2023, and the new hotness that everyone is talking about is AI - and who are we to go against the weight of the hypemachine? After playing with GPT-4, one of the most frustrating things we found was the slowness of the responses and the effect that had on our testing-cycle, so the http4k team started to build a client adapter and fake OpenAI server so that Kotlin developer teams could integrate and test with OpenAI APIs quickly without waiting ages for the model to respond, and burning through those precious GPT-4 tokens and API limits. And thus http4k-connect-openai was born. The Fake server even allows you to generate images.

    A little later, the team received an early access invite to the ChatGPT plugin programme and it immediately occured that the requirements for developing plugins were all already supported within existing http4k libraries. So we set out to develop a plugin SDK, and http4k-connect-openai-plugin was born.

    The SDK provides a simple API for developers to simply compose their plugins by supplying some config and a standard http4k-contract endpoints, which generate the required OpenAPI specifications. The SDK does the rest for you, providing the required OpenAI plugin manifest, and then protects the API with one of 4 security models - including the ability to “login with ChatGPT” and OAuth into your plugin.

    http4k openapi ChatGPT plugin

    Once created, plugins can be installed into the FakeOpenAI server, and expose a standard http4k HttpHandler which means they can be tested in memory, run locally standalone, or composed into part of a larger http4k application. It’s pretty neat and we can’t wait to see what the community uses it for!

    Removal of deprecated and unsupported features

    As part of the major release cycle, we’re removing all code marked as deprecated in v3 of http4k-connect.

    Upgrading from http4k-connect v3

    If you are upgrading, the best idea is to first upgrade to the last v3 version, deal with any existing deprecations in place, then simply upgrade again to the latest v5 version and repeat.


    And that’s it (for now!). We hope you’re as excited about these updates to the http4k platform as we are! This release brings a wealth of new features and improvements, and we believe it will make your experience using http4k technologies even better.

    Cheers

    // the http4k team

    \ No newline at end of file +

    http4k Platform v5 - New Servers, Loom, TracerBullet, OpenAI plugin SDK and more

    June 2023 / the http4k team
    http4k lego

    We’re thrilled to announce the next major release of http4k! Since the last major release, the team has been busy enhancing existing features, adding new capabilities with help from our amazing community, things that we’ve needed on our own real world projects, and a sprinkling of new magic to keep pushing the boundaries of what’s possible with the http4k technology - all 127 modules of it.

    The first thing to tell you is that we’ve hit a significant milestone and are now getting about 1 million downloads per month from Maven Central. From these numbers and our interactions with the global http4k community, it makes us very happy that so many teams are seeing the power of the Server-as-a-Function model.

    Partnership programme

    Another thing to celebrate is that http4k now has it’s first major corporate partner - the wonderful SpringerNature Technology, where http4k powers a sizeable percentage of their global content delivery platform. The http4k team thanks all the folks at SN Technology for their ongoing collaboration and support - undoubtedly the project would not be where it is now without them!

    Springer Nature Technology

    If your organisation is using the http4k platform and would like to explore potential partnership options - including access to priority support channels, training opportunities, and input into the development plan, then please [reach out](mailto:contact@http4k.org?subject=Partnership opportunities) and we’ll be in touch to see how we can work together.

    With those things out of the way, let’s get on to what you really came for - features!


    Introducing the http4k Platform: 127 modules and counting

    Before we dive into the details of the library updates themselves, we’re announcing today that for the simplicity (to both the http4k community and the team!), we are unifying all http4k ecosystem projects (currently http4k and http4k-connect) under a single major platform version number - starting with v5.

    In addition, to keep pace with Java’s own rapidly evolving ecosystem, we’re going to be switching to aligning major releases of “the Platform” with every JDK release - currently scheduled for every 6 months. This will allow us to track major-version support as features are added and removed from Java and provide an easy way for our users to track the this compatibility. For the moment, http4k and http4k-connect will still have different release cadence and individual release numbers and which are now developed using Java 20 as a base, but in the future there are plans to consolidate the projects under a single platform version.

    In terms of Java compatibility - for the foreseeable future, we are still going to compile http4k for older Java versions (we still target Java 8 as a base). Over time though, we plan to adjust our standard of support for ancient versions and introduce a paid support program for those who still need to run http4k against legacy versions of Java and require updates such as security patches. If that’s already the case for your team or project, be sure to [get in touch with the http4k team](mailto:contact@http4k.org?subject=Support for legacy JVM version) to discuss your particular needs.

    Now - 127 is a pretty big number of modules, especially for what started out with a modest 43 line spike. But we’re definitely not done yet - http4k is a solid foundation - it’s arguably one of the simplest and most test-driven web libraries on the planet. We’ve also proven in http4k-connect that those parts can be composed into an powerful integration layer. Now the http4k team intend to continue that journey - and v5 is just the start.


    http4k Updates

    In v4, we shipped a massive 197 releases (an average of 1.5 per week!) and introduced 12 new modules in a variety of areas: deployment (serverless-lambda-runtime), wire formats (moshi-yaml, jackson-csv, kondor-json), security (digest), testing (strikt), and around simpler usages of OpenAPI (Redoc/SwaggerUI). http4k 5 introduces 5 new modules and tidies up the decks for future developments.

    http4k v5 is available right now from the Toolbox, where you can configure an download a fully compilable project with any combination of the 70 available http4k modules.

    Loom support

    We’re excited to see the re-introduction of virtual threads in Java and the performance improvements that can bring to well-established servers. Loom goes gold in Java 21 and we’re going to be ready for our users to use it straight away.

    For this new major version, we’re introducing three new server backends taking advantage of Java Loom virtual threads: the SDK built-in SunHttp, Jetty, and Helidon.

    Threads

    Servers are only half of the story though - http4k will also add support for Loom-friendy HTTP clients as they get released, and is introducing support for the Loom-native Helidon client in this release. We’ll be sure to keep up-to-date with the other major HTTP client libraries as they update to support Loom.

    TracerBullet: a brand new way of getting test feedback and documenting your systems

    We’re incredibly proud to be introducing TracerBullet, an innovative testing add-on that integrates with the http4k events system. TracerBullet enables teams to focus on how their services work, not just if they work. This powerful tool will change how you approach testing and help you gain deeper insights into your services.

    As a side-effect of introducing TracerBullet, http4k can automatically generate sequence and interaction diagrams, taking advantage of existing tools such as PlantUML, Mermaid, and d2 to create living documentation for your services after each test run!

    http4k TracerBullet

    The http4k team were excited to be invited back to KotlinConf 2023, where we presented how we used the TracerBullet along with Hexagonal Design to visually document multi-service tests. You can check out the video of the presentation here or see a full example of how it works in the demo repo.

    Remodelling of Websocket and SSE support

    Various http4k backends have supported SSE and Websockets for a while, but whilst the innovation was that you could unit-test them entirely in-memory (a world first?), the models did have some restrictions in handling request filtering. As such we have reworked the support to be more consistent with the HTTP handling. This is a breaking change, but it very important for us to be able to more fully support these protocols.

    Removal of deprecated and unsupported features

    As part of the major release cycle, we’re removing all code marked as deprecated in v4 of http4k.

    We have also removed the http4k-templates-dust module due to the removal of Nashorn from the Java distribution. We understand this may impact some users, and we recommend seeking alternative solutions in the long term, but you can continue to use the existing http4k-template-dust assets which are still binary compatible with v5 of http4k.

    Upgrading from http4k v4

    If you are upgrading, the best idea is to first upgrade to the last v4 version, deal with any existing deprecations in place, then simply upgrade again the latest v5 version and repeat.


    http4k-connect Updates

    http4k-connect was conceived as a library of providing client adapters for popular cloud services based on the innovative Connect pattern. v3 of the library added 20 different modules, and covered a number of popular AWS services, as well as integrating with Kafka via HTTP.

    The power of http4k-connect is it’s ability to leverage Kotlin to provide modular adapters based around a common core. Each client endpoint is modeled as a separate “Action”? Is the action you want not supported by the core library, or do you want less information to be parsed? Simple - just write your own endpoint adapter and plug it in!

    Today with the v5 release, we’re expanding the focus slightly - http4k-connect will now be the home of all official http4k platform integrations with third party services, to cover:

    • Featherweight, zero-reflection adapters, for HTTP integrations with cloud services (eg. AWS, Confluent)
    • Fake implementations of cloud services, which allow lightning-fast in-memory testing or local testing without Docker/LocalStack.
    • A pluggable unified Storage interface with five different storage backends - including in-memory, Redis and S3, as well as a StorageExplorer that provides an OpenAPI UI to allow interaction with the storage via browser.
    • Plugin SDKs for building integrations with popular platforms - starting with…

    OpenAI/ChatGPT support

    It’s 2023, and the new hotness that everyone is talking about is AI - and who are we to go against the weight of the hypemachine? After playing with GPT-4, one of the most frustrating things we found was the slowness of the responses and the effect that had on our testing-cycle, so the http4k team started to build a client adapter and fake OpenAI server so that Kotlin developer teams could integrate and test with OpenAI APIs quickly without waiting ages for the model to respond, and burning through those precious GPT-4 tokens and API limits. And thus http4k-connect-openai was born. The Fake server even allows you to generate images.

    A little later, the team received an early access invite to the ChatGPT plugin programme and it immediately occured that the requirements for developing plugins were all already supported within existing http4k libraries. So we set out to develop a plugin SDK, and http4k-connect-openai-plugin was born.

    The SDK provides a simple API for developers to simply compose their plugins by supplying some config and a standard http4k-contract endpoints, which generate the required OpenAPI specifications. The SDK does the rest for you, providing the required OpenAI plugin manifest, and then protects the API with one of 4 security models - including the ability to “login with ChatGPT” and OAuth into your plugin.

    http4k openapi ChatGPT plugin

    Once created, plugins can be installed into the FakeOpenAI server, and expose a standard http4k HttpHandler which means they can be tested in memory, run locally standalone, or composed into part of a larger http4k application. It’s pretty neat and we can’t wait to see what the community uses it for!

    Removal of deprecated and unsupported features

    As part of the major release cycle, we’re removing all code marked as deprecated in v3 of http4k-connect.

    Upgrading from http4k-connect v3

    If you are upgrading, the best idea is to first upgrade to the last v3 version, deal with any existing deprecations in place, then simply upgrade again to the latest v5 version and repeat.


    And that’s it (for now!). We hope you’re as excited about these updates to the http4k platform as we are! This release brings a wealth of new features and improvements, and we believe it will make your experience using http4k technologies even better.

    Cheers

    // the http4k team

    \ No newline at end of file diff --git a/news/index.html b/news/index.html index aef218825..d5d0de242 100644 --- a/news/index.html +++ b/news/index.html @@ -75,4 +75,7 @@

    News

    Stay up to date with the latest from the http4k ecosystem. In this section, you’ll find updates about new releases, features, and important changes to the library. Whether it’s about new integrations, performance improvements, or enhancements to the developer experience, this is the place to learn about what’s happening in the http4k ecosystem.

    We also share exciting use cases, contributions from the community, and announcements about upcoming events. Check back -often to keep informed about how http4k continues to evolve and how it can help you build better web applications.

    pumb
    \ No newline at end of file +often to keep informed about how http4k continues to evolve and how it can help you build better web applications.

    pumb
    \ No newline at end of file diff --git a/news/meet_http4k/index.html b/news/meet_http4k/index.html index d5dd96ca1..797ae30ea 100644 --- a/news/meet_http4k/index.html +++ b/news/meet_http4k/index.html @@ -207,4 +207,7 @@ vast majority of apps, this actually makes API integration harder unless you’ve got async all the way down - and that is assuming that async clients are actually available for all your various remote dependencies. We found that this plainly didn’t matter for our use-cases so went for Simple API™ instead… it’s possible however that Kotlin co-routines will -allow us to revisit this decision.
  • (UPDATE) Websockets? Yep - simple, testable, and now available in v3.2.1! See the introductory blog post for details!
  • \ No newline at end of file +allow us to revisit this decision.
  • (UPDATE) Websockets? Yep - simple, testable, and now available in v3.2.1! See the introductory blog post for details!
  • \ No newline at end of file diff --git a/news/nanoservices/index.html b/news/nanoservices/index.html index c1b6b0928..c05d66139 100644 --- a/news/nanoservices/index.html +++ b/news/nanoservices/index.html @@ -381,4 +381,7 @@ } }

    Obviously we haven’t thought of everything here. We’d love to hear your ideas about other clever uses of the http4k building blocks, or to take PRs to integrate them into the library for wider use. You can get in touch through GitHub or the usual [channels].

    Principles of Chaos -[channels]: https://http4k.org/support

    \ No newline at end of file +[channels]: https://http4k.org/support

    \ No newline at end of file diff --git a/news/regarding_jcenter/index.html b/news/regarding_jcenter/index.html index 8260e2ce4..bef272acf 100644 --- a/news/regarding_jcenter/index.html +++ b/news/regarding_jcenter/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Reassurance to http4k users regarding JCenter shutdown

    February 2021 / the http4k team

    It was announced this week that the JCenter artifact repository would be shutting down in May 2021. As JCenter was a superset of the Maven Central repository, this obviously comes as disappointing and worrying news regarding the future of Open Source software distribution for the JVM. Many builds will undoubtedly break as a result of this move.

    The http4k project currently primarily builds and distributes our 50+ artifacts to Bintray and then syncs them to Maven Central automatically. As a result of this announcement, we have totally removed any dependency on JCenter from our builds and have verified that all of our dependencies resolve correctly without it. Hence we can say with absolute confidence that:

    As of v4.3.0.0, http4k users will be unaffected by the JCenter shutdown.

    http4k has always worked on the principle of being as lightweight as possible with respect to dependencies, and this situation has rather vindicated our position. Lots of Open Source projects will not be in such a fortunate position.

    We will be investigating alternatives to JCenter to keep our build pipelines working as efficiently as possible, but the artifacts will always be available in the Maven Central and this is where we will continue to source our dependencies from.

    On a more personal note, we would remind you that now would be an excellent opportunity to show appreciation for the entirely voluntary efforts of the http4k team and sponsor the project so we can keep on supporting our users.

    // the http4k team

    \ No newline at end of file +

    Reassurance to http4k users regarding JCenter shutdown

    February 2021 / the http4k team

    It was announced this week that the JCenter artifact repository would be shutting down in May 2021. As JCenter was a superset of the Maven Central repository, this obviously comes as disappointing and worrying news regarding the future of Open Source software distribution for the JVM. Many builds will undoubtedly break as a result of this move.

    The http4k project currently primarily builds and distributes our 50+ artifacts to Bintray and then syncs them to Maven Central automatically. As a result of this announcement, we have totally removed any dependency on JCenter from our builds and have verified that all of our dependencies resolve correctly without it. Hence we can say with absolute confidence that:

    As of v4.3.0.0, http4k users will be unaffected by the JCenter shutdown.

    http4k has always worked on the principle of being as lightweight as possible with respect to dependencies, and this situation has rather vindicated our position. Lots of Open Source projects will not be in such a fortunate position.

    We will be investigating alternatives to JCenter to keep our build pipelines working as efficiently as possible, but the artifacts will always be available in the Maven Central and this is where we will continue to source our dependencies from.

    On a more personal note, we would remind you that now would be an excellent opportunity to show appreciation for the entirely voluntary efforts of the http4k team and sponsor the project so we can keep on supporting our users.

    // the http4k team

    \ No newline at end of file diff --git a/news/retrospective_v3/index.html b/news/retrospective_v3/index.html index 71c0e2b6c..ea9b4bc88 100644 --- a/news/retrospective_v3/index.html +++ b/news/retrospective_v3/index.html @@ -91,4 +91,7 @@ implementation("org.http4k:http4k-core") implementation("org.http4k:http4k-server-undertow") } -
    #### Cloudy-wowdy stuff

    Just as in every codebase there is a package called “utils”, this also happens with libraries - useful code that doesn’t quite fit anywhere else, yet you just always end up needing. For http4k, these utils were about the ancillary stuff that goes around an application to make it support 12-factor ideals such as configuration and relative primitives. We didn’t want to put this stuff into the http4k-core module as we felt it wasn’t absolutely necessary (and we wanted to continue to keep the binary size of the core module down). Thus, http4k-cloudnative was born! The major feature of this module is loading typesafe Environmental configuration of applications, using - what else…

    lenses

    Yep - the reusing of the existing http4k lens system to cover configuring your apps, meaning that it’s now impossible to make easy mistakes such as setting a 10-second timeout as 10-milliseconds! You can check out exactly how to use the feature in the docs.


    #### Testing modules

    It’s no secret that the http4k team love testing - it’s part of our core DNA and the simplicity of core design would be worthless unless we could test apps built with the library simply and effectively. To that end, some of the most exciting additions that we’ve added to the library have been in the arena of testing:

    • Approval Testing is a technique for simplifying complex assertions that might otherwise be more effectively checked by eye. http4k-testing-approval provides the primitives and tooling for supporting this style of testing,
    • Chaos Testing was made famous by Netflix for proving out how systems react when everything heads south. http4k-testing-chaos adds transparent, programmable failure-generation to any http4k app using only a simple Filter.
    • Service Virtualization enables API test contracts to be encoded and then shipped, simplifying the process of proving that apps retain compatibility, http4k-testing-servirtium provides the basis for recording and replaying contracts from disk or from other sources such as GitHub.
    testing
    #### OpenAPI FTW

    One of the most popular and standout http4k features is the support for the OpenApi specification. Originally supporting Swagger 2 spec via the http4k-contract module, we rewrote the implementation to add support for much more complete (and consistent!) version 3 of specification in May 2019. The module will now generate fully compliant OpenAPI3 documentation, including full JSON Schema breakdowns for class models and taking advantage of Kotlin class features such as enums and nullability. Powered by the http4k lens API, this runtime system allows developers to avoid concerning themselves with tediously documenting API models which can easily go stale.

    swagger

    Serverless turnabout

    The major http4k feature in version 3.0.0 was the addition of support for Serverless backends - namely the granddaddy of Serverless - AWS Lambda. And you know what they say about the first implementation of something? They say that it’s probably wrong. Well, turns out they were right (again). When we got to introducing the second and third implementations of Serverless (Google Cloud Functions and OpenWhisk), we realised that the approach taken for AWS wasn’t very dev friendly… it relied on reflection to solve the problem of loading the Lambda function class. This actually broke one of our own cardinal rules that we set for the http4k project:

    “Absolutely no magic involved: No reflection. No annotations.” - 5th Commandment of http4k

    So - we did what any good dev team would do and replaced the magic function loading mechanism with a more developer friendly API working by class extension. Fear not readers - the guilty parties have been appropriately punished, and it (probably) won’t happen again. 😉

    serverless

    One other piece of interesting research which came out and somewhat vindicated the dependency-lite approach of http4k was Cold Start War, which performed a lot of experiments and concluded that:

    “As expected, the dependencies slow the loading down. You should keep your Functions lean, otherwise, you will pay in seconds for every cold start.” - Mikhail Shilkov

    For production deployments, we continue to recommend the use of a tool such as Proguard or R8 to massively reduce the size of packaged Serverless Function JAR file. The http4k serverless modules also ship with zero or minimal dependencies to avoid any transitive bloat that might occur.


    Going native

    Apart from Serverless, one of the most exciting things happening in JVM-land right now is the advent of native technologies such as Quarkus and GraalVM, giving the possibility of compiling apps direct to binaries - which give a massive performance boost. It’s a young technology and often involves various amounts of trickery to get around limitations of the native system regarding areas such as reflection. Luckily for us (and you!), http4k operates on an anti-magic principle (see the 5th commandment above) and it was a nice surprise when it occurred that, with the correct server engine (Apache for the curious), http4k applications can be packaged out-of-the-box to this format with absolutely no modifications of aforementioned trickery.

    smug-mode

    We look forward to further supporting these technologies as they develop, and will endeavour to provide custom modules to suppport teams who want to take advantage of them.


    Future echoes…

    “And the open road rolled out in front of us.” - Alexandra Bracken, In The Afterlight

    So what’s next? Well, we’ve got a load of good stuff coming up for post version 4 of http4k, the rest of 2020 and beyond. As well as the website improvements, we’ve got a bunch of tools in the works to make the library more quick-start friendly, including the ability to autogenerate advanced http4k Clients and Server stubs from OpenApi specifications - both from the command-line and from the browser. We’re also looking at improvements in the versioning scheme to better communicate breaking changes, and rolling out modules to enable better Serverless platform support.

    Whatever happens though, the focus of http4k will always be on providing a best-in-class Developer and Testing experience. We’d love to hear how we’re doing, so please drop into the comm channels to get in touch. Here’s to the future. Stay safe out there and we’ll see you in it.

    future

    // the http4k team

    \ No newline at end of file +
    #### Cloudy-wowdy stuff

    Just as in every codebase there is a package called “utils”, this also happens with libraries - useful code that doesn’t quite fit anywhere else, yet you just always end up needing. For http4k, these utils were about the ancillary stuff that goes around an application to make it support 12-factor ideals such as configuration and relative primitives. We didn’t want to put this stuff into the http4k-core module as we felt it wasn’t absolutely necessary (and we wanted to continue to keep the binary size of the core module down). Thus, http4k-cloudnative was born! The major feature of this module is loading typesafe Environmental configuration of applications, using - what else…

    lenses

    Yep - the reusing of the existing http4k lens system to cover configuring your apps, meaning that it’s now impossible to make easy mistakes such as setting a 10-second timeout as 10-milliseconds! You can check out exactly how to use the feature in the docs.


    #### Testing modules

    It’s no secret that the http4k team love testing - it’s part of our core DNA and the simplicity of core design would be worthless unless we could test apps built with the library simply and effectively. To that end, some of the most exciting additions that we’ve added to the library have been in the arena of testing:

    • Approval Testing is a technique for simplifying complex assertions that might otherwise be more effectively checked by eye. http4k-testing-approval provides the primitives and tooling for supporting this style of testing,
    • Chaos Testing was made famous by Netflix for proving out how systems react when everything heads south. http4k-testing-chaos adds transparent, programmable failure-generation to any http4k app using only a simple Filter.
    • Service Virtualization enables API test contracts to be encoded and then shipped, simplifying the process of proving that apps retain compatibility, http4k-testing-servirtium provides the basis for recording and replaying contracts from disk or from other sources such as GitHub.
    testing
    #### OpenAPI FTW

    One of the most popular and standout http4k features is the support for the OpenApi specification. Originally supporting Swagger 2 spec via the http4k-contract module, we rewrote the implementation to add support for much more complete (and consistent!) version 3 of specification in May 2019. The module will now generate fully compliant OpenAPI3 documentation, including full JSON Schema breakdowns for class models and taking advantage of Kotlin class features such as enums and nullability. Powered by the http4k lens API, this runtime system allows developers to avoid concerning themselves with tediously documenting API models which can easily go stale.

    swagger

    Serverless turnabout

    The major http4k feature in version 3.0.0 was the addition of support for Serverless backends - namely the granddaddy of Serverless - AWS Lambda. And you know what they say about the first implementation of something? They say that it’s probably wrong. Well, turns out they were right (again). When we got to introducing the second and third implementations of Serverless (Google Cloud Functions and OpenWhisk), we realised that the approach taken for AWS wasn’t very dev friendly… it relied on reflection to solve the problem of loading the Lambda function class. This actually broke one of our own cardinal rules that we set for the http4k project:

    “Absolutely no magic involved: No reflection. No annotations.” - 5th Commandment of http4k

    So - we did what any good dev team would do and replaced the magic function loading mechanism with a more developer friendly API working by class extension. Fear not readers - the guilty parties have been appropriately punished, and it (probably) won’t happen again. 😉

    serverless

    One other piece of interesting research which came out and somewhat vindicated the dependency-lite approach of http4k was Cold Start War, which performed a lot of experiments and concluded that:

    “As expected, the dependencies slow the loading down. You should keep your Functions lean, otherwise, you will pay in seconds for every cold start.” - Mikhail Shilkov

    For production deployments, we continue to recommend the use of a tool such as Proguard or R8 to massively reduce the size of packaged Serverless Function JAR file. The http4k serverless modules also ship with zero or minimal dependencies to avoid any transitive bloat that might occur.


    Going native

    Apart from Serverless, one of the most exciting things happening in JVM-land right now is the advent of native technologies such as Quarkus and GraalVM, giving the possibility of compiling apps direct to binaries - which give a massive performance boost. It’s a young technology and often involves various amounts of trickery to get around limitations of the native system regarding areas such as reflection. Luckily for us (and you!), http4k operates on an anti-magic principle (see the 5th commandment above) and it was a nice surprise when it occurred that, with the correct server engine (Apache for the curious), http4k applications can be packaged out-of-the-box to this format with absolutely no modifications of aforementioned trickery.

    smug-mode

    We look forward to further supporting these technologies as they develop, and will endeavour to provide custom modules to suppport teams who want to take advantage of them.


    Future echoes…

    “And the open road rolled out in front of us.” - Alexandra Bracken, In The Afterlight

    So what’s next? Well, we’ve got a load of good stuff coming up for post version 4 of http4k, the rest of 2020 and beyond. As well as the website improvements, we’ve got a bunch of tools in the works to make the library more quick-start friendly, including the ability to autogenerate advanced http4k Clients and Server stubs from OpenApi specifications - both from the command-line and from the browser. We’re also looking at improvements in the versioning scheme to better communicate breaking changes, and rolling out modules to enable better Serverless platform support.

    Whatever happens though, the focus of http4k will always be on providing a best-in-class Developer and Testing experience. We’d love to hear how we’re doing, so please drop into the comm channels to get in touch. Here’s to the future. Stay safe out there and we’ll see you in it.

    future

    // the http4k team

    \ No newline at end of file diff --git a/news/toolbox/index.html b/news/toolbox/index.html index a515d3cd6..7330ca430 100644 --- a/news/toolbox/index.html +++ b/news/toolbox/index.html @@ -105,4 +105,7 @@ .header("Content-Type", "text/plain") .body("""hello from http4k""")

    Build HTTP messages from raw HTTP here.


    ##### IntelliJ Live Templates

    One of our most favourite power features of IntelliJ is Live Templates, which allow you to add code generation macros to your IDE and activate them with a shortcut + tab. For http4k development, we got bored with typing things longhand, so decided to create a bunch of templates and share them with our favourite people (our users!). Even better, anyone can use our shortcuts in their IDE by adding a read-only “Settings Repository”.

    live templates

    Install the http4k live templates (and save your fingers!) by following the instructions at the bottom of this page.


    #### Wrapping up -We hope you'll find the various tools that we've built into the [Toolbox] useful to either get started with http4k or to make your life even more productive. As ever, let us know how we're doing, and if there are any other tools that you think might be helpful then we'd love to hear about them! \ No newline at end of file +We hope you'll find the various tools that we've built into the [Toolbox] useful to either get started with http4k or to make your life even more productive. As ever, let us know how we're doing, and if there are any other tools that you think might be helpful then we'd love to hear about them! \ No newline at end of file diff --git a/news/typesafe_configuration/index.html b/news/typesafe_configuration/index.html index e36f02942..88ea58397 100644 --- a/news/typesafe_configuration/index.html +++ b/news/typesafe_configuration/index.html @@ -275,4 +275,7 @@ val authFilter: Filter = secret.use { value: String -> ServerFilters.BearerAuth(value) } val authedHttp: HttpHandler = authFilter.then(OkHttp()) -

    As with other supported primitives, Secret is available by default in all supported Lens Locations.

    \ No newline at end of file +

    As with other supported primitives, Secret is available by default in all supported Lens Locations.

    \ No newline at end of file diff --git a/news/typesafe_websockets/index.html b/news/typesafe_websockets/index.html index 5f4e2f556..f4da7c4ce 100644 --- a/news/typesafe_websockets/index.html +++ b/news/typesafe_websockets/index.html @@ -192,4 +192,7 @@ server.stop() } } -

    Fin

    Websocket support is now available for the Jetty server backend in http4k v3.2.0. We plan to roll out support for other server-backends in due course. Have a play a let us know what you think…

    Footnotes
    • * We had a bit of a search for “unit testing websockets”, half through curiosity and half because we wanted to swipe other people’s ideas for implementing it. But we came up with nothing - it seems like all the existing JVM HTTP libraries rely on running servers for testing websockets. We hope we’re wrong - because the alternative makes us a little <insert sadface emoji/>. If we are, then please let us know! 😝
    \ No newline at end of file +

    Fin

    Websocket support is now available for the Jetty server backend in http4k v3.2.0. We plan to roll out support for other server-backends in due course. Have a play a let us know what you think…

    Footnotes
    • * We had a bit of a search for “unit testing websockets”, half through curiosity and half because we wanted to swipe other people’s ideas for implementing it. But we came up with nothing - it seems like all the existing JVM HTTP libraries rely on running servers for testing websockets. We hope we’re wrong - because the alternative makes us a little <insert sadface emoji/>. If we are, then please let us know! 😝
    \ No newline at end of file diff --git a/overview/index.html b/overview/index.html index 1724bcdc2..c409824a5 100644 --- a/overview/index.html +++ b/overview/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Overview

    http4k is a Kotlin-based HTTP toolkit which is designed to be simple, lightweight, and easy to use. It is built on functional programming principles, and is designed to be testable and easy to reason about. Since it’s release it has been used in production by a vast number of companies, and has been used to build a wide range of applications, from simple microservices to complex distributed systems, garnered millions of downloads per month and powers several globally significant websites.

    The basis of http4k is inspired by the “Your Function as a Server” paper produced at Twitter in 2013, which stated that all systems boundaries could be modelled as a simple function which takes a request and returns a response. This idea is the core of http4k, and is the basis for all of the libraries and tools that have been built around it. We have refined the generic concept presented in the paper to be specific to the HTTP protocol, and have built a set of tools and libraries that make it easy to build HTTP services in a functional way. See the concepts pages for more information.

    Over time, we have extended the functional core concept to model other types of function covering WebSockets, Server-Sent Events, provided type-safe (de)construction of HTTP messages using Lenses, created function-based API clients, and proved that many things can be modelled by purely composition. But the core idea of a server as a function remains the same - simplicity.

    So in a world where there are HTTP libraries by boatload, what makes http4k different? Mostly, it’s the way it’s designed with a ruthless focus on testability, control and best-in-class Developer Experience in mind. Every part of the now sizable http4k ecosystem has been developed in accordance with a real-world need and against it’s set of core principles.

    Rationale & Ethos

    http4k was created as the distillation of 15 years worth of experience of using various server-side libraries and we’ve stolen good ideas from everywhere we can. For instance - the routing module is inspired by UtterlyIdle, the “Server as a function” and filter model is stolen from Finagle, and the contract module OpenApi generator is ported from Fintrospect. With the growing adoption of Kotlin, we wanted something that would fully leverage the features of the language and it felt like a good time to start something from scratch.

    For our purposes, we wanted something that:

    1. Was based on simple functional concepts and embraced immutability.
    2. Embraced the “Server as a Function” model a uniform server/client API.
    3. Absolutely no magic involved: No reflection. No annotations.
    4. Lightweight with minimal dependencies (apart from the Kotlin StdLib, http4k-core has zero).
    5. Embraced Test-Driven approaches, was testable outside of an HTTP container, and testing should require no custom infrastructure.
    6. Starts/stops ultra quickly.
    7. Provides typesafe HTTP message deconstruction/construction.
    8. Automatically dealt with contract breaches to remove boilerplate.
    9. Automatic generation of OpenApi documentation (including JSON Schema models).

    http4k ticks all of these boxes.

    It allow us to construct entire suites of services which can be tested either wired together without HTTP, or spun up in containers using a single line of code. The symmetric HTTP API also allows Filter chains (often called “Middleware” or “Interceptors” in other frameworks) to be constructed into reusable units/stacks for both server and client sides (eg. logging/metrics/caching…) since they can be composed together for later use.

    As a bonus, we can also easily create simple Fake servers for any HTTP contract, which means (in combination with CDC suites) you can end-to-end test micro-services in an outside-in way (using GOOS-style acceptance tests).

    Scenarios such as “what happens if this HTTP dependency continually takes > 5 seconds to respond?” are easily modelled - answers you can’t easily get if you’re faking out your dependencies inside the HTTP boundary.

    pumb
    \ No newline at end of file +

    Overview

    http4k is a Kotlin-based HTTP toolkit which is designed to be simple, lightweight, and easy to use. It is built on functional programming principles, and is designed to be testable and easy to reason about. Since it’s release it has been used in production by a vast number of companies, and has been used to build a wide range of applications, from simple microservices to complex distributed systems, garnered millions of downloads per month and powers several globally significant websites.

    The basis of http4k is inspired by the “Your Function as a Server” paper produced at Twitter in 2013, which stated that all systems boundaries could be modelled as a simple function which takes a request and returns a response. This idea is the core of http4k, and is the basis for all of the libraries and tools that have been built around it. We have refined the generic concept presented in the paper to be specific to the HTTP protocol, and have built a set of tools and libraries that make it easy to build HTTP services in a functional way. See the concepts pages for more information.

    Over time, we have extended the functional core concept to model other types of function covering WebSockets, Server-Sent Events, provided type-safe (de)construction of HTTP messages using Lenses, created function-based API clients, and proved that many things can be modelled by purely composition. But the core idea of a server as a function remains the same - simplicity.

    So in a world where there are HTTP libraries by boatload, what makes http4k different? Mostly, it’s the way it’s designed with a ruthless focus on testability, control and best-in-class Developer Experience in mind. Every part of the now sizable http4k ecosystem has been developed in accordance with a real-world need and against it’s set of core principles.

    Rationale & Ethos

    http4k was created as the distillation of 15 years worth of experience of using various server-side libraries and we’ve stolen good ideas from everywhere we can. For instance - the routing module is inspired by UtterlyIdle, the “Server as a function” and filter model is stolen from Finagle, and the contract module OpenApi generator is ported from Fintrospect. With the growing adoption of Kotlin, we wanted something that would fully leverage the features of the language and it felt like a good time to start something from scratch.

    For our purposes, we wanted something that:

    1. Was based on simple functional concepts and embraced immutability.
    2. Embraced the “Server as a Function” model a uniform server/client API.
    3. Absolutely no magic involved: No reflection. No annotations.
    4. Lightweight with minimal dependencies (apart from the Kotlin StdLib, http4k-core has zero).
    5. Embraced Test-Driven approaches, was testable outside of an HTTP container, and testing should require no custom infrastructure.
    6. Starts/stops ultra quickly.
    7. Provides typesafe HTTP message deconstruction/construction.
    8. Automatically dealt with contract breaches to remove boilerplate.
    9. Automatic generation of OpenApi documentation (including JSON Schema models).

    http4k ticks all of these boxes.

    It allow us to construct entire suites of services which can be tested either wired together without HTTP, or spun up in containers using a single line of code. The symmetric HTTP API also allows Filter chains (often called “Middleware” or “Interceptors” in other frameworks) to be constructed into reusable units/stacks for both server and client sides (eg. logging/metrics/caching…) since they can be composed together for later use.

    As a bonus, we can also easily create simple Fake servers for any HTTP contract, which means (in combination with CDC suites) you can end-to-end test micro-services in an outside-in way (using GOOS-style acceptance tests).

    Scenarios such as “what happens if this HTTP dependency continually takes > 5 seconds to respond?” are easily modelled - answers you can’t easily get if you’re faking out your dependencies inside the HTTP boundary.

    pumb
    \ No newline at end of file diff --git a/performance/index.html b/performance/index.html index cf97c577e..703fbc628 100644 --- a/performance/index.html +++ b/performance/index.html @@ -79,4 +79,7 @@ Http4kBenchmarkServer(PostgresDatabase()).start(Undertow(9000)) }

    Command-line JVM options, however, were tuned for the test to take advantage of various JVM features.

    The full implementation of the benchmark can be found here.

    Results - Round 22

    Overall, http4k continues to do well in this round of benchmarking, placing 48/159 - especially considering that the ethos of the library is one of excellent Developer experience over and above high-end performance (which tends to result in less friendly APIs).

    Rankings below are filtered for JVM libraries:

    Composite ranking: results:

    *Top rank: 13/41

    DB query + HTML rendering: results:

    Top rank: 25/146 - Apache backend

    Database driver used is PostgreSql backed by a Hikari pool. -Rocker templating engine used for rendering.

    Multiple DB queries: results:

    Top rank: 23/145 - Jetty Loom backend

    Database driver used is Postgres Vertx Client backed by a Hikari pool.

    Single DB query: results:

    Top rank: 25/151 - Apache backend

    Database driver used is PostgreSql backed by a Hikari pool.

    Random DB updates: results:

    Top rank: 41/138 - Jetty Loom backend

    Database driver used is Postgres Vertx Client backed by a Hikari pool.

    JSON Serialization: results:

    Top rank: 59/152 - Netty backend

    The standard Argo JSON module used for JSON creation and marshalling.

    Plaintext pipelining: results:

    Top rank: 84/153 - Netty backend

    Recommendations

    Benchmark your own app’s performance trying different engines if performance is critical. The Tech Empower benchmarks attempt to simulate simple real-world scenarios, but they can behave drastically different than your app. One other consideration is test time; some engines start up much faster than others.

    pumb
    \ No newline at end of file +Rocker templating engine used for rendering.

    Multiple DB queries: results:

    Top rank: 23/145 - Jetty Loom backend

    Database driver used is Postgres Vertx Client backed by a Hikari pool.

    Single DB query: results:

    Top rank: 25/151 - Apache backend

    Database driver used is PostgreSql backed by a Hikari pool.

    Random DB updates: results:

    Top rank: 41/138 - Jetty Loom backend

    Database driver used is Postgres Vertx Client backed by a Hikari pool.

    JSON Serialization: results:

    Top rank: 59/152 - Netty backend

    The standard Argo JSON module used for JSON creation and marshalling.

    Plaintext pipelining: results:

    Top rank: 84/153 - Netty backend

    Recommendations

    Benchmark your own app’s performance trying different engines if performance is critical. The Tech Empower benchmarks attempt to simulate simple real-world scenarios, but they can behave drastically different than your app. One other consideration is test time; some engines start up much faster than others.

    pumb
    \ No newline at end of file diff --git a/privacy-policy/index.html b/privacy-policy/index.html index 279c2ae34..9290650db 100644 --- a/privacy-policy/index.html +++ b/privacy-policy/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Privacy policy

    Effective date: 2024-05-20

    1. Introduction

    Welcome to http4k Ltd.

    http4k Ltd (“us”, “we”, or “our”) operates http4k.org (hereinafter referred to as “Service”).

    Our Privacy Policy governs your visit to http4k.org, and explains how we collect, safeguard and disclose information that results from your use of our Service.

    We use your data to provide and improve Service. By using Service, you agree to the collection and use of information in accordance with this policy. Unless otherwise defined in this Privacy Policy, the terms used in this Privacy Policy have the same meanings as in our Terms and Conditions.

    Our Terms and Conditions (“Terms”) govern all use of our Service and together with the Privacy Policy constitutes your agreement with us (“agreement”).

    2. Definitions

    SERVICE means the http4k.org website operated by http4k Ltd.

    PERSONAL DATA means data about a living individual who can be identified from those data (or from those and other information either in our possession or likely to come into our possession).

    USAGE DATA is data collected automatically either generated by the use of Service or from Service infrastructure itself (for example, the duration of a page visit).

    COOKIES are small files stored on your device (computer or mobile device).

    DATA CONTROLLER means a natural or legal person who (either alone or jointly or in common with other persons) determines the purposes for which and the manner in which any personal data are, or are to be, processed. For the purpose of this Privacy Policy, we are a Data Controller of your data.

    DATA PROCESSORS (OR SERVICE PROVIDERS) means any natural or legal person who processes the data on behalf of the Data Controller. We may use the services of various Service Providers in order to process your data more effectively.

    DATA SUBJECT is any living individual who is the subject of Personal Data.

    THE USER is the individual using our Service. The User corresponds to the Data Subject, who is the subject of Personal Data.

    3. Information Collection and Use

    We collect several different types of information for various purposes to provide and improve our Service to you.

    4. Types of Data Collected

    Personal Data

    While using our Service, we may ask you to provide us with certain personally identifiable information that can be used to contact or identify you (“Personal Data”). Personally identifiable information may include, but is not limited to:

    0.1. Email address

    0.2. First name and last name

    0.3. Phone number

    0.4. Address, Country, State, Province, ZIP/Postal code, City

    0.5. Cookies and Usage Data

    We may use your Personal Data to contact you with newsletters, marketing or promotional materials and other information that may be of interest to you. You may opt out of receiving any, or all, of these communications from us by following the unsubscribe link.

    Usage Data

    We may also collect information that your browser sends whenever you visit our Service or when you access Service by or through any device (“Usage Data”).

    This Usage Data may include information such as your computer’s Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that you visit, the time and date of your visit, the time spent on those pages, unique device identifiers and other diagnostic data.

    When you access Service with a device, this Usage Data may include information such as the type of device you use, your device unique ID, the IP address of your device, your device operating system, the type of Internet browser you use, unique device identifiers and other diagnostic data.

    Tracking Cookies Data

    We use cookies and similar tracking technologies to track the activity on our Service and we hold certain information.

    Cookies are files with a small amount of data which may include an anonymous unique identifier. Cookies are sent to your browser from a website and stored on your device. Other tracking technologies are also used such as beacons, tags and scripts to collect and track information and to improve and analyze our Service.

    You can instruct your browser to refuse all cookies or to indicate when a cookie is being sent. However, if you do not accept cookies, you may not be able to use some portions of our Service.

    Examples of Cookies we use:

    0.1. Session Cookies: We use Session Cookies to operate our Service.

    0.2. Preference Cookies: We use Preference Cookies to remember your preferences and various settings.

    0.3. Security Cookies: We use Security Cookies for security purposes.

    0.4. Advertising Cookies: Advertising Cookies are used to serve you with advertisements that may be relevant to you and your interests.

    Other Data

    While using our Service, we may also collect the following information: sex, age, date of birth, place of birth, passport details, citizenship, registration at place of residence and actual address, telephone number (work, mobile), details of documents on education, qualification, professional training, employment agreements, NDA agreements, information on bonuses and compensation, information on marital status, family members, social security (or other taxpayer identification) number, office location and other data.

    5. Use of Data

    http4k Ltd uses the collected data for various purposes:

    0.1. to provide and maintain our Service;

    0.2. to notify you about changes to our Service;

    0.3. to allow you to participate in interactive features of our Service when you choose to do so;

    0.4. to provide customer support;

    0.5. to gather analysis or valuable information so that we can improve our Service;

    0.6. to monitor the usage of our Service;

    0.7. to detect, prevent and address technical issues;

    0.8. to fulfil any other purpose for which you provide it;

    0.9. to carry out our obligations and enforce our rights arising from any contracts entered into between you and us, including for billing and collection;

    0.10. to provide you with notices about your account and/or subscription, including expiration and renewal notices, email-instructions, etc.;

    0.11. to provide you with news, special offers and general information about other goods, services and events which we offer that are similar to those that you have already purchased or enquired about unless you have opted not to receive such information;

    0.12. in any other way we may describe when you provide the information;

    0.13. for any other purpose with your consent.

    6. Retention of Data

    We will retain your Personal Data only for as long as is necessary for the purposes set out in this Privacy Policy. We will retain and use your Personal Data to the extent necessary to comply with our legal obligations (for example, if we are required to retain your data to comply with applicable laws), resolve disputes, and enforce our legal agreements and policies.

    We will also retain Usage Data for internal analysis purposes. Usage Data is generally retained for a shorter period, except when this data is used to strengthen the security or to improve the functionality of our Service, or we are legally obligated to retain this data for longer time periods.

    7. Transfer of Data

    Your information, including Personal Data, may be transferred to – and maintained on – computers located outside of your state, province, country or other governmental jurisdiction where the data protection laws may differ from those of your jurisdiction.

    If you are located outside United States and choose to provide information to us, please note that we transfer the data, including Personal Data, to United States and process it there.

    Your consent to this Privacy Policy followed by your submission of such information represents your agreement to that transfer.

    http4k Ltd will take all the steps reasonably necessary to ensure that your data is treated securely and in accordance with this Privacy Policy and no transfer of your Personal Data will take place to an organisation or a country unless there are adequate controls in place including the security of your data and other personal information.

    8. Disclosure of Data

    We may disclose personal information that we collect, or you provide:

    0.1. Disclosure for Law Enforcement.

    Under certain circumstances, we may be required to disclose your Personal Data if required to do so by law or in response to valid requests by public authorities.

    0.2. Business Transaction.

    If we or our subsidiaries are involved in a merger, acquisition or asset sale, your Personal Data may be transferred.

    0.3. Other cases. We may disclose your information also:

    0.3.1. to our subsidiaries and affiliates;

    0.3.2. to contractors, service providers, and other third parties we use to support our business;

    0.3.3. to fulfill the purpose for which you provide it;

    0.3.4. for the purpose of including your company’s logo on our website;

    0.3.5. for any other purpose disclosed by us when you provide the information;

    0.3.6. with your consent in any other cases;

    0.3.7. if we believe disclosure is necessary or appropriate to protect the rights, property, or safety of the Company, our customers, or others.

    9. Security of Data

    The security of your data is important to us but remember that no method of transmission over the Internet or method of electronic storage is 100% secure. While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.

    10. Your Data Protection Rights Under General Data Protection Regulation (GDPR)

    If you are a resident of the European Union (EU) and European Economic Area (EEA), you have certain data protection rights, covered by GDPR.

    We aim to take reasonable steps to allow you to correct, amend, delete, or limit the use of your Personal Data.

    If you wish to be informed what Personal Data we hold about you and if you want it to be removed from our systems, please email us at privacy@http4k.org.

    In certain circumstances, you have the following data protection rights:

    0.1. the right to access, update or to delete the information we have on you;

    0.2. the right of rectification. You have the right to have your information rectified if that information is inaccurate or incomplete;

    0.3. the right to object. You have the right to object to our processing of your Personal Data;

    0.4. the right of restriction. You have the right to request that we restrict the processing of your personal information;

    0.5. the right to data portability. You have the right to be provided with a copy of your Personal Data in a structured, machine-readable and commonly used format;

    0.6. the right to withdraw consent. You also have the right to withdraw your consent at any time where we rely on your consent to process your personal information;

    Please note that we may ask you to verify your identity before responding to such requests. Please note, we may not able to provide Service without some necessary data.

    You have the right to complain to a Data Protection Authority about our collection and use of your Personal Data. For more information, please contact your local data protection authority in the European Economic Area (EEA).

    11. Your Data Protection Rights under the California Privacy Protection Act (CalOPPA)

    CalOPPA is the first state law in the nation to require commercial websites and online services to post a privacy policy. The law’s reach stretches well beyond California to require a person or company in the United States (and conceivable the world) that operates websites collecting personally identifiable information from California consumers to post a conspicuous privacy policy on its website stating exactly the information being collected and those individuals with whom it is being shared, and to comply with this policy.

    According to CalOPPA we agree to the following:

    0.1. users can visit our site anonymously;

    0.2. our Privacy Policy link includes the word “Privacy”, and can easily be found on the home page of our website;

    0.3. users will be notified of any privacy policy changes on our Privacy Policy Page;

    0.4. users are able to change their personal information by emailing us at privacy@http4k.org.

    Our Policy on “Do Not Track” Signals:

    We honor Do Not Track signals and do not track, plant cookies, or use advertising when a Do Not Track browser mechanism is in place. Do Not Track is a preference you can set in your web browser to inform websites that you do not want to be tracked.

    You can enable or disable Do Not Track by visiting the Preferences or Settings page of your web browser.

    12. Your Data Protection Rights under the California Consumer Privacy Act (CCPA)

    If you are a California resident, you are entitled to learn what data we collect about you, ask to delete your data and not to sell (share) it. To exercise your data protection rights, you can make certain requests and ask us:

    0.1. What personal information we have about you. If you make this request, we will return to you:

    0.0.1. The categories of personal information we have collected about you.

    0.0.2. The categories of sources from which we collect your personal information.

    0.0.3. The business or commercial purpose for collecting or selling your personal information.

    0.0.4. The categories of third parties with whom we share personal information.

    0.0.5. The specific pieces of personal information we have collected about you.

    0.0.6. A list of categories of personal information that we have sold, along with the category of any other company we sold it to. If we have not sold your personal information, we will inform you of that fact.

    0.0.7. A list of categories of personal information that we have disclosed for a business purpose, along with the category of any other company we shared it with.

    Please note, you are entitled to ask us to provide you with this information up to two times in a rolling twelve-month period. When you make this request, the information provided may be limited to the personal information we collected about you in the previous 12 months.

    0.2. To delete your personal information. If you make this request, we will delete the personal information we hold about you as of the date of your request from our records and direct any service providers to do the same. In some cases, deletion may be accomplished through de-identification of the information. If you choose to delete your personal information, you may not be able to use certain functions that require your personal information to operate.

    0.3. To stop selling your personal information. We don’t sell or rent your personal information to any third parties for any purpose. We do not sell your personal information for monetary consideration. However, under some circumstances, a transfer of personal information to a third party, or within our family of companies, without monetary consideration may be considered a “sale” under California law. You are the only owner of your Personal Data and can request disclosure or deletion at any time.

    If you submit a request to stop selling your personal information, we will stop making such transfers.

    Please note, if you ask us to delete or stop selling your data, it may impact your experience with us, and you may not be able to participate in certain programs or membership services which require the usage of your personal information to function. But in no circumstances, we will discriminate against you for exercising your rights.

    To exercise your California data protection rights described above, please send your request(s) by email: privacy@http4k.org.

    Your data protection rights, described above, are covered by the CCPA, short for the California Consumer Privacy Act. To find out more, visit the official California Legislative Information website. The CCPA took effect on 01/01/2020.

    13. Service Providers

    We may employ third party companies and individuals to facilitate our Service (“Service Providers”), provide Service on our behalf, perform Service-related services or assist us in analysing how our Service is used.

    These third parties have access to your Personal Data only to perform these tasks on our behalf and are obligated not to disclose or use it for any other purpose.

    14. Analytics

    We may use third-party Service Providers to monitor and analyze the use of our Service.

    15. CI/CD tools

    We may use third-party Service Providers to automate the development process of our Service.

    16. Behavioral Remarketing

    We may use remarketing services to advertise on third party websites to you after you visited our Service. We and our third-party vendors use cookies to inform, optimise and serve ads based on your past visits to our Service.

    17. Payments

    We may provide paid products and/or services within Service. In that case, we use third-party services for payment processing (e.g. payment processors).

    We will not store or collect your payment card details. That information is provided directly to our third-party payment processors whose use of your personal information is governed by their Privacy Policy. These payment processors adhere to the standards set by PCI-DSS as managed by the PCI Security Standards Council, which is a joint effort of brands like Visa, Mastercard, American Express and Discover. PCI-DSS requirements help ensure the secure handling of payment information.

    18. Links to Other Sites

    Our Service may contain links to other sites that are not operated by us. If you click a third party link, you will be directed to that third party’s site. We strongly advise you to review the Privacy Policy of every site you visit.

    We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.

    19. Children’s Privacy

    Our Services are not intended for use by children under the age of 18 (“Child” or “Children”).

    We do not knowingly collect personally identifiable information from Children under 18. If you become aware that a Child has provided us with Personal Data, please contact us. If we become aware that we have collected Personal Data from Children without verification of parental consent, we take steps to remove that information from our servers.

    20. Changes to This Privacy Policy

    We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page.

    We will let you know via email and/or a prominent notice on our Service, prior to the change becoming effective and update “effective date” at the top of this Privacy Policy.

    You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.

    21. Contact Us

    If you have any questions about this Privacy Policy, please contact us by email: privacy@http4k.org.

    pumb
    \ No newline at end of file +

    Privacy policy

    Effective date: 2024-05-20

    1. Introduction

    Welcome to http4k Ltd.

    http4k Ltd (“us”, “we”, or “our”) operates http4k.org (hereinafter referred to as “Service”).

    Our Privacy Policy governs your visit to http4k.org, and explains how we collect, safeguard and disclose information that results from your use of our Service.

    We use your data to provide and improve Service. By using Service, you agree to the collection and use of information in accordance with this policy. Unless otherwise defined in this Privacy Policy, the terms used in this Privacy Policy have the same meanings as in our Terms and Conditions.

    Our Terms and Conditions (“Terms”) govern all use of our Service and together with the Privacy Policy constitutes your agreement with us (“agreement”).

    2. Definitions

    SERVICE means the http4k.org website operated by http4k Ltd.

    PERSONAL DATA means data about a living individual who can be identified from those data (or from those and other information either in our possession or likely to come into our possession).

    USAGE DATA is data collected automatically either generated by the use of Service or from Service infrastructure itself (for example, the duration of a page visit).

    COOKIES are small files stored on your device (computer or mobile device).

    DATA CONTROLLER means a natural or legal person who (either alone or jointly or in common with other persons) determines the purposes for which and the manner in which any personal data are, or are to be, processed. For the purpose of this Privacy Policy, we are a Data Controller of your data.

    DATA PROCESSORS (OR SERVICE PROVIDERS) means any natural or legal person who processes the data on behalf of the Data Controller. We may use the services of various Service Providers in order to process your data more effectively.

    DATA SUBJECT is any living individual who is the subject of Personal Data.

    THE USER is the individual using our Service. The User corresponds to the Data Subject, who is the subject of Personal Data.

    3. Information Collection and Use

    We collect several different types of information for various purposes to provide and improve our Service to you.

    4. Types of Data Collected

    Personal Data

    While using our Service, we may ask you to provide us with certain personally identifiable information that can be used to contact or identify you (“Personal Data”). Personally identifiable information may include, but is not limited to:

    0.1. Email address

    0.2. First name and last name

    0.3. Phone number

    0.4. Address, Country, State, Province, ZIP/Postal code, City

    0.5. Cookies and Usage Data

    We may use your Personal Data to contact you with newsletters, marketing or promotional materials and other information that may be of interest to you. You may opt out of receiving any, or all, of these communications from us by following the unsubscribe link.

    Usage Data

    We may also collect information that your browser sends whenever you visit our Service or when you access Service by or through any device (“Usage Data”).

    This Usage Data may include information such as your computer’s Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that you visit, the time and date of your visit, the time spent on those pages, unique device identifiers and other diagnostic data.

    When you access Service with a device, this Usage Data may include information such as the type of device you use, your device unique ID, the IP address of your device, your device operating system, the type of Internet browser you use, unique device identifiers and other diagnostic data.

    Tracking Cookies Data

    We use cookies and similar tracking technologies to track the activity on our Service and we hold certain information.

    Cookies are files with a small amount of data which may include an anonymous unique identifier. Cookies are sent to your browser from a website and stored on your device. Other tracking technologies are also used such as beacons, tags and scripts to collect and track information and to improve and analyze our Service.

    You can instruct your browser to refuse all cookies or to indicate when a cookie is being sent. However, if you do not accept cookies, you may not be able to use some portions of our Service.

    Examples of Cookies we use:

    0.1. Session Cookies: We use Session Cookies to operate our Service.

    0.2. Preference Cookies: We use Preference Cookies to remember your preferences and various settings.

    0.3. Security Cookies: We use Security Cookies for security purposes.

    0.4. Advertising Cookies: Advertising Cookies are used to serve you with advertisements that may be relevant to you and your interests.

    Other Data

    While using our Service, we may also collect the following information: sex, age, date of birth, place of birth, passport details, citizenship, registration at place of residence and actual address, telephone number (work, mobile), details of documents on education, qualification, professional training, employment agreements, NDA agreements, information on bonuses and compensation, information on marital status, family members, social security (or other taxpayer identification) number, office location and other data.

    5. Use of Data

    http4k Ltd uses the collected data for various purposes:

    0.1. to provide and maintain our Service;

    0.2. to notify you about changes to our Service;

    0.3. to allow you to participate in interactive features of our Service when you choose to do so;

    0.4. to provide customer support;

    0.5. to gather analysis or valuable information so that we can improve our Service;

    0.6. to monitor the usage of our Service;

    0.7. to detect, prevent and address technical issues;

    0.8. to fulfil any other purpose for which you provide it;

    0.9. to carry out our obligations and enforce our rights arising from any contracts entered into between you and us, including for billing and collection;

    0.10. to provide you with notices about your account and/or subscription, including expiration and renewal notices, email-instructions, etc.;

    0.11. to provide you with news, special offers and general information about other goods, services and events which we offer that are similar to those that you have already purchased or enquired about unless you have opted not to receive such information;

    0.12. in any other way we may describe when you provide the information;

    0.13. for any other purpose with your consent.

    6. Retention of Data

    We will retain your Personal Data only for as long as is necessary for the purposes set out in this Privacy Policy. We will retain and use your Personal Data to the extent necessary to comply with our legal obligations (for example, if we are required to retain your data to comply with applicable laws), resolve disputes, and enforce our legal agreements and policies.

    We will also retain Usage Data for internal analysis purposes. Usage Data is generally retained for a shorter period, except when this data is used to strengthen the security or to improve the functionality of our Service, or we are legally obligated to retain this data for longer time periods.

    7. Transfer of Data

    Your information, including Personal Data, may be transferred to – and maintained on – computers located outside of your state, province, country or other governmental jurisdiction where the data protection laws may differ from those of your jurisdiction.

    If you are located outside United States and choose to provide information to us, please note that we transfer the data, including Personal Data, to United States and process it there.

    Your consent to this Privacy Policy followed by your submission of such information represents your agreement to that transfer.

    http4k Ltd will take all the steps reasonably necessary to ensure that your data is treated securely and in accordance with this Privacy Policy and no transfer of your Personal Data will take place to an organisation or a country unless there are adequate controls in place including the security of your data and other personal information.

    8. Disclosure of Data

    We may disclose personal information that we collect, or you provide:

    0.1. Disclosure for Law Enforcement.

    Under certain circumstances, we may be required to disclose your Personal Data if required to do so by law or in response to valid requests by public authorities.

    0.2. Business Transaction.

    If we or our subsidiaries are involved in a merger, acquisition or asset sale, your Personal Data may be transferred.

    0.3. Other cases. We may disclose your information also:

    0.3.1. to our subsidiaries and affiliates;

    0.3.2. to contractors, service providers, and other third parties we use to support our business;

    0.3.3. to fulfill the purpose for which you provide it;

    0.3.4. for the purpose of including your company’s logo on our website;

    0.3.5. for any other purpose disclosed by us when you provide the information;

    0.3.6. with your consent in any other cases;

    0.3.7. if we believe disclosure is necessary or appropriate to protect the rights, property, or safety of the Company, our customers, or others.

    9. Security of Data

    The security of your data is important to us but remember that no method of transmission over the Internet or method of electronic storage is 100% secure. While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.

    10. Your Data Protection Rights Under General Data Protection Regulation (GDPR)

    If you are a resident of the European Union (EU) and European Economic Area (EEA), you have certain data protection rights, covered by GDPR.

    We aim to take reasonable steps to allow you to correct, amend, delete, or limit the use of your Personal Data.

    If you wish to be informed what Personal Data we hold about you and if you want it to be removed from our systems, please email us at privacy@http4k.org.

    In certain circumstances, you have the following data protection rights:

    0.1. the right to access, update or to delete the information we have on you;

    0.2. the right of rectification. You have the right to have your information rectified if that information is inaccurate or incomplete;

    0.3. the right to object. You have the right to object to our processing of your Personal Data;

    0.4. the right of restriction. You have the right to request that we restrict the processing of your personal information;

    0.5. the right to data portability. You have the right to be provided with a copy of your Personal Data in a structured, machine-readable and commonly used format;

    0.6. the right to withdraw consent. You also have the right to withdraw your consent at any time where we rely on your consent to process your personal information;

    Please note that we may ask you to verify your identity before responding to such requests. Please note, we may not able to provide Service without some necessary data.

    You have the right to complain to a Data Protection Authority about our collection and use of your Personal Data. For more information, please contact your local data protection authority in the European Economic Area (EEA).

    11. Your Data Protection Rights under the California Privacy Protection Act (CalOPPA)

    CalOPPA is the first state law in the nation to require commercial websites and online services to post a privacy policy. The law’s reach stretches well beyond California to require a person or company in the United States (and conceivable the world) that operates websites collecting personally identifiable information from California consumers to post a conspicuous privacy policy on its website stating exactly the information being collected and those individuals with whom it is being shared, and to comply with this policy.

    According to CalOPPA we agree to the following:

    0.1. users can visit our site anonymously;

    0.2. our Privacy Policy link includes the word “Privacy”, and can easily be found on the home page of our website;

    0.3. users will be notified of any privacy policy changes on our Privacy Policy Page;

    0.4. users are able to change their personal information by emailing us at privacy@http4k.org.

    Our Policy on “Do Not Track” Signals:

    We honor Do Not Track signals and do not track, plant cookies, or use advertising when a Do Not Track browser mechanism is in place. Do Not Track is a preference you can set in your web browser to inform websites that you do not want to be tracked.

    You can enable or disable Do Not Track by visiting the Preferences or Settings page of your web browser.

    12. Your Data Protection Rights under the California Consumer Privacy Act (CCPA)

    If you are a California resident, you are entitled to learn what data we collect about you, ask to delete your data and not to sell (share) it. To exercise your data protection rights, you can make certain requests and ask us:

    0.1. What personal information we have about you. If you make this request, we will return to you:

    0.0.1. The categories of personal information we have collected about you.

    0.0.2. The categories of sources from which we collect your personal information.

    0.0.3. The business or commercial purpose for collecting or selling your personal information.

    0.0.4. The categories of third parties with whom we share personal information.

    0.0.5. The specific pieces of personal information we have collected about you.

    0.0.6. A list of categories of personal information that we have sold, along with the category of any other company we sold it to. If we have not sold your personal information, we will inform you of that fact.

    0.0.7. A list of categories of personal information that we have disclosed for a business purpose, along with the category of any other company we shared it with.

    Please note, you are entitled to ask us to provide you with this information up to two times in a rolling twelve-month period. When you make this request, the information provided may be limited to the personal information we collected about you in the previous 12 months.

    0.2. To delete your personal information. If you make this request, we will delete the personal information we hold about you as of the date of your request from our records and direct any service providers to do the same. In some cases, deletion may be accomplished through de-identification of the information. If you choose to delete your personal information, you may not be able to use certain functions that require your personal information to operate.

    0.3. To stop selling your personal information. We don’t sell or rent your personal information to any third parties for any purpose. We do not sell your personal information for monetary consideration. However, under some circumstances, a transfer of personal information to a third party, or within our family of companies, without monetary consideration may be considered a “sale” under California law. You are the only owner of your Personal Data and can request disclosure or deletion at any time.

    If you submit a request to stop selling your personal information, we will stop making such transfers.

    Please note, if you ask us to delete or stop selling your data, it may impact your experience with us, and you may not be able to participate in certain programs or membership services which require the usage of your personal information to function. But in no circumstances, we will discriminate against you for exercising your rights.

    To exercise your California data protection rights described above, please send your request(s) by email: privacy@http4k.org.

    Your data protection rights, described above, are covered by the CCPA, short for the California Consumer Privacy Act. To find out more, visit the official California Legislative Information website. The CCPA took effect on 01/01/2020.

    13. Service Providers

    We may employ third party companies and individuals to facilitate our Service (“Service Providers”), provide Service on our behalf, perform Service-related services or assist us in analysing how our Service is used.

    These third parties have access to your Personal Data only to perform these tasks on our behalf and are obligated not to disclose or use it for any other purpose.

    14. Analytics

    We may use third-party Service Providers to monitor and analyze the use of our Service.

    15. CI/CD tools

    We may use third-party Service Providers to automate the development process of our Service.

    16. Behavioral Remarketing

    We may use remarketing services to advertise on third party websites to you after you visited our Service. We and our third-party vendors use cookies to inform, optimise and serve ads based on your past visits to our Service.

    17. Payments

    We may provide paid products and/or services within Service. In that case, we use third-party services for payment processing (e.g. payment processors).

    We will not store or collect your payment card details. That information is provided directly to our third-party payment processors whose use of your personal information is governed by their Privacy Policy. These payment processors adhere to the standards set by PCI-DSS as managed by the PCI Security Standards Council, which is a joint effort of brands like Visa, Mastercard, American Express and Discover. PCI-DSS requirements help ensure the secure handling of payment information.

    18. Links to Other Sites

    Our Service may contain links to other sites that are not operated by us. If you click a third party link, you will be directed to that third party’s site. We strongly advise you to review the Privacy Policy of every site you visit.

    We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.

    19. Children’s Privacy

    Our Services are not intended for use by children under the age of 18 (“Child” or “Children”).

    We do not knowingly collect personally identifiable information from Children under 18. If you become aware that a Child has provided us with Personal Data, please contact us. If we become aware that we have collected Personal Data from Children without verification of parental consent, we take steps to remove that information from our servers.

    20. Changes to This Privacy Policy

    We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page.

    We will let you know via email and/or a prominent notice on our Service, prior to the change becoming effective and update “effective date” at the top of this Privacy Policy.

    You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.

    21. Contact Us

    If you have any questions about this Privacy Policy, please contact us by email: privacy@http4k.org.

    pumb
    \ No newline at end of file diff --git a/quickstart/index.html b/quickstart/index.html index 079fb0a25..c5d2569f1 100644 --- a/quickstart/index.html +++ b/quickstart/index.html @@ -105,4 +105,7 @@ server.stop() } -

    I want to see what http4k can do!

    We have a page dedicated to how http4k can be used in a variety of scenarios. See http4k In Action.

    pumb
    \ No newline at end of file +

    I want to see what http4k can do!

    We have a page dedicated to how http4k can be used in a variety of scenarios. See http4k In Action.

    pumb
    \ No newline at end of file diff --git a/rationale/index.html b/rationale/index.html index 0232b4894..d1659e604 100644 --- a/rationale/index.html +++ b/rationale/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Rationale

    http4k was created as the distillation of 15 years worth of experience of using various server-side libraries and we’ve stolen good ideas from everywhere we can. For instance - the routing module is inspired by UtterlyIdle, the “Server as a function” and filter model is stolen from Finagle, and the contract module OpenApi generator is ported from Fintrospect. With the growing adoption of Kotlin, we wanted something that would fully leverage the features of the language and it felt like a good time to start something from scratch.

    For our purposes, we wanted something that:

    1. Was based on simple functional concepts and embraced immutability.
    2. Embraced the “Server as a Function” model a uniform server/client API.
    3. Absolutely no magic involved: No reflection. No annotations.
    4. Lightweight with minimal dependencies (apart from the Kotlin StdLib, http4k-core has zero).
    5. Embraced Test-Driven approaches, was testable outside of an HTTP container, and testing should require no custom infrastructure.
    6. Starts/stops ultra quickly.
    7. Provides typesafe HTTP message deconstruction/construction.
    8. Automatically dealt with contract breaches to remove boilerplate.
    9. Automatic generation of OpenApi documentation (including JSON Schema models).

    http4k ticks all of these boxes.

    It allow us to construct entire suites of services which can be tested either wired together without HTTP, or spun up in containers using a single line of code. The symmetric HTTP API also allows Filter chains (often called “Middleware” or “Interceptors” in other frameworks) to be constructed into reusable units/stacks for both server and client sides (eg. logging/metrics/caching…) since they can be composed together for later use.

    As a bonus, we can also easily create simple Fake servers for any HTTP contract, which means (in combination with CDC suites) you can end-to-end test micro-services in an outside-in way (using GOOS-style acceptance tests).

    Scenarios such as “what happens if this HTTP dependency continually takes > 5 seconds to respond?” are easily modelled - answers you can’t easily get if you’re faking out your dependencies inside the HTTP boundary.

    pumb
    \ No newline at end of file +

    Rationale

    http4k was created as the distillation of 15 years worth of experience of using various server-side libraries and we’ve stolen good ideas from everywhere we can. For instance - the routing module is inspired by UtterlyIdle, the “Server as a function” and filter model is stolen from Finagle, and the contract module OpenApi generator is ported from Fintrospect. With the growing adoption of Kotlin, we wanted something that would fully leverage the features of the language and it felt like a good time to start something from scratch.

    For our purposes, we wanted something that:

    1. Was based on simple functional concepts and embraced immutability.
    2. Embraced the “Server as a Function” model a uniform server/client API.
    3. Absolutely no magic involved: No reflection. No annotations.
    4. Lightweight with minimal dependencies (apart from the Kotlin StdLib, http4k-core has zero).
    5. Embraced Test-Driven approaches, was testable outside of an HTTP container, and testing should require no custom infrastructure.
    6. Starts/stops ultra quickly.
    7. Provides typesafe HTTP message deconstruction/construction.
    8. Automatically dealt with contract breaches to remove boilerplate.
    9. Automatic generation of OpenApi documentation (including JSON Schema models).

    http4k ticks all of these boxes.

    It allow us to construct entire suites of services which can be tested either wired together without HTTP, or spun up in containers using a single line of code. The symmetric HTTP API also allows Filter chains (often called “Middleware” or “Interceptors” in other frameworks) to be constructed into reusable units/stacks for both server and client sides (eg. logging/metrics/caching…) since they can be composed together for later use.

    As a bonus, we can also easily create simple Fake servers for any HTTP contract, which means (in combination with CDC suites) you can end-to-end test micro-services in an outside-in way (using GOOS-style acceptance tests).

    Scenarios such as “what happens if this HTTP dependency continually takes > 5 seconds to respond?” are easily modelled - answers you can’t easily get if you’re faking out your dependencies inside the HTTP boundary.

    pumb
    \ No newline at end of file diff --git a/security-policy/index.html b/security-policy/index.html index c9c192684..3d00f2517 100644 --- a/security-policy/index.html +++ b/security-policy/index.html @@ -81,4 +81,7 @@ maintainers.

    Vulnerable Dependency Versions

    The http4k team strives to keep dependencies updated, even if a specific version has no vulnerabilities. However, we do not consider the inclusion of a vulnerable dependency in http4k itself to be a vulnerability, as developers are free to override dependency versions. It’s the responsibility of the dependency maintainers to release updates with security -patches, and we will incorporate these changes in subsequent http4k releases.

    pumb
    \ No newline at end of file +patches, and we will incorporate these changes in subsequent http4k releases.

    pumb
    \ No newline at end of file diff --git a/security/index.html b/security/index.html index 38aded08d..f97b7bea1 100644 --- a/security/index.html +++ b/security/index.html @@ -73,4 +73,7 @@ */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Security Advisories

    This page lists http4k security advisories.

    Report a security vulnerability

    To report a security vulnerability for a project within the http4k ecosystem, see the -Security Policy
    pumb
    \ No newline at end of file +Security Policy
    pumb
    \ No newline at end of file diff --git a/showcase/index.html b/showcase/index.html index d676f0632..ca6e716c7 100644 --- a/showcase/index.html +++ b/showcase/index.html @@ -101,4 +101,7 @@ JSON / Lenses OpenApi CD pipeline
    alisabzevari/kotlin-http4k-realworld-example-app
    Real World example (Medium clone)
    Testing -Contracts
    pumb
    \ No newline at end of file +Contracts
    pumb
    \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 0e72851ff..2ca210c59 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://http4k.org/ecosystem/connect/concepts/pattern/https://http4k.org/ecosystem/http4k/reference/core/https://http4k.org/ecosystem/connect/reference/overview/https://http4k.org/ecosystem/http4k/https://http4k.org/tutorial/your_first_http4k_app/https://http4k.org/ecosystem/connect/https://http4k.org/tutorial/tdding_http4k/https://http4k.org/tutorial/serverless_http4k_with_aws_lambda/https://http4k.org/tutorial/going_native_with_graal_on_aws_lambda/https://http4k.org/2023-06-01T00:00:00+00:00https://http4k.org/news/http4k_v5/2023-06-01T00:00:00+00:00https://http4k.org/news/2023-06-01T00:00:00+00:00https://http4k.org/news/typesafe_configuration/2021-10-01T00:00:00+00:00https://http4k.org/news/regarding_jcenter/2021-02-01T00:00:00+00:00https://http4k.org/news/http4k_v4/2021-01-01T00:00:00+00:00https://http4k.org/news/toolbox/2020-11-01T00:00:00+00:00https://http4k.org/news/nanoservices/2020-10-01T00:00:00+00:00https://http4k.org/news/retrospective_v3/2020-09-01T00:00:00+00:00https://http4k.org/news/documenting_apis_with_openapi/2019-05-01T00:00:00+00:00https://http4k.org/news/typesafe_websockets/2017-12-01T00:00:00+00:00https://http4k.org/news/meet_http4k/2017-11-01T00:00:00+00:00https://http4k.org/security/1999-12-31T00:00:00+00:00https://http4k.org/learn/https://http4k.org/ecosystem/connect/reference/ai/anthropic/https://http4k.org/ecosystem/connect/reference/ai/azure/https://http4k.org/ecosystem/connect/reference/ai/langchain/https://http4k.org/ecosystem/connect/reference/ai/lmstudio/https://http4k.org/ecosystem/connect/reference/ai/ollama/https://http4k.org/ecosystem/connect/reference/ai/openai/https://http4k.org/ecosystem/connect/concepts/clients/https://http4k.org/ecosystem/http4k/reference/approvaltests/https://http4k.org/howto/arrange_filters_into_stacks/https://http4k.org/howto/secure_and_auth_http/https://http4k.org/ecosystem/connect/reference/aws/https://http4k.org/ecosystem/http4k/reference/aws/https://http4k.org/ecosystem/connect/reference/amazon/apprunner/https://http4k.org/ecosystem/connect/reference/amazon/cloudfront/https://http4k.org/ecosystem/connect/reference/amazon/evidently/https://http4k.org/ecosystem/connect/reference/amazon/cloudwatchlogs/https://http4k.org/ecosystem/connect/reference/amazon/cognito/https://http4k.org/ecosystem/connect/reference/amazon/containercredentials/https://http4k.org/ecosystem/connect/reference/amazon/dynamodb/https://http4k.org/ecosystem/connect/reference/amazon/eventbridge/https://http4k.org/ecosystem/connect/reference/amazon/firehose/https://http4k.org/ecosystem/connect/reference/amazon/iamidentitycenter/https://http4k.org/ecosystem/connect/reference/amazon/instancemetadata/https://http4k.org/ecosystem/connect/reference/amazon/kms/https://http4k.org/ecosystem/connect/reference/amazon/lambda/https://http4k.org/ecosystem/connect/reference/amazon/s3/https://http4k.org/ecosystem/connect/reference/amazon/secretsmanager/https://http4k.org/ecosystem/connect/reference/amazon/sts/https://http4k.org/ecosystem/connect/reference/amazon/ses/https://http4k.org/ecosystem/connect/reference/amazon/sns/https://http4k.org/ecosystem/connect/reference/amazon/sqs/https://http4k.org/ecosystem/connect/reference/amazon/systemsmanager/https://http4k.org/ecosystem/http4k/reference/azure/https://http4k.org/ecosystem/connect/changelog/https://http4k.org/ecosystem/http4k/changelog/https://http4k.org/ecosystem/http4k/reference/chaos/https://http4k.org/howto/client_as_a_function/https://http4k.org/ecosystem/http4k/reference/clients/https://http4k.org/ecosystem/http4k/reference/cloud_events/https://http4k.org/ecosystem/http4k/reference/cloud_native/https://http4k.org/ecosystem/http4k/reference/config/https://http4k.org/howto/configure_an_oauth_server/https://http4k.org/consulting/https://http4k.org/ecosystem/http4k/reference/contracts/https://http4k.org/contributing/https://http4k.org/code-of-conduct/https://http4k.org/ecosystem/connect/contributing/https://http4k.org/ecosystem/http4k/contributing/https://http4k.org/howto/create_a_custom_json_marshaller/https://http4k.org/howto/customise_a_server_backend/https://http4k.org/howto/deploy_webjars/https://http4k.org/training/https://http4k.org/ecosystem/http4k/reference/digest/https://http4k.org/disclaimer/https://http4k.org/ecosystem/https://http4k.org/ecosystem/http4k/reference/https://http4k.org/ecosystem/http4k/reference/failsafe/https://http4k.org/faq/https://http4k.org/ecosystem/connect/reference/github/https://http4k.org/ecosystem/connect/reference/gitlab/https://http4k.org/ecosystem/connect/reference/google/analytics-ga4/https://http4k.org/ecosystem/connect/reference/google/analytics-ua/https://http4k.org/ecosystem/connect/reference/ksp/https://http4k.org/ecosystem/http4k/reference/graphql/https://http4k.org/ecosystem/http4k/reference/hamkrest/https://http4k.org/howto/https://http4k.org/ecosystem/http4k/reference/htmx/https://http4k.org/ecosystem/http4k/concepts/http/https://http4k.org/ecosystem/http4k-connect/https://http4k.org/ecosystem/http4k-core/https://http4k.org/howto/implement-your-own-clients/https://http4k.org/howto/integrate_with_openapi/https://http4k.org/ecosystem/http4k/reference/json/https://http4k.org/ecosystem/http4k/reference/jsonrpc/https://http4k.org/ecosystem/connect/reference/kafka/rest/https://http4k.org/ecosystem/connect/reference/kafka/schemaregistry/https://http4k.org/ecosystem/http4k/reference/kotest/https://http4k.org/ecosystem/http4k/reference/dataframe/https://http4k.org/ecosystem/http4k/concepts/lens/https://http4k.org/howto/leverage_graphql/https://http4k.org/lts-support/https://http4k.org/howto/lookup_a_user_principal/https://http4k.org/howto/make_parallel_calls/https://http4k.org/howto/make_json_faster/https://http4k.org/ecosystem/connect/reference/mattermost/https://http4k.org/ecosystem/http4k/reference/micrometer/https://http4k.org/module/https://http4k.org/howto/monitor_http4k/https://http4k.org/ecosystem/http4k/reference/multipart/https://http4k.org/ecosystem/http4k/reference/oauth/https://http4k.org/ecosystem/http4k/reference/opentelemetry/https://http4k.org/overview/https://http4k.org/performance/https://http4k.org/howto/pimp-your-clients-with-ksp/https://http4k.org/ecosystem/http4k/reference/playwright/https://http4k.org/privacy-policy/https://http4k.org/quickstart/https://http4k.org/rationale/https://http4k.org/howto/record_and_replay_http_traffic/https://http4k.org/howto/create_a_swagger_ui/https://http4k.org/howto/attach_context_to_a_request/https://http4k.org/ecosystem/http4k/reference/resilience4j/https://http4k.org/howto/nestable_routes/https://http4k.org/howto/simple_routing/https://http4k.org/security-policy/https://http4k.org/howto/self_document_systems_with_tests/https://http4k.org/howto/serve_sse/https://http4k.org/howto/serve_websockets/https://http4k.org/howto/server_as_a_function/https://http4k.org/ecosystem/http4k/concepts/server-sent-events/https://http4k.org/ecosystem/http4k/concepts/serverless/https://http4k.org/ecosystem/http4k/reference/serverless/https://http4k.org/ecosystem/http4k/reference/servers/https://http4k.org/ecosystem/http4k/reference/servicevirtualisation/https://http4k.org/showcase/https://http4k.org/solutions/https://http4k.org/ecosystem/connect/reference/storage/core/https://http4k.org/ecosystem/connect/reference/storage/http/https://http4k.org/ecosystem/connect/reference/storage/jdbc/https://http4k.org/ecosystem/connect/reference/storage/redis/https://http4k.org/ecosystem/connect/reference/storage/s3/https://http4k.org/ecosystem/http4k/reference/strikt/https://http4k.org/howto/structure_your_logs_with_events/https://http4k.org/ecosystem/connect/concepts/fakes/https://http4k.org/tutorial/tdding_http4k/part1/https://http4k.org/tutorial/tdding_http4k/part2/https://http4k.org/tutorial/tdding_http4k/part3/https://http4k.org/tutorial/tdding_http4k/part4/https://http4k.org/ecosystem/http4k/reference/templating/https://http4k.org/terms-and-conditions/https://http4k.org/howto/test_using_service_virtualisation/https://http4k.org/ecosystem/http4k/reference/testing/https://http4k.org/ecosystem/http4k/reference/tracerbullet/https://http4k.org/tutorial/https://http4k.org/howto/typesafe_your_api_with_lenses/https://http4k.org/howto/use_a_custom_oauth_provider/https://http4k.org/howto/use_a_server_backend/https://http4k.org/howto/use_a_templating_engine/https://http4k.org/howto/use_auto_content_negotiation/https://http4k.org/howto/use_html_forms/https://http4k.org/howto/use_multipart_forms/https://http4k.org/ecosystem/http4k/reference/webdriver/https://http4k.org/ecosystem/http4k/reference/webhooks/https://http4k.org/ecosystem/http4k/concepts/websockets/https://http4k.org/howto/write_different_test_types/https://http4k.org/ecosystem/http4k/reference/xml/https://http4k.org/ecosystem/http4k/reference/yaml/ \ No newline at end of file +https://http4k.org/ecosystem/connect/concepts/pattern/https://http4k.org/ecosystem/http4k/reference/core/https://http4k.org/ecosystem/connect/reference/overview/https://http4k.org/ecosystem/http4k/https://http4k.org/tutorial/your_first_http4k_app/https://http4k.org/ecosystem/connect/https://http4k.org/tutorial/tdding_http4k/https://http4k.org/tutorial/serverless_http4k_with_aws_lambda/https://http4k.org/tutorial/going_native_with_graal_on_aws_lambda/https://http4k.org/2023-06-01T00:00:00+00:00https://http4k.org/news/http4k_v5/2023-06-01T00:00:00+00:00https://http4k.org/news/2023-06-01T00:00:00+00:00https://http4k.org/news/typesafe_configuration/2021-10-01T00:00:00+00:00https://http4k.org/news/regarding_jcenter/2021-02-01T00:00:00+00:00https://http4k.org/news/http4k_v4/2021-01-01T00:00:00+00:00https://http4k.org/news/toolbox/2020-11-01T00:00:00+00:00https://http4k.org/news/nanoservices/2020-10-01T00:00:00+00:00https://http4k.org/news/retrospective_v3/2020-09-01T00:00:00+00:00https://http4k.org/news/documenting_apis_with_openapi/2019-05-01T00:00:00+00:00https://http4k.org/news/typesafe_websockets/2017-12-01T00:00:00+00:00https://http4k.org/news/meet_http4k/2017-11-01T00:00:00+00:00https://http4k.org/security/1999-12-31T00:00:00+00:00https://http4k.org/learn/https://http4k.org/ecosystem/connect/reference/ai/anthropic/https://http4k.org/ecosystem/connect/reference/ai/azure/https://http4k.org/ecosystem/connect/reference/ai/langchain/https://http4k.org/ecosystem/connect/reference/ai/lmstudio/https://http4k.org/ecosystem/connect/reference/ai/ollama/https://http4k.org/ecosystem/connect/reference/ai/openai/https://http4k.org/ecosystem/connect/concepts/clients/https://http4k.org/ecosystem/http4k/reference/approvaltests/https://http4k.org/howto/arrange_filters_into_stacks/https://http4k.org/howto/secure_and_auth_http/https://http4k.org/ecosystem/connect/reference/aws/https://http4k.org/ecosystem/http4k/reference/aws/https://http4k.org/ecosystem/connect/reference/amazon/apprunner/https://http4k.org/ecosystem/connect/reference/amazon/cloudfront/https://http4k.org/ecosystem/connect/reference/amazon/evidently/https://http4k.org/ecosystem/connect/reference/amazon/cloudwatchlogs/https://http4k.org/ecosystem/connect/reference/amazon/cognito/https://http4k.org/ecosystem/connect/reference/amazon/containercredentials/https://http4k.org/ecosystem/connect/reference/amazon/dynamodb/https://http4k.org/ecosystem/connect/reference/amazon/eventbridge/https://http4k.org/ecosystem/connect/reference/amazon/firehose/https://http4k.org/ecosystem/connect/reference/amazon/iamidentitycenter/https://http4k.org/ecosystem/connect/reference/amazon/instancemetadata/https://http4k.org/ecosystem/connect/reference/amazon/kms/https://http4k.org/ecosystem/connect/reference/amazon/lambda/https://http4k.org/ecosystem/connect/reference/amazon/s3/https://http4k.org/ecosystem/connect/reference/amazon/secretsmanager/https://http4k.org/ecosystem/connect/reference/amazon/sts/https://http4k.org/ecosystem/connect/reference/amazon/ses/https://http4k.org/ecosystem/connect/reference/amazon/sns/https://http4k.org/ecosystem/connect/reference/amazon/sqs/https://http4k.org/ecosystem/connect/reference/amazon/systemsmanager/https://http4k.org/ecosystem/http4k/reference/azure/https://http4k.org/ecosystem/connect/changelog/https://http4k.org/ecosystem/http4k/changelog/https://http4k.org/ecosystem/http4k/reference/chaos/https://http4k.org/howto/client_as_a_function/https://http4k.org/ecosystem/http4k/reference/clients/https://http4k.org/ecosystem/http4k/reference/cloud_events/https://http4k.org/ecosystem/http4k/reference/cloud_native/https://http4k.org/company/https://http4k.org/ecosystem/http4k/reference/config/https://http4k.org/howto/configure_an_oauth_server/https://http4k.org/consulting/https://http4k.org/ecosystem/http4k/reference/contracts/https://http4k.org/contributing/https://http4k.org/code-of-conduct/https://http4k.org/ecosystem/connect/contributing/https://http4k.org/ecosystem/http4k/contributing/https://http4k.org/howto/create_a_custom_json_marshaller/https://http4k.org/howto/customise_a_server_backend/https://http4k.org/howto/deploy_webjars/https://http4k.org/training/https://http4k.org/ecosystem/http4k/reference/digest/https://http4k.org/disclaimer/https://http4k.org/ecosystem/https://http4k.org/ecosystem/http4k/reference/https://http4k.org/ecosystem/http4k/reference/failsafe/https://http4k.org/faq/https://http4k.org/ecosystem/connect/reference/github/https://http4k.org/ecosystem/connect/reference/gitlab/https://http4k.org/ecosystem/connect/reference/google/analytics-ga4/https://http4k.org/ecosystem/connect/reference/google/analytics-ua/https://http4k.org/ecosystem/connect/reference/ksp/https://http4k.org/ecosystem/http4k/reference/graphql/https://http4k.org/ecosystem/http4k/reference/hamkrest/https://http4k.org/howto/https://http4k.org/ecosystem/http4k/reference/htmx/https://http4k.org/ecosystem/http4k/concepts/http/https://http4k.org/ecosystem/http4k-connect/https://http4k.org/ecosystem/http4k-core/https://http4k.org/howto/implement-your-own-clients/https://http4k.org/howto/integrate_with_openapi/https://http4k.org/ecosystem/http4k/reference/json/https://http4k.org/ecosystem/http4k/reference/jsonrpc/https://http4k.org/ecosystem/connect/reference/kafka/rest/https://http4k.org/ecosystem/connect/reference/kafka/schemaregistry/https://http4k.org/ecosystem/http4k/reference/kotest/https://http4k.org/ecosystem/http4k/reference/dataframe/https://http4k.org/ecosystem/http4k/concepts/lens/https://http4k.org/howto/leverage_graphql/https://http4k.org/lts-support/https://http4k.org/howto/lookup_a_user_principal/https://http4k.org/howto/make_parallel_calls/https://http4k.org/howto/make_json_faster/https://http4k.org/ecosystem/connect/reference/mattermost/https://http4k.org/ecosystem/http4k/reference/micrometer/https://http4k.org/module/https://http4k.org/howto/monitor_http4k/https://http4k.org/ecosystem/http4k/reference/multipart/https://http4k.org/ecosystem/http4k/reference/oauth/https://http4k.org/ecosystem/http4k/reference/opentelemetry/https://http4k.org/overview/https://http4k.org/performance/https://http4k.org/howto/pimp-your-clients-with-ksp/https://http4k.org/ecosystem/http4k/reference/playwright/https://http4k.org/privacy-policy/https://http4k.org/quickstart/https://http4k.org/rationale/https://http4k.org/howto/record_and_replay_http_traffic/https://http4k.org/howto/create_a_swagger_ui/https://http4k.org/howto/attach_context_to_a_request/https://http4k.org/ecosystem/http4k/reference/resilience4j/https://http4k.org/howto/nestable_routes/https://http4k.org/howto/simple_routing/https://http4k.org/security-policy/https://http4k.org/howto/self_document_systems_with_tests/https://http4k.org/howto/serve_sse/https://http4k.org/howto/serve_websockets/https://http4k.org/howto/server_as_a_function/https://http4k.org/ecosystem/http4k/concepts/server-sent-events/https://http4k.org/ecosystem/http4k/concepts/serverless/https://http4k.org/ecosystem/http4k/reference/serverless/https://http4k.org/ecosystem/http4k/reference/servers/https://http4k.org/ecosystem/http4k/reference/servicevirtualisation/https://http4k.org/showcase/https://http4k.org/solutions/https://http4k.org/ecosystem/connect/reference/storage/core/https://http4k.org/ecosystem/connect/reference/storage/http/https://http4k.org/ecosystem/connect/reference/storage/jdbc/https://http4k.org/ecosystem/connect/reference/storage/redis/https://http4k.org/ecosystem/connect/reference/storage/s3/https://http4k.org/ecosystem/http4k/reference/strikt/https://http4k.org/howto/structure_your_logs_with_events/https://http4k.org/ecosystem/connect/concepts/fakes/https://http4k.org/tutorial/tdding_http4k/part1/https://http4k.org/tutorial/tdding_http4k/part2/https://http4k.org/tutorial/tdding_http4k/part3/https://http4k.org/tutorial/tdding_http4k/part4/https://http4k.org/ecosystem/http4k/reference/templating/https://http4k.org/terms-and-conditions/https://http4k.org/howto/test_using_service_virtualisation/https://http4k.org/ecosystem/http4k/reference/testing/https://http4k.org/ecosystem/http4k/reference/tracerbullet/https://http4k.org/tutorial/https://http4k.org/howto/typesafe_your_api_with_lenses/https://http4k.org/howto/use_a_custom_oauth_provider/https://http4k.org/howto/use_a_server_backend/https://http4k.org/howto/use_a_templating_engine/https://http4k.org/howto/use_auto_content_negotiation/https://http4k.org/howto/use_html_forms/https://http4k.org/howto/use_multipart_forms/https://http4k.org/ecosystem/http4k/reference/webdriver/https://http4k.org/ecosystem/http4k/reference/webhooks/https://http4k.org/ecosystem/http4k/concepts/websockets/https://http4k.org/howto/write_different_test_types/https://http4k.org/ecosystem/http4k/reference/xml/https://http4k.org/ecosystem/http4k/reference/yaml/ \ No newline at end of file diff --git a/solutions/index.html b/solutions/index.html index 6aef1a4f6..532d81641 100644 --- a/solutions/index.html +++ b/solutions/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    http4k Professional Solutions

    Maximize your productivity with http4k, leveraging the simplicity and power of the world’s most flexible and lightweight HTTP libraries. http4k Solutions equips your developers with the tools to build, modernize, and maintain cutting-edge web applications with ease.

    Scale up your http4k expertise

    On-demand training developed and curated by the maintainers of http4k, designed to upskill your team at scale.

    Modernize your apps with confidence

    Upgrade your applications to the latest version of http4k, or architect entirely new projects with our expert guidance.

    World-class support for your http4k stack

    Benefit from 24x7 support across the http4k ecosystem, ensuring stability and security for your critical systems.

    Consult with the creators of http4k

    Collaborate directly with the maintainers of http4k for tailored consulting and expert insights into your development needs.

    Unlock the full potential of the http4k ecosystem

    Make sure your applications leverage the latest innovations in http4k, from serverless integrations to enhanced testing capabilities.

    Empower your developers with the power of http4k

    Upskill and grow your team with the inside knowledge of http4k’s creators, helping your developers master the toolkit.

    Focus on building, not troubleshooting

    With http4k’s support and services keeping your projects up to date, your teams can stay focused on delivering great apps.

    Rely on proven development expertise

    Tap into http4k’s deep well of experience, from lightweight microservices to highly-scalable enterprise applications.

    Accelerate development, minimize distractions

    Streamline your workflow and eliminate roadblocks to maximize efficiency in delivering projects.

    Professional Services

    Support

    It’s important to us that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    Let's talk

    Contact us
    pumb
    \ No newline at end of file +

    http4k Professional Solutions

    Maximize your productivity with http4k, leveraging the simplicity and power of the world’s most flexible and lightweight HTTP libraries. http4k Solutions equips your developers with the tools to build, modernize, and maintain cutting-edge web applications with ease.

    Scale up your http4k expertise

    On-demand training developed and curated by the maintainers of http4k, designed to upskill your team at scale.

    Modernize your apps with confidence

    Upgrade your applications to the latest version of http4k, or architect entirely new projects with our expert guidance.

    World-class support for your http4k stack

    Benefit from 24x7 support across the http4k ecosystem, ensuring stability and security for your critical systems.

    Consult with the creators of http4k

    Collaborate directly with the maintainers of http4k for tailored consulting and expert insights into your development needs.

    Unlock the full potential of the http4k ecosystem

    Make sure your applications leverage the latest innovations in http4k, from serverless integrations to enhanced testing capabilities.

    Empower your developers with the power of http4k

    Upskill and grow your team with the inside knowledge of http4k’s creators, helping your developers master the toolkit.

    Focus on building, not troubleshooting

    With http4k’s support and services keeping your projects up to date, your teams can stay focused on delivering great apps.

    Rely on proven development expertise

    Tap into http4k’s deep well of experience, from lightweight microservices to highly-scalable enterprise applications.

    Accelerate development, minimize distractions

    Streamline your workflow and eliminate roadblocks to maximize efficiency in delivering projects.

    Professional Services

    Support

    It’s important that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    Let's talk

    Contact us
    pumb
    \ No newline at end of file diff --git a/terms-and-conditions/index.html b/terms-and-conditions/index.html index 215985921..24c72e938 100644 --- a/terms-and-conditions/index.html +++ b/terms-and-conditions/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Terms & conditions

    Last updated: 2024-05-20

    1. Introduction

    Welcome to http4k Ltd (“Company”, “we”, “our”, “us”)!

    These Terms of Service (“Terms”, “Terms of Service”) govern your use of our website located at http4k.org (together or individually “Service”) operated by http4k Ltd.

    Our Privacy Policy also governs your use of our Service and explains how we collect, safeguard and disclose information that results from your use of our web pages.

    Your agreement with us includes these Terms and our Privacy Policy (“Agreements”). You acknowledge that you have read and understood Agreements, and agree to be bound of them.

    If you do not agree with (or cannot comply with) Agreements, then you may not use the Service, but please let us know by emailing at info@http4k.org so we can try to find a solution. These Terms apply to all visitors, users and others who wish to access or use Service.

    2. Communications

    By using our Service, you agree to subscribe to newsletters, marketing or promotional materials and other information we may send. However, you may opt out of receiving any, or all, of these communications from us by following the unsubscribe link or by emailing at info@http4k.org.

    3. Purchases

    If you wish to purchase any product or service made available through Service (“Purchase”), you may be asked to supply certain information relevant to your Purchase including but not limited to, your credit or debit card number, the expiration date of your card, your billing address, and your shipping information.

    You represent and warrant that: (i) you have the legal right to use any card(s) or other payment method(s) in connection with any Purchase; and that (ii) the information you supply to us is true, correct and complete.

    We may employ the use of third party services for the purpose of facilitating payment and the completion of Purchases. By submitting your information, you grant us the right to provide the information to these third parties subject to our Privacy Policy.

    We reserve the right to refuse or cancel your order at any time for reasons including but not limited to: product or service availability, errors in the description or price of the product or service, error in your order or other reasons.

    We reserve the right to refuse or cancel your order if fraud or an unauthorized or illegal transaction is suspected.

    4. Contests, Sweepstakes and Promotions

    Any contests, sweepstakes or other promotions (collectively, “Promotions”) made available through Service may be governed by rules that are separate from these Terms of Service. If you participate in any Promotions, please review the applicable rules as well as our Privacy Policy. If the rules for a Promotion conflict with these Terms of Service, Promotion rules will apply.

    5. Subscriptions

    Some parts of Service are billed on a subscription basis (“Subscription(s)”). You will be billed in advance on a recurring and periodic basis (“Billing Cycle”). Billing cycles will be set depending on the type of subscription plan you select when purchasing a Subscription.

    At the end of each Billing Cycle, your Subscription will automatically renew under the exact same conditions unless you cancel it or http4k Ltd cancels it. You may cancel your Subscription renewal either through your online account management page or by contacting info@http4k.org customer support team.

    A valid payment method is required to process the payment for your subscription. You shall provide http4k Ltd with accurate and complete billing information that may include but not limited to full name, address, state, postal or zip code, telephone number, and a valid payment method information. By submitting such payment information, you automatically authorize http4k Ltd to charge all Subscription fees incurred through your account to any such payment instruments.

    Should automatic billing fail to occur for any reason, http4k Ltd reserves the right to terminate your access to the Service with immediate effect.

    6. Free Trial

    http4k Ltd may, at its sole discretion, offer a Subscription with a free trial for a limited period of time (“Free Trial”).

    You may be required to enter your billing information in order to sign up for Free Trial.

    If you do enter your billing information when signing up for Free Trial, you will not be charged by http4k Ltd until Free Trial has expired. On the last day of Free Trial period, unless you cancelled your Subscription, you will be automatically charged the applicable Subscription fees for the type of Subscription you have selected.

    At any time and without notice, http4k Ltd reserves the right to (i) modify Terms of Service of Free Trial offer, or (ii) cancel such Free Trial offer.

    7. Fee Changes

    http4k Ltd, in its sole discretion and at any time, may modify Subscription fees for the Subscriptions. Any Subscription fee change will become effective at the end of the then-current Billing Cycle.

    http4k Ltd will provide you with a reasonable prior notice of any change in Subscription fees to give you an opportunity to terminate your Subscription before such change becomes effective.

    Your continued use of Service after Subscription fee change comes into effect constitutes your agreement to pay the modified Subscription fee amount.

    8. Refunds

    We do not provide refunds for purchases or subscriptions you made.

    9. Content

    Content found on or through this Service are the property of http4k Ltd or used with permission. You may not distribute, modify, transmit, reuse, download, repost, copy, or use said Content, whether in whole or in part, for commercial purposes or for personal gain, without express advance written permission from us.

    10. Prohibited Uses

    You may use Service only for lawful purposes and in accordance with Terms. You agree not to use Service:

    0.1. In any way that violates any applicable national or international law or regulation.

    0.2. For the purpose of exploiting, harming, or attempting to exploit or harm minors in any way by exposing them to inappropriate content or otherwise.

    0.3. To transmit, or procure the sending of, any advertising or promotional material, including any “junk mail”, “chain letter,” “spam,” or any other similar solicitation.

    0.4. To impersonate or attempt to impersonate Company, a Company employee, another user, or any other person or entity.

    0.5. In any way that infringes upon the rights of others, or in any way is illegal, threatening, fraudulent, or harmful, or in connection with any unlawful, illegal, fraudulent, or harmful purpose or activity.

    0.6. To engage in any other conduct that restricts or inhibits anyone’s use or enjoyment of Service, or which, as determined by us, may harm or offend Company or users of Service or expose them to liability.

    Additionally, you agree not to:

    0.1. Use Service in any manner that could disable, overburden, damage, or impair Service or interfere with any other party’s use of Service, including their ability to engage in real time activities through Service.

    0.2. Use any robot, spider, or other automatic device, process, or means to access Service for any purpose, including monitoring or copying any of the material on Service.

    0.3. Use any manual process to monitor or copy any of the material on Service or for any other unauthorized purpose without our prior written consent.

    0.4. Use any device, software, or routine that interferes with the proper working of Service.

    0.5. Introduce any viruses, trojan horses, worms, logic bombs, or other material which is malicious or technologically harmful.

    0.6. Attempt to gain unauthorized access to, interfere with, damage, or disrupt any parts of Service, the server on which Service is stored, or any server, computer, or database connected to Service.

    0.7. Attack Service via a denial-of-service attack or a distributed denial-of-service attack.

    0.8. Take any action that may damage or falsify Company rating.

    0.9. Otherwise attempt to interfere with the proper working of Service.

    11. Analytics

    We may use third-party Service Providers to monitor and analyze the use of our Service.

    12. No Use By Minors

    Service is intended only for access and use by individuals at least eighteen (18) years old. By accessing or using Service, you warrant and represent that you are at least eighteen (18) years of age and with the full authority, right, and capacity to enter into this agreement and abide by all of the terms and conditions of Terms. If you are not at least eighteen (18) years old, you are prohibited from both the access and usage of Service.

    13. Accounts

    When you create an account with us, you guarantee that you are above the age of 18, and that the information you provide us is accurate, complete, and current at all times. Inaccurate, incomplete, or obsolete information may result in the immediate termination of your account on Service.

    You are responsible for maintaining the confidentiality of your account and password, including but not limited to the restriction of access to your computer and/or account. You agree to accept responsibility for any and all activities or actions that occur under your account and/or password, whether your password is with our Service or a third-party service. You must notify us immediately upon becoming aware of any breach of security or unauthorized use of your account.

    You may not use as a username the name of another person or entity or that is not lawfully available for use, a name or trademark that is subject to any rights of another person or entity other than you, without appropriate authorization. You may not use as a username any name that is offensive, vulgar or obscene.

    We reserve the right to refuse service, terminate accounts, remove or edit content, or cancel orders in our sole discretion.

    14. Intellectual Property

    Service and its original content (excluding Content provided by users), features and functionality are and will remain the exclusive property of http4k Ltd and its licensors. Service is protected by copyright, trademark, and other laws of and foreign countries. Our trademarks may not be used in connection with any product or service without the prior written consent of http4k Ltd.

    15. Copyright Policy

    We respect the intellectual property rights of others. It is our policy to respond to any claim that Content posted on Service infringes on the copyright or other intellectual property rights (“Infringement”) of any person or entity.

    If you are a copyright owner, or authorized on behalf of one, and you believe that the copyrighted work has been copied in a way that constitutes copyright infringement, please submit your claim via email to info@http4k.org, with the subject line: “Copyright Infringement” and include in your claim a detailed description of the alleged Infringement as detailed below, under “DMCA Notice and Procedure for Copyright Infringement Claims”

    You may be held accountable for damages (including costs and attorneys’ fees) for misrepresentation or bad-faith claims on the infringement of any Content found on and/or through Service on your copyright.

    16. DMCA Notice and Procedure for Copyright Infringement Claims

    You may submit a notification pursuant to the Digital Millennium Copyright Act (DMCA) by providing our Copyright Agent with the following information in writing (see 17 U.S.C 512(c)(3) for further detail):

    0.1. an electronic or physical signature of the person authorized to act on behalf of the owner of the copyright’s interest;

    0.2. a description of the copyrighted work that you claim has been infringed, including the URL (i.e., web page address) of the location where the copyrighted work exists or a copy of the copyrighted work;

    0.3. identification of the URL or other specific location on Service where the material that you claim is infringing is located;

    0.4. your address, telephone number, and email address;

    0.5. a statement by you that you have a good faith belief that the disputed use is not authorized by the copyright owner, its agent, or the law;

    0.6. a statement by you, made under penalty of perjury, that the above information in your notice is accurate and that you are the copyright owner or authorized to act on the copyright owner’s behalf.

    You can contact our Copyright Agent via email at info@http4k.org.

    17. Error Reporting and Feedback

    You may provide us either directly at info@http4k.org or via third party sites and tools with information and feedback concerning errors, suggestions for improvements, ideas, problems, complaints, and other matters related to our Service (“Feedback”). You acknowledge and agree that: (i) you shall not retain, acquire or assert any intellectual property right or other right, title or interest in or to the Feedback; (ii) Company may have development ideas similar to the Feedback; (iii) Feedback does not contain confidential information or proprietary information from you or any third party; and (iv) Company is not under any obligation of confidentiality with respect to the Feedback. In the event the transfer of the ownership to the Feedback is not possible due to applicable mandatory laws, you grant Company and its affiliates an exclusive, transferable, irrevocable, free-of-charge, sub-licensable, unlimited and perpetual right to use (including copy, modify, create derivative works, publish, distribute and commercialize) Feedback in any manner and for any purpose.

    18. Links To Other Web Sites

    Our Service may contain links to third party web sites or services that are not owned or controlled by http4k Ltd.

    http4k Ltd has no control over, and assumes no responsibility for the content, privacy policies, or practices of any third party web sites or services. We do not warrant the offerings of any of these entities/individuals or their websites.

    YOU ACKNOWLEDGE AND AGREE THAT COMPANY SHALL NOT BE RESPONSIBLE OR LIABLE, DIRECTLY OR INDIRECTLY, FOR ANY DAMAGE OR LOSS CAUSED OR ALLEGED TO BE CAUSED BY OR IN CONNECTION WITH USE OF OR RELIANCE ON ANY SUCH CONTENT, GOODS OR SERVICES AVAILABLE ON OR THROUGH ANY SUCH THIRD PARTY WEB SITES OR SERVICES.

    WE STRONGLY ADVISE YOU TO READ THE TERMS OF SERVICE AND PRIVACY POLICIES OF ANY THIRD PARTY WEB SITES OR SERVICES THAT YOU VISIT.

    19. Disclaimer Of Warranty

    THESE SERVICES ARE PROVIDED BY COMPANY ON AN “AS IS” AND “AS AVAILABLE” BASIS. COMPANY MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, AS TO THE OPERATION OF THEIR SERVICES, OR THE INFORMATION, CONTENT OR MATERIALS INCLUDED THEREIN. YOU EXPRESSLY AGREE THAT YOUR USE OF THESE SERVICES, THEIR CONTENT, AND ANY SERVICES OR ITEMS OBTAINED FROM US IS AT YOUR SOLE RISK.

    NEITHER COMPANY NOR ANY PERSON ASSOCIATED WITH COMPANY MAKES ANY WARRANTY OR REPRESENTATION WITH RESPECT TO THE COMPLETENESS, SECURITY, RELIABILITY, QUALITY, ACCURACY, OR AVAILABILITY OF THE SERVICES. WITHOUT LIMITING THE FOREGOING, NEITHER COMPANY NOR ANYONE ASSOCIATED WITH COMPANY REPRESENTS OR WARRANTS THAT THE SERVICES, THEIR CONTENT, OR ANY SERVICES OR ITEMS OBTAINED THROUGH THE SERVICES WILL BE ACCURATE, RELIABLE, ERROR-FREE, OR UNINTERRUPTED, THAT DEFECTS WILL BE CORRECTED, THAT THE SERVICES OR THE SERVER THAT MAKES IT AVAILABLE ARE FREE OF VIRUSES OR OTHER HARMFUL COMPONENTS OR THAT THE SERVICES OR ANY SERVICES OR ITEMS OBTAINED THROUGH THE SERVICES WILL OTHERWISE MEET YOUR NEEDS OR EXPECTATIONS.

    COMPANY HEREBY DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, STATUTORY, OR OTHERWISE, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, AND FITNESS FOR PARTICULAR PURPOSE.

    THE FOREGOING DOES NOT AFFECT ANY WARRANTIES WHICH CANNOT BE EXCLUDED OR LIMITED UNDER APPLICABLE LAW.

    20. Limitation Of Liability

    EXCEPT AS PROHIBITED BY LAW, YOU WILL HOLD US AND OUR OFFICERS, DIRECTORS, EMPLOYEES, AND AGENTS HARMLESS FOR ANY INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGE, HOWEVER IT ARISES (INCLUDING ATTORNEYS’ FEES AND ALL RELATED COSTS AND EXPENSES OF LITIGATION AND ARBITRATION, OR AT TRIAL OR ON APPEAL, IF ANY, WHETHER OR NOT LITIGATION OR ARBITRATION IS INSTITUTED), WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTION, OR ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, INCLUDING WITHOUT LIMITATION ANY CLAIM FOR PERSONAL INJURY OR PROPERTY DAMAGE, ARISING FROM THIS AGREEMENT AND ANY VIOLATION BY YOU OF ANY FEDERAL, STATE, OR LOCAL LAWS, STATUTES, RULES, OR REGULATIONS, EVEN IF COMPANY HAS BEEN PREVIOUSLY ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. EXCEPT AS PROHIBITED BY LAW, IF THERE IS LIABILITY FOUND ON THE PART OF COMPANY, IT WILL BE LIMITED TO THE AMOUNT PAID FOR THE PRODUCTS AND/OR SERVICES, AND UNDER NO CIRCUMSTANCES WILL THERE BE CONSEQUENTIAL OR PUNITIVE DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF PUNITIVE, INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE PRIOR LIMITATION OR EXCLUSION MAY NOT APPLY TO YOU.

    21. Termination

    We may terminate or suspend your account and bar access to Service immediately, without prior notice or liability, under our sole discretion, for any reason whatsoever and without limitation, including but not limited to a breach of Terms.

    If you wish to terminate your account, you may simply discontinue using Service.

    All provisions of Terms which by their nature should survive termination shall survive termination, including, without limitation, ownership provisions, warranty disclaimers, indemnity and limitations of liability.

    22. Governing Law

    These Terms shall be governed and construed in accordance with the laws of England, which governing law applies to agreement without regard to its conflict of law provisions.

    Our failure to enforce any right or provision of these Terms will not be considered a waiver of those rights. If any provision of these Terms is held to be invalid or unenforceable by a court, the remaining provisions of these Terms will remain in effect. These Terms constitute the entire agreement between us regarding our Service and supersede and replace any prior agreements we might have had between us regarding Service.

    23. Changes To Service

    We reserve the right to withdraw or amend our Service, and any service or material we provide via Service, in our sole discretion without notice. We will not be liable if for any reason all or any part of Service is unavailable at any time or for any period. From time to time, we may restrict access to some parts of Service, or the entire Service, to users, including registered users.

    24. Amendments To Terms

    We may amend Terms at any time by posting the amended terms on this site. It is your responsibility to review these Terms periodically.

    Your continued use of the Platform following the posting of revised Terms means that you accept and agree to the changes. You are expected to check this page frequently so you are aware of any changes, as they are binding on you.

    By continuing to access or use our Service after any revisions become effective, you agree to be bound by the revised terms. If you do not agree to the new terms, you are no longer authorized to use Service.

    25. Waiver And Severability

    No waiver by Company of any term or condition set forth in Terms shall be deemed a further or continuing waiver of such term or condition or a waiver of any other term or condition, and any failure of Company to assert a right or provision under Terms shall not constitute a waiver of such right or provision.

    If any provision of Terms is held by a court or other tribunal of competent jurisdiction to be invalid, illegal or unenforceable for any reason, such provision shall be eliminated or limited to the minimum extent such that the remaining provisions of Terms will continue in full force and effect.

    26. Acknowledgement

    BY USING SERVICE OR OTHER SERVICES PROVIDED BY US, YOU ACKNOWLEDGE THAT YOU HAVE READ THESE TERMS OF SERVICE AND AGREE TO BE BOUND BY THEM.

    27. Contact Us

    Please send your feedback, comments, requests for technical support by email: info@http4k.org.

    pumb
    \ No newline at end of file +

    Terms & conditions

    Last updated: 2024-05-20

    1. Introduction

    Welcome to http4k Ltd (“Company”, “we”, “our”, “us”)!

    These Terms of Service (“Terms”, “Terms of Service”) govern your use of our website located at http4k.org (together or individually “Service”) operated by http4k Ltd.

    Our Privacy Policy also governs your use of our Service and explains how we collect, safeguard and disclose information that results from your use of our web pages.

    Your agreement with us includes these Terms and our Privacy Policy (“Agreements”). You acknowledge that you have read and understood Agreements, and agree to be bound of them.

    If you do not agree with (or cannot comply with) Agreements, then you may not use the Service, but please let us know by emailing at info@http4k.org so we can try to find a solution. These Terms apply to all visitors, users and others who wish to access or use Service.

    2. Communications

    By using our Service, you agree to subscribe to newsletters, marketing or promotional materials and other information we may send. However, you may opt out of receiving any, or all, of these communications from us by following the unsubscribe link or by emailing at info@http4k.org.

    3. Purchases

    If you wish to purchase any product or service made available through Service (“Purchase”), you may be asked to supply certain information relevant to your Purchase including but not limited to, your credit or debit card number, the expiration date of your card, your billing address, and your shipping information.

    You represent and warrant that: (i) you have the legal right to use any card(s) or other payment method(s) in connection with any Purchase; and that (ii) the information you supply to us is true, correct and complete.

    We may employ the use of third party services for the purpose of facilitating payment and the completion of Purchases. By submitting your information, you grant us the right to provide the information to these third parties subject to our Privacy Policy.

    We reserve the right to refuse or cancel your order at any time for reasons including but not limited to: product or service availability, errors in the description or price of the product or service, error in your order or other reasons.

    We reserve the right to refuse or cancel your order if fraud or an unauthorized or illegal transaction is suspected.

    4. Contests, Sweepstakes and Promotions

    Any contests, sweepstakes or other promotions (collectively, “Promotions”) made available through Service may be governed by rules that are separate from these Terms of Service. If you participate in any Promotions, please review the applicable rules as well as our Privacy Policy. If the rules for a Promotion conflict with these Terms of Service, Promotion rules will apply.

    5. Subscriptions

    Some parts of Service are billed on a subscription basis (“Subscription(s)”). You will be billed in advance on a recurring and periodic basis (“Billing Cycle”). Billing cycles will be set depending on the type of subscription plan you select when purchasing a Subscription.

    At the end of each Billing Cycle, your Subscription will automatically renew under the exact same conditions unless you cancel it or http4k Ltd cancels it. You may cancel your Subscription renewal either through your online account management page or by contacting info@http4k.org customer support team.

    A valid payment method is required to process the payment for your subscription. You shall provide http4k Ltd with accurate and complete billing information that may include but not limited to full name, address, state, postal or zip code, telephone number, and a valid payment method information. By submitting such payment information, you automatically authorize http4k Ltd to charge all Subscription fees incurred through your account to any such payment instruments.

    Should automatic billing fail to occur for any reason, http4k Ltd reserves the right to terminate your access to the Service with immediate effect.

    6. Free Trial

    http4k Ltd may, at its sole discretion, offer a Subscription with a free trial for a limited period of time (“Free Trial”).

    You may be required to enter your billing information in order to sign up for Free Trial.

    If you do enter your billing information when signing up for Free Trial, you will not be charged by http4k Ltd until Free Trial has expired. On the last day of Free Trial period, unless you cancelled your Subscription, you will be automatically charged the applicable Subscription fees for the type of Subscription you have selected.

    At any time and without notice, http4k Ltd reserves the right to (i) modify Terms of Service of Free Trial offer, or (ii) cancel such Free Trial offer.

    7. Fee Changes

    http4k Ltd, in its sole discretion and at any time, may modify Subscription fees for the Subscriptions. Any Subscription fee change will become effective at the end of the then-current Billing Cycle.

    http4k Ltd will provide you with a reasonable prior notice of any change in Subscription fees to give you an opportunity to terminate your Subscription before such change becomes effective.

    Your continued use of Service after Subscription fee change comes into effect constitutes your agreement to pay the modified Subscription fee amount.

    8. Refunds

    We do not provide refunds for purchases or subscriptions you made.

    9. Content

    Content found on or through this Service are the property of http4k Ltd or used with permission. You may not distribute, modify, transmit, reuse, download, repost, copy, or use said Content, whether in whole or in part, for commercial purposes or for personal gain, without express advance written permission from us.

    10. Prohibited Uses

    You may use Service only for lawful purposes and in accordance with Terms. You agree not to use Service:

    0.1. In any way that violates any applicable national or international law or regulation.

    0.2. For the purpose of exploiting, harming, or attempting to exploit or harm minors in any way by exposing them to inappropriate content or otherwise.

    0.3. To transmit, or procure the sending of, any advertising or promotional material, including any “junk mail”, “chain letter,” “spam,” or any other similar solicitation.

    0.4. To impersonate or attempt to impersonate Company, a Company employee, another user, or any other person or entity.

    0.5. In any way that infringes upon the rights of others, or in any way is illegal, threatening, fraudulent, or harmful, or in connection with any unlawful, illegal, fraudulent, or harmful purpose or activity.

    0.6. To engage in any other conduct that restricts or inhibits anyone’s use or enjoyment of Service, or which, as determined by us, may harm or offend Company or users of Service or expose them to liability.

    Additionally, you agree not to:

    0.1. Use Service in any manner that could disable, overburden, damage, or impair Service or interfere with any other party’s use of Service, including their ability to engage in real time activities through Service.

    0.2. Use any robot, spider, or other automatic device, process, or means to access Service for any purpose, including monitoring or copying any of the material on Service.

    0.3. Use any manual process to monitor or copy any of the material on Service or for any other unauthorized purpose without our prior written consent.

    0.4. Use any device, software, or routine that interferes with the proper working of Service.

    0.5. Introduce any viruses, trojan horses, worms, logic bombs, or other material which is malicious or technologically harmful.

    0.6. Attempt to gain unauthorized access to, interfere with, damage, or disrupt any parts of Service, the server on which Service is stored, or any server, computer, or database connected to Service.

    0.7. Attack Service via a denial-of-service attack or a distributed denial-of-service attack.

    0.8. Take any action that may damage or falsify Company rating.

    0.9. Otherwise attempt to interfere with the proper working of Service.

    11. Analytics

    We may use third-party Service Providers to monitor and analyze the use of our Service.

    12. No Use By Minors

    Service is intended only for access and use by individuals at least eighteen (18) years old. By accessing or using Service, you warrant and represent that you are at least eighteen (18) years of age and with the full authority, right, and capacity to enter into this agreement and abide by all of the terms and conditions of Terms. If you are not at least eighteen (18) years old, you are prohibited from both the access and usage of Service.

    13. Accounts

    When you create an account with us, you guarantee that you are above the age of 18, and that the information you provide us is accurate, complete, and current at all times. Inaccurate, incomplete, or obsolete information may result in the immediate termination of your account on Service.

    You are responsible for maintaining the confidentiality of your account and password, including but not limited to the restriction of access to your computer and/or account. You agree to accept responsibility for any and all activities or actions that occur under your account and/or password, whether your password is with our Service or a third-party service. You must notify us immediately upon becoming aware of any breach of security or unauthorized use of your account.

    You may not use as a username the name of another person or entity or that is not lawfully available for use, a name or trademark that is subject to any rights of another person or entity other than you, without appropriate authorization. You may not use as a username any name that is offensive, vulgar or obscene.

    We reserve the right to refuse service, terminate accounts, remove or edit content, or cancel orders in our sole discretion.

    14. Intellectual Property

    Service and its original content (excluding Content provided by users), features and functionality are and will remain the exclusive property of http4k Ltd and its licensors. Service is protected by copyright, trademark, and other laws of and foreign countries. Our trademarks may not be used in connection with any product or service without the prior written consent of http4k Ltd.

    15. Copyright Policy

    We respect the intellectual property rights of others. It is our policy to respond to any claim that Content posted on Service infringes on the copyright or other intellectual property rights (“Infringement”) of any person or entity.

    If you are a copyright owner, or authorized on behalf of one, and you believe that the copyrighted work has been copied in a way that constitutes copyright infringement, please submit your claim via email to info@http4k.org, with the subject line: “Copyright Infringement” and include in your claim a detailed description of the alleged Infringement as detailed below, under “DMCA Notice and Procedure for Copyright Infringement Claims”

    You may be held accountable for damages (including costs and attorneys’ fees) for misrepresentation or bad-faith claims on the infringement of any Content found on and/or through Service on your copyright.

    16. DMCA Notice and Procedure for Copyright Infringement Claims

    You may submit a notification pursuant to the Digital Millennium Copyright Act (DMCA) by providing our Copyright Agent with the following information in writing (see 17 U.S.C 512(c)(3) for further detail):

    0.1. an electronic or physical signature of the person authorized to act on behalf of the owner of the copyright’s interest;

    0.2. a description of the copyrighted work that you claim has been infringed, including the URL (i.e., web page address) of the location where the copyrighted work exists or a copy of the copyrighted work;

    0.3. identification of the URL or other specific location on Service where the material that you claim is infringing is located;

    0.4. your address, telephone number, and email address;

    0.5. a statement by you that you have a good faith belief that the disputed use is not authorized by the copyright owner, its agent, or the law;

    0.6. a statement by you, made under penalty of perjury, that the above information in your notice is accurate and that you are the copyright owner or authorized to act on the copyright owner’s behalf.

    You can contact our Copyright Agent via email at info@http4k.org.

    17. Error Reporting and Feedback

    You may provide us either directly at info@http4k.org or via third party sites and tools with information and feedback concerning errors, suggestions for improvements, ideas, problems, complaints, and other matters related to our Service (“Feedback”). You acknowledge and agree that: (i) you shall not retain, acquire or assert any intellectual property right or other right, title or interest in or to the Feedback; (ii) Company may have development ideas similar to the Feedback; (iii) Feedback does not contain confidential information or proprietary information from you or any third party; and (iv) Company is not under any obligation of confidentiality with respect to the Feedback. In the event the transfer of the ownership to the Feedback is not possible due to applicable mandatory laws, you grant Company and its affiliates an exclusive, transferable, irrevocable, free-of-charge, sub-licensable, unlimited and perpetual right to use (including copy, modify, create derivative works, publish, distribute and commercialize) Feedback in any manner and for any purpose.

    18. Links To Other Web Sites

    Our Service may contain links to third party web sites or services that are not owned or controlled by http4k Ltd.

    http4k Ltd has no control over, and assumes no responsibility for the content, privacy policies, or practices of any third party web sites or services. We do not warrant the offerings of any of these entities/individuals or their websites.

    YOU ACKNOWLEDGE AND AGREE THAT COMPANY SHALL NOT BE RESPONSIBLE OR LIABLE, DIRECTLY OR INDIRECTLY, FOR ANY DAMAGE OR LOSS CAUSED OR ALLEGED TO BE CAUSED BY OR IN CONNECTION WITH USE OF OR RELIANCE ON ANY SUCH CONTENT, GOODS OR SERVICES AVAILABLE ON OR THROUGH ANY SUCH THIRD PARTY WEB SITES OR SERVICES.

    WE STRONGLY ADVISE YOU TO READ THE TERMS OF SERVICE AND PRIVACY POLICIES OF ANY THIRD PARTY WEB SITES OR SERVICES THAT YOU VISIT.

    19. Disclaimer Of Warranty

    THESE SERVICES ARE PROVIDED BY COMPANY ON AN “AS IS” AND “AS AVAILABLE” BASIS. COMPANY MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, AS TO THE OPERATION OF THEIR SERVICES, OR THE INFORMATION, CONTENT OR MATERIALS INCLUDED THEREIN. YOU EXPRESSLY AGREE THAT YOUR USE OF THESE SERVICES, THEIR CONTENT, AND ANY SERVICES OR ITEMS OBTAINED FROM US IS AT YOUR SOLE RISK.

    NEITHER COMPANY NOR ANY PERSON ASSOCIATED WITH COMPANY MAKES ANY WARRANTY OR REPRESENTATION WITH RESPECT TO THE COMPLETENESS, SECURITY, RELIABILITY, QUALITY, ACCURACY, OR AVAILABILITY OF THE SERVICES. WITHOUT LIMITING THE FOREGOING, NEITHER COMPANY NOR ANYONE ASSOCIATED WITH COMPANY REPRESENTS OR WARRANTS THAT THE SERVICES, THEIR CONTENT, OR ANY SERVICES OR ITEMS OBTAINED THROUGH THE SERVICES WILL BE ACCURATE, RELIABLE, ERROR-FREE, OR UNINTERRUPTED, THAT DEFECTS WILL BE CORRECTED, THAT THE SERVICES OR THE SERVER THAT MAKES IT AVAILABLE ARE FREE OF VIRUSES OR OTHER HARMFUL COMPONENTS OR THAT THE SERVICES OR ANY SERVICES OR ITEMS OBTAINED THROUGH THE SERVICES WILL OTHERWISE MEET YOUR NEEDS OR EXPECTATIONS.

    COMPANY HEREBY DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, STATUTORY, OR OTHERWISE, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, AND FITNESS FOR PARTICULAR PURPOSE.

    THE FOREGOING DOES NOT AFFECT ANY WARRANTIES WHICH CANNOT BE EXCLUDED OR LIMITED UNDER APPLICABLE LAW.

    20. Limitation Of Liability

    EXCEPT AS PROHIBITED BY LAW, YOU WILL HOLD US AND OUR OFFICERS, DIRECTORS, EMPLOYEES, AND AGENTS HARMLESS FOR ANY INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGE, HOWEVER IT ARISES (INCLUDING ATTORNEYS’ FEES AND ALL RELATED COSTS AND EXPENSES OF LITIGATION AND ARBITRATION, OR AT TRIAL OR ON APPEAL, IF ANY, WHETHER OR NOT LITIGATION OR ARBITRATION IS INSTITUTED), WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTION, OR ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, INCLUDING WITHOUT LIMITATION ANY CLAIM FOR PERSONAL INJURY OR PROPERTY DAMAGE, ARISING FROM THIS AGREEMENT AND ANY VIOLATION BY YOU OF ANY FEDERAL, STATE, OR LOCAL LAWS, STATUTES, RULES, OR REGULATIONS, EVEN IF COMPANY HAS BEEN PREVIOUSLY ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. EXCEPT AS PROHIBITED BY LAW, IF THERE IS LIABILITY FOUND ON THE PART OF COMPANY, IT WILL BE LIMITED TO THE AMOUNT PAID FOR THE PRODUCTS AND/OR SERVICES, AND UNDER NO CIRCUMSTANCES WILL THERE BE CONSEQUENTIAL OR PUNITIVE DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF PUNITIVE, INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE PRIOR LIMITATION OR EXCLUSION MAY NOT APPLY TO YOU.

    21. Termination

    We may terminate or suspend your account and bar access to Service immediately, without prior notice or liability, under our sole discretion, for any reason whatsoever and without limitation, including but not limited to a breach of Terms.

    If you wish to terminate your account, you may simply discontinue using Service.

    All provisions of Terms which by their nature should survive termination shall survive termination, including, without limitation, ownership provisions, warranty disclaimers, indemnity and limitations of liability.

    22. Governing Law

    These Terms shall be governed and construed in accordance with the laws of England, which governing law applies to agreement without regard to its conflict of law provisions.

    Our failure to enforce any right or provision of these Terms will not be considered a waiver of those rights. If any provision of these Terms is held to be invalid or unenforceable by a court, the remaining provisions of these Terms will remain in effect. These Terms constitute the entire agreement between us regarding our Service and supersede and replace any prior agreements we might have had between us regarding Service.

    23. Changes To Service

    We reserve the right to withdraw or amend our Service, and any service or material we provide via Service, in our sole discretion without notice. We will not be liable if for any reason all or any part of Service is unavailable at any time or for any period. From time to time, we may restrict access to some parts of Service, or the entire Service, to users, including registered users.

    24. Amendments To Terms

    We may amend Terms at any time by posting the amended terms on this site. It is your responsibility to review these Terms periodically.

    Your continued use of the Platform following the posting of revised Terms means that you accept and agree to the changes. You are expected to check this page frequently so you are aware of any changes, as they are binding on you.

    By continuing to access or use our Service after any revisions become effective, you agree to be bound by the revised terms. If you do not agree to the new terms, you are no longer authorized to use Service.

    25. Waiver And Severability

    No waiver by Company of any term or condition set forth in Terms shall be deemed a further or continuing waiver of such term or condition or a waiver of any other term or condition, and any failure of Company to assert a right or provision under Terms shall not constitute a waiver of such right or provision.

    If any provision of Terms is held by a court or other tribunal of competent jurisdiction to be invalid, illegal or unenforceable for any reason, such provision shall be eliminated or limited to the minimum extent such that the remaining provisions of Terms will continue in full force and effect.

    26. Acknowledgement

    BY USING SERVICE OR OTHER SERVICES PROVIDED BY US, YOU ACKNOWLEDGE THAT YOU HAVE READ THESE TERMS OF SERVICE AND AGREE TO BE BOUND BY THEM.

    27. Contact Us

    Please send your feedback, comments, requests for technical support by email: info@http4k.org.

    pumb
    \ No newline at end of file diff --git a/training/index.html b/training/index.html index ce01f8d63..bef19ada4 100644 --- a/training/index.html +++ b/training/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Developer Training

    The http4k project is a culmination of work on real-world projects in many different industries. Whilst the library is designed to be simple to learn and use, there are many advantages to learning from our mistakes when using it! To this end, the team have developed a significant amount of training materials which can be used to give teams new to http4k the best possible start, especially around the following areas:

    • Advanced testing strategies for individual and entire fleets of services.
    • Building, packaging and deploying http4k apps to on-premises and cloud-based environments.
    • Advanced CI/CD design.
    • Extending the http4k libraries.
    • Configuration of http4k apps for use in data-sensitive environments (customer PII protection etc).

    These materials can be delivered both remotely and in on-site sessions. If you are interested in taking advantage of our mistakes, please get in touch.

    Training from the experts

    No-one knows http4k better than the people who built it. Get tailored advice and support from the creators of http4k.

    Flexibility in delivery

    We can deliver training in person or remotely, depending on your needs.

    Custom courses

    Not all courses are created equal. We can tailor our training to your specific needs.

    Professional Services

    Support

    It’s important to us that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    Let's talk

    Contact us
    pumb
    \ No newline at end of file +

    Developer Training

    The http4k project is a culmination of work on real-world projects in many different industries. Whilst the library is designed to be simple to learn and use, there are many advantages to learning from our mistakes when using it! To this end, the team have developed a significant amount of training materials which can be used to give teams new to http4k the best possible start, especially around the following areas:

    • Advanced testing strategies for individual and entire fleets of services.
    • Building, packaging and deploying http4k apps to on-premises and cloud-based environments.
    • Advanced CI/CD design.
    • Extending the http4k libraries.
    • Configuration of http4k apps for use in data-sensitive environments (customer PII protection etc).

    These materials can be delivered both remotely and in on-site sessions. If you are interested in taking advantage of our mistakes, please get in touch.

    Training from the experts

    No-one knows http4k better than the people who built it. Get tailored advice and support from the creators of http4k.

    Flexibility in delivery

    We can deliver training in person or remotely, depending on your needs.

    Custom courses

    Not all courses are created equal. We can tailor our training to your specific needs.

    Professional Services

    Support

    It’s important that you can rely on your core dependencies for the long term. That’s why we offer Long Term Support packages (LTS) for http4k releases.

    Solve

    We’ve designed http4k to be simple to work with, but getting professional advice about effectively using it from specialist experts can 🚀 your projects.

    Educate

    We provide hands-on training to help you get the most out of http4k. You can get help from the creators of http4k to learn how to use it effectively.

    Let's talk

    Contact us
    pumb
    \ No newline at end of file diff --git a/tutorial/going_native_with_graal_on_aws_lambda/index.html b/tutorial/going_native_with_graal_on_aws_lambda/index.html index f51a67d89..a259db1e9 100644 --- a/tutorial/going_native_with_graal_on_aws_lambda/index.html +++ b/tutorial/going_native_with_graal_on_aws_lambda/index.html @@ -133,4 +133,7 @@ });

    Step 6

    Deploy your ZIP file to AWS with:

    pulumi up --stack dev --yes
     

    Pulumi will churn for a bit and all being well will display the URL at the end of the process.

    pulumi output

    Step 7

    You can now call your deployed lambda by visiting: https://{publishedUrl}/echo/helloHttp4k. You should see helloHttp4k in the response body. Notice that the response time is super-super quick, especially after the lambda is warm. If we invoke it from the console, you should see something similar:

    pulumi output

    Step 8

    To avoid any unwanted AWS charges, don’t forget to delete all of the resources in your stack when you’ve finished by running:

    pulumi destroy --stack dev --yes
    -

    Congratulations!

    You have successfully compiled an http4k application with GraalVM, then deployed and invoked it as a Lambda in AWS!

    \ No newline at end of file +

    Congratulations!

    You have successfully compiled an http4k application with GraalVM, then deployed and invoked it as a Lambda in AWS!

    \ No newline at end of file diff --git a/tutorial/index.html b/tutorial/index.html index c99fa7509..01aac7ff2 100644 --- a/tutorial/index.html +++ b/tutorial/index.html @@ -77,4 +77,7 @@ lightweight framework to build robust, maintainable web applications. From setting up your first project to advanced topics like serverless deployment, the tutorials are designed to suit all levels of expertise.

    These tutorials are crafted to give you practical knowledge, allowing you to see the code in action while understanding the philosophy behind http4k. Follow along, and soon you’ll be creating elegant, testable HTTP services with minimal -boilerplate. Dive in and start building your first app today!

    Your first http4k app

    A step-by-step guide creating your first running http4k app

    Serverless http4k with AWS Lambda

    A step-by-step guide to deploying an HTTP app to AWS Lambda

    Going native with Graal on AWS Lambda

    A step-by-step guide to compiling http4k apps with GraalVM for AWS Lambda

    TDDing http4k Part 1: Building a walking skeleton

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 2: Adding an endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 3: Adding another endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 4: Adding an external dependency

    A step-by-step guide to TDDing a simple http4k application

    pumb
    \ No newline at end of file +boilerplate. Dive in and start building your first app today!

    Your first http4k app

    A step-by-step guide creating your first running http4k app

    Serverless http4k with AWS Lambda

    A step-by-step guide to deploying an HTTP app to AWS Lambda

    Going native with Graal on AWS Lambda

    A step-by-step guide to compiling http4k apps with GraalVM for AWS Lambda

    TDDing http4k Part 1: Building a walking skeleton

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 2: Adding an endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 3: Adding another endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 4: Adding an external dependency

    A step-by-step guide to TDDing a simple http4k application

    pumb
    \ No newline at end of file diff --git a/tutorial/serverless_http4k_with_aws_lambda/index.html b/tutorial/serverless_http4k_with_aws_lambda/index.html index 6a2454a9e..ce27a0e18 100644 --- a/tutorial/serverless_http4k_with_aws_lambda/index.html +++ b/tutorial/serverless_http4k_with_aws_lambda/index.html @@ -179,4 +179,7 @@ export const publishedUrl = apiDefaultStage.invokeUrl;

    The most important things to note in the above file are:

    • (line 30) - the name of the input ZIP file - ensure this is correct from the last step.
    • (line 70) - the publishedUrl - this latter value in used by Pulumi to bind the URL of our Lambda to once it has been deployed and will be displayed upon deployment.

    Step 6

    Deploy your ZIP file to AWS with:

    pulumi up --stack dev --yes
     

    Pulumi will churn for a bit and all being well will display the URL at the end of the process.

    pulumi output

    Step 7

    You can now call your deployed lambda by visiting: https://{publishedUrl}/echo/helloHttp4k. You should see helloHttp4k in the response body.

    Step 8

    To avoid any unwanted AWS charges, don’t forget to delete all of the resources in your stack when you’ve finished by running:

    pulumi destroy --stack dev --yes
    -

    Congratulations!

    You have successfully deployed and invoked an http4k Lambda to AWS!

    To see a complete example of a similar setup, you can check out the complete AWS Lambda app from the http4k Examples repo

    (Ready for more? Let’s move on to deploying a native http4k GraalVM Lambda to AWS)

    \ No newline at end of file +

    Congratulations!

    You have successfully deployed and invoked an http4k Lambda to AWS!

    To see a complete example of a similar setup, you can check out the complete AWS Lambda app from the http4k Examples repo

    (Ready for more? Let’s move on to deploying a native http4k GraalVM Lambda to AWS)

    \ No newline at end of file diff --git a/tutorial/tdding_http4k/index.html b/tutorial/tdding_http4k/index.html index 7d41c926d..0d837907d 100644 --- a/tutorial/tdding_http4k/index.html +++ b/tutorial/tdding_http4k/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    TDDing http4k

    This post is a guide to how we build http4k applications test first to provide excellent test coverage driven by decoupled tests.

    Application Design

    For this example, we will use an example of a Maths app with the following requirements:

    • The app must add 2 numbers together via an HTTP call
    • The app must multiply 2 numbers together via an HTTP call
    • Answers generated by the service will be logged (via HTTP POST) to another server - the Recorder.

    Apps can generally be split into 3 tiers:

    1. Endpoint: HttpHandlers are constructed individually, by providing a builder function which takes the business-level dependencies.
    2. Application: Builder function which takes the transport-level dependencies, and converts them into business-level dependencies. All routes are constructed and collected in this tier.
    3. Server: Builder function which takes the configuration for environmental concerns such as ports and downstream urls.

    The tutorial is split into 4 sections:

    Your first http4k app

    A step-by-step guide creating your first running http4k app

    Serverless http4k with AWS Lambda

    A step-by-step guide to deploying an HTTP app to AWS Lambda

    Going native with Graal on AWS Lambda

    A step-by-step guide to compiling http4k apps with GraalVM for AWS Lambda

    TDDing http4k Part 1: Building a walking skeleton

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 2: Adding an endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 3: Adding another endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 4: Adding an external dependency

    A step-by-step guide to TDDing a simple http4k application

    pumb
    \ No newline at end of file +

    TDDing http4k

    This post is a guide to how we build http4k applications test first to provide excellent test coverage driven by decoupled tests.

    Application Design

    For this example, we will use an example of a Maths app with the following requirements:

    • The app must add 2 numbers together via an HTTP call
    • The app must multiply 2 numbers together via an HTTP call
    • Answers generated by the service will be logged (via HTTP POST) to another server - the Recorder.

    Apps can generally be split into 3 tiers:

    1. Endpoint: HttpHandlers are constructed individually, by providing a builder function which takes the business-level dependencies.
    2. Application: Builder function which takes the transport-level dependencies, and converts them into business-level dependencies. All routes are constructed and collected in this tier.
    3. Server: Builder function which takes the configuration for environmental concerns such as ports and downstream urls.

    The tutorial is split into 4 sections:

    Your first http4k app

    A step-by-step guide creating your first running http4k app

    Serverless http4k with AWS Lambda

    A step-by-step guide to deploying an HTTP app to AWS Lambda

    Going native with Graal on AWS Lambda

    A step-by-step guide to compiling http4k apps with GraalVM for AWS Lambda

    TDDing http4k Part 1: Building a walking skeleton

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 2: Adding an endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 3: Adding another endpoint

    A step-by-step guide to TDDing a simple http4k application

    TDDing http4k Part 4: Adding an external dependency

    A step-by-step guide to TDDing a simple http4k application

    pumb
    \ No newline at end of file diff --git a/tutorial/tdding_http4k/part1/index.html b/tutorial/tdding_http4k/part1/index.html index 5d3af9ad9..87d9200e9 100644 --- a/tutorial/tdding_http4k/part1/index.html +++ b/tutorial/tdding_http4k/part1/index.html @@ -120,4 +120,7 @@ fun MyMathServer(port: Int): Http4kServer = { _: Request -> Response(OK) }.asServer(Jetty(port)) - \ No newline at end of file + \ No newline at end of file diff --git a/tutorial/tdding_http4k/part2/index.html b/tutorial/tdding_http4k/part2/index.html index 5b7da083c..76156460d 100644 --- a/tutorial/tdding_http4k/part2/index.html +++ b/tutorial/tdding_http4k/part2/index.html @@ -175,4 +175,7 @@ } ) ) - \ No newline at end of file + \ No newline at end of file diff --git a/tutorial/tdding_http4k/part3/index.html b/tutorial/tdding_http4k/part3/index.html index 827616ba0..509d353af 100644 --- a/tutorial/tdding_http4k/part3/index.html +++ b/tutorial/tdding_http4k/part3/index.html @@ -209,4 +209,7 @@ Response(OK).body(answer.toString()) } } - \ No newline at end of file + \ No newline at end of file diff --git a/tutorial/tdding_http4k/part4/index.html b/tutorial/tdding_http4k/part4/index.html index 27723bfe3..cc9edc44a 100644 --- a/tutorial/tdding_http4k/part4/index.html +++ b/tutorial/tdding_http4k/part4/index.html @@ -301,4 +301,7 @@ fun MyMathServer(port: Int, recorderBaseUri: Uri): Http4kServer = MyMathsApp(SetHostFrom(recorderBaseUri).then(OkHttp())).asServer(Jetty(port)) - \ No newline at end of file + \ No newline at end of file diff --git a/tutorial/your_first_http4k_app/index.html b/tutorial/your_first_http4k_app/index.html index b6eea8bdc..039907c0a 100644 --- a/tutorial/your_first_http4k_app/index.html +++ b/tutorial/your_first_http4k_app/index.html @@ -72,4 +72,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */(()=>{var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,tn=Object.create,he=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Cn=Object.getOwnPropertyNames,wn=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty,e=(e,t)=>()=>(e&&(t=e(e=0)),t),t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xn=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},Tt=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cn(t))!Xt.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(s=zn(t,o))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?tn(wn(e)):{},Tt(t||!e||!e.__esModule?he(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>Tt(he({},"__esModule",{value:!0}),e),u=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.EventHandler=s())})(e,function(){"use strict";let f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},j=/[^.]*(?=\..*)\.|.*/,g=/\..*/,h=/::\d+$/,e={},i=1,b={mouseenter:"mouseover",mouseleave:"mouseout"},p=/^(mouseenter|mouseleave)/i,c=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 l(e,t){return t&&`${t}::${i++}`||e.uidEvent||i++}function s(t){let n=l(t);return t.uidEvent=n,e[n]=e[n]||{},e[n]}function m(e,n){return function s(o){return o.delegateTarget=e,s.oneOff&&t.off(e,o.type,n),n.apply(e,[o])}}function u(e,n,s){return function o(i){let a=e.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(let c=a.length;c--;)if(a[c]===r)return i.delegateTarget=r,o.oneOff&&t.off(e,i.type,n,s),s.apply(r,[i]);return null}}function o(e,t,n=null){let s=Object.keys(e);for(let o=0,a=s.length;ofunction(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};i?i=e(i):n=e(n)}let[c,h,f]=d(t,n,i),v=s(e),b=v[f]||(v[f]={}),g=o(b,h,c?n:null);if(g){g.oneOff=g.oneOff&&a;return}let y=l(h,t.replace(j,"")),r=c?u(e,n,i):m(e,n);r.delegationSelector=c?n:null,r.originalHandler=h,r.oneOff=a,r.uidEvent=y,b[y]=r,e.addEventListener(f,r,c)}function n(e,t,n,s,i){let a=o(t[n],s,i);a&&(e.removeEventListener(n,a,!!i),delete t[n][a.uidEvent])}function v(e,t,s,o){let i=t[s]||{};Object.keys(i).forEach(a=>{if(a.includes(o)){let o=i[a];n(e,t,s,o.originalHandler,o.delegationSelector)}})}function a(e){return e=e.replace(g,""),b[e]||e}let t={on(e,t,n,s){r(e,t,n,s,!1)},one(e,t,n,s){r(e,t,n,s,!0)},off(e,t,o,i){if(typeof t!="string"||!e)return;let[u,c,r]=d(t,o,i),m=r!==t,a=s(e),f=t.startsWith(".");if(typeof c<"u"){if(!a||!a[r])return;n(e,a,r,c,u?o:null);return}f&&Object.keys(a).forEach(n=>{v(e,a,n,t.slice(1))});let l=a[r]||{};Object.keys(l).forEach(s=>{let o=s.replace(h,"");if(!m||t.includes(o)){let t=l[s];n(e,a,r,t.originalHandler,t.delegationSelector)}})},trigger(e,t,n){if(typeof t!="string"||!e)return null;let i=f(),r=a(t),h=t!==r,m=c.has(r),o,l=!0,d=!0,u=!1,s=null;return h&&i&&(o=i.Event(t,n),i(e).trigger(o),l=!o.isPropagationStopped(),d=!o.isImmediatePropagationStopped(),u=o.isDefaultPrevented()),m?(s=document.createEvent("HTMLEvents"),s.initEvent(r,l,!0)):s=new CustomEvent(t,{bubbles:l,cancelable:!0}),typeof n<"u"&&Object.keys(n).forEach(e=>{Object.defineProperty(s,e,{get(){return n[e]}})}),u&&s.preventDefault(),d&&e.dispatchEvent(s),s.defaultPrevented&&typeof o<"u"&&o.preventDefault(),s}};return t})}),Ke=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Data=s())})(e,function(){"use strict";let e=new Map;return{set(t,n,s){e.has(t)||e.set(t,new Map);let o=e.get(t);if(!o.has(n)&&o.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(o.keys())[0]}.`);return}o.set(n,s)},get(t,n){return e.has(t)&&e.get(t).get(n)||null},remove(t,n){if(!e.has(t))return;let s=e.get(t);s.delete(n),s.size===0&&e.delete(t)}}})}),l=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Base=s(n.Data,n.EventHandler))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=a(e),u=a(t),r=1e3,s="transitionend",d=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*r)},c=e=>{e.dispatchEvent(new Event(s))},l=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),o=e=>l(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,i=e=>{typeof e=="function"&&e()},h=(e,t,n=!0)=>{if(!n){i(e);return}let r=d(t)+5,o=!1,a=({target:n})=>{n===t&&(o=!0,t.removeEventListener(s,a),i(e))};t.addEventListener(s,a),setTimeout(()=>{o||c(t)},r)},m="5.1.3";class f{constructor(e){e=o(e),e&&(this._element=e,n.default.set(this._element,this.constructor.DATA_KEY,this))}dispose(){n.default.remove(this._element,this.constructor.DATA_KEY),u.default.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,t,n=!0){h(e,t,n)}static getInstance(e){return n.default.get(o(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,typeof t=="object"?t:null)}static get VERSION(){return m}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}`}}return f})}),kn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Alert=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=a(e),j=a(t),f=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},r=e=>{let t=f(e);return t?document.querySelector(t):null},l=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],d=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},u=e=>{d(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},h=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),l(this))return;let o=r(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},m="alert",i=".bs.alert",p=`close${i}`,g=`closed${i}`,v="fade",b="show";class n extends j.default{static get NAME(){return m}close(){if(o.default.trigger(this._element,p).defaultPrevented)return;this._element.classList.remove(b);let e=this._element.classList.contains(v);this._queueCallback(()=>this._destroyElement(),this._element,e)}_destroyElement(){this._element.remove(),o.default.trigger(this._element,g),this.dispose()}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return h(n,"close"),u(n),n})}),Fn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Button=s(n.EventHandler,n.Base))})(e,function(e,t){"use strict";let i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=i(e),m=i(t),c=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],r=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},a=e=>{r(()=>{let t=c();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},l="button",d=".bs.button",u=".data-api",h="active",o='[data-bs-toggle="button"]',f=`click${d}${u}`;class n extends m.default{static get NAME(){return l}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(h))}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this);e==="toggle"&&t[e]()})}}return p.default.on(document,f,o,e=>{e.preventDefault();let t=e.target.closest(o);n.getOrCreateInstance(t).toggle()}),a(n),n})}),x=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.Manipulator=s())})(e,function(){"use strict";function t(e){return e==="true"||e!=="false"&&(e===Number(e).toString()?Number(e):e===""||e==="null"?null:e)}function e(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}return{setDataAttribute(t,n,s){t.setAttribute(`data-bs-${e(n)}`,s)},removeDataAttribute(t,n){t.removeAttribute(`data-bs-${e(n)}`)},getDataAttributes(e){if(!e)return{};let n={};return Object.keys(e.dataset).filter(e=>e.startsWith("bs")).forEach(s=>{let o=s.replace(/^bs/,"");o=o.charAt(0).toLowerCase()+o.slice(1,o.length),n[o]=t(e.dataset[s])}),n},getDataAttribute(n,s){return t(n.getAttribute(`data-bs-${e(s)}`))},offset(e){let t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}},position(e){return{top:e.offsetTop,left:e.offsetLeft}}}})}),O=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s():typeof define=="function"&&define.amd?define(s):(n=typeof globalThis<"u"?globalThis:n||self,n.SelectorEngine=s())})(e,function(){"use strict";let e=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),t=t=>!!e(t)&&t.getClientRects().length!==0&&getComputedStyle(t).getPropertyValue("visibility")==="visible",n=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false");return{find(e,t=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(t,e))},findOne(e,t=document.documentElement){return Element.prototype.querySelector.call(t,e)},children(e,t){return[].concat(...e.children).filter(e=>e.matches(t))},parents(e,t){let s=[],n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&n.nodeType!==3;)n.matches(t)&&s.push(n),n=n.parentNode;return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){let s=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(", ");return this.find(s,e).filter(e=>!n(e)&&t(e))}}})}),Dn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Carousel=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=f(e),g=f(t),a=f(n),ge=f(s),ae="transitionend",Z=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),L=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=L(e);return t?document.querySelector(t):null},D=e=>{e.dispatchEvent(new Event(ae))},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),C=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":Z(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},F=e=>!!y(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",H=e=>{e.offsetHeight},W=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},p=[],z=e=>{document.readyState==="loading"?(p.length||document.addEventListener("DOMContentLoaded",()=>{p.forEach(e=>e())}),p.push(e)):e()},v=()=>document.documentElement.dir==="rtl",E=e=>{z(()=>{let t=W();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},K=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},b="carousel",i=".bs.carousel",w=".data-api",k="ArrowLeft",A="ArrowRight",S=500,M=40,_={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},T={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},u="next",d="prev",l="left",h="right",U={[k]:h,[A]:l},P=`slide${i}`,j=`slid${i}`,I=`keydown${i}`,B=`mouseenter${i}`,V=`mouseleave${i}`,$=`touchstart${i}`,O=`touchmove${i}`,R=`touchend${i}`,ue=`pointerdown${i}`,te=`pointerup${i}`,Y=`dragstart${i}`,G=`load${i}${w}`,X=`click${i}${w}`,Q="carousel",c="active",J="slide",ee="carousel-item-end",q="carousel-item-start",ne="carousel-item-next",se="carousel-item-prev",oe="pointer-event",ie=".active",m=".active.carousel-item",re=".carousel-item",ce=".carousel-item img",le=".carousel-item-next, .carousel-item-prev",de=".carousel-indicators",x="[data-bs-target]",he="[data-bs-slide], [data-bs-slide-to]",me='[data-bs-ride="carousel"]',fe="touch",pe="pen";class r extends ge.default{constructor(e,t){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(t),this._indicatorsElement=a.default.findOne(de,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=!!window.PointerEvent,this._addEventListeners()}static get Default(){return _}static get NAME(){return b}next(){this._slide(u)}nextWhenVisible(){!document.hidden&&F(this._element)&&this.next()}prev(){this._slide(d)}pause(e){e||(this._isPaused=!0),a.default.findOne(le,this._element)&&(D(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=a.default.findOne(m,this._element);let t=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){o.default.one(this._element,j,()=>this.to(e));return}if(t===e){this.pause(),this.cycle();return}let n=e>t?u:d;this._slide(n,this._items[e])}_getConfig(e){return e={..._,...g.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},C(b,e,T),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=M)return;let t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?h:l)}_addEventListeners(){this._config.keyboard&&o.default.on(this._element,I,e=>this._keydown(e)),this._config.pause==="hover"&&(o.default.on(this._element,B,e=>this.pause(e)),o.default.on(this._element,V,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=e=>this._pointerEvent&&(e.pointerType===pe||e.pointerType===fe),t=t=>{e(t)?this.touchStartX=t.clientX:this._pointerEvent||(this.touchStartX=t.touches[0].clientX)},s=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=t=>{e(t)&&(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(e=>this.cycle(e),S+this._config.interval))};a.default.find(ce,this._element).forEach(e=>{o.default.on(e,Y,e=>e.preventDefault())}),this._pointerEvent?(o.default.on(this._element,ue,e=>t(e)),o.default.on(this._element,te,e=>n(e)),this._element.classList.add(oe)):(o.default.on(this._element,$,e=>t(e)),o.default.on(this._element,O,e=>s(e)),o.default.on(this._element,R,e=>n(e)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let t=U[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(e){return this._items=e&&e.parentNode?a.default.find(re,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,t){let n=e===u;return K(this._items,t,n,this._config.wrap)}_triggerSlideEvent(e,t){let n=this._getItemIndex(e),s=this._getItemIndex(a.default.findOne(m,this._element));return o.default.trigger(this._element,P,{relatedTarget:e,direction:t,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let n=a.default.findOne(ie,this._indicatorsElement);n.classList.remove(c),n.removeAttribute("aria-current");let t=a.default.find(x,this._indicatorsElement);for(let n=0;n{o.default.trigger(this._element,j,{relatedTarget:n,direction:f,from:g,to:v})};if(this._element.classList.contains(J)){n.classList.add(l),H(n),s.classList.add(i),n.classList.add(i);let e=()=>{n.classList.remove(i,l),n.classList.add(c),s.classList.remove(c,l,i),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(e,s,!0)}else s.classList.remove(c),n.classList.add(c),this._isSliding=!1,p();d&&this.cycle()}_directionToOrder(e){return[h,l].includes(e)?v()?e===l?d:u:e===l?u:d:e}_orderToDirection(e){return[u,d].includes(e)?v()?e===d?l:h:e===d?h:l:e}static carouselInterface(e,t){let n=r.getOrCreateInstance(e,t),{_config:s}=n;typeof t=="object"&&(s={...s,...t});let o=typeof t=="string"?t:s.slide;if(typeof t=="number")n.to(t);else if(typeof o=="string"){if(typeof n[o]>"u")throw new TypeError(`No method named "${o}"`);n[o]()}else s.interval&&s.ride&&(n.pause(),n.cycle())}static jQueryInterface(e){return this.each(function(){r.carouselInterface(this,e)})}static dataApiClickHandler(e){let t=N(this);if(!t||!t.classList.contains(Q))return;let s={...g.default.getDataAttributes(t),...g.default.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(s.interval=!1),r.carouselInterface(t,s),n&&r.getInstance(t).to(n),e.preventDefault()}}return o.default.on(document,X,he,r.dataApiClickHandler),o.default.on(window,G,()=>{let e=a.default.find(me);for(let t=0,n=e.length;t{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Collapse=s(n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},W=l(e),d=l(t),k=l(n),i=l(s),L=l(o),E=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),y=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},_=e=>{let t=y(e);return t&&document.querySelector(t)?t:null},g=e=>{let t=y(e);return t?document.querySelector(t):null},w=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>w(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&w(o)?"element":E(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},D=e=>{e.offsetHeight},S=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],x=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},A=e=>{x(()=>{let t=S();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},O="collapse",p="bs.collapse",c=`.${p}`,C=".data-api",v={toggle:!0,parent:null},M={toggle:"boolean",parent:"(null|element)"},$=`show${c}`,N=`shown${c}`,F=`hide${c}`,T=`hidden${c}`,z=`click${c}${C}`,m="show",r="collapse",u="collapsing",j="collapsed",b=`:scope .${r} .${r}`,H="collapse-horizontal",I="width",B="height",V=".collapse.show, .collapse.collapsing",h='[data-bs-toggle="collapse"]';class a extends L.default{constructor(e,t){super(e),this._isTransitioning=!1,this._config=this._getConfig(t),this._triggerArray=[];let n=i.default.find(h);for(let e=0,o=n.length;ee===this._element);t!==null&&a.length&&(this._selector=t,this._triggerArray.push(s))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return v}static get NAME(){return O}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[],n;if(this._config.parent){let e=i.default.find(b,this._config.parent);t=i.default.find(V,this._config.parent).filter(t=>!e.includes(t))}let s=i.default.findOne(this._selector);if(t.length){let e=t.find(e=>s!==e);if(n=e?a.getInstance(e):null,n&&n._isTransitioning)return}if(d.default.trigger(this._element,$).defaultPrevented)return;t.forEach(e=>{s!==e&&a.getOrCreateInstance(e,{toggle:!1}).hide(),n||W.default.set(e,p,null)});let e=this._getDimension();this._element.classList.remove(r),this._element.classList.add(u),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let o=()=>{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r,m),this._element.style[e]="",d.default.trigger(this._element,N)},c=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback(o,this._element,!0),this._element.style[e]=`${this._element[c]}px`}hide(){if(this._isTransitioning||!this._isShown()||d.default.trigger(this._element,F).defaultPrevented)return;let e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,D(this._element),this._element.classList.add(u),this._element.classList.remove(r,m);let t=this._triggerArray.length;for(let e=0;e{this._isTransitioning=!1,this._element.classList.remove(u),this._element.classList.add(r),d.default.trigger(this._element,T)};this._element.style[e]="",this._queueCallback(n,this._element,!0)}_isShown(e=this._element){return e.classList.contains(m)}_getConfig(e){return e={...v,...k.default.getDataAttributes(this._element),...e},e.toggle=!!e.toggle,e.parent=P(e.parent),R(O,e,M),e}_getDimension(){return this._element.classList.contains(H)?I:B}_initializeChildren(){if(!this._config.parent)return;let e=i.default.find(b,this._config.parent);i.default.find(h,this._config.parent).filter(t=>!e.includes(t)).forEach(e=>{let t=g(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))})}_addAriaAndCollapsedClass(e,t){e.length&&e.forEach(e=>{t?e.classList.remove(j):e.classList.add(j),e.setAttribute("aria-expanded",t)})}static jQueryInterface(e){return this.each(function(){let t={};typeof e=="string"&&/show|hide/.test(e)&&(t.toggle=!1);let n=a.getOrCreateInstance(this,t);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e]()}})}}return d.default.on(document,z,h,function(e){(e.target.tagName==="A"||e.delegateTarget&&e.delegateTarget.tagName==="A")&&e.preventDefault();let t=_(this);i.default.find(t).forEach(e=>{a.getOrCreateInstance(e,{toggle:!1}).toggle()})}),A(a),a})}),o=e(()=>{n="top",r="bottom",a="right",s="left",B="auto",k=[n,r,a,s],j="start",A="end",Ze="clippingParents",J="viewport",S="popper",pe="reference",ue=k.reduce(function(e,t){return e.concat([t+"-"+j,t+"-"+A])},[]),de=[].concat(k,[B]).reduce(function(e,t){return e.concat([t,t+"-"+j,t+"-"+A])},[]),Je="beforeRead",Qe="read",Xe="afterRead",Ue="beforeMain",We="main",Me="afterMain",Se="beforeWrite",ke="write",Ee="afterWrite",Oe=[Je,Qe,Xe,Ue,We,Me,Se,ke,Ee]});function p(e){return e?(e.nodeName||"").toLowerCase():null}C=e(()=>{});function h(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}m=e(()=>{});function F(e){var t=h(e).Element;return e instanceof t||e instanceof Element}function d(e){var t=h(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ut(e){if(typeof ShadowRoot>"u")return!1;var t=h(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}i=e(()=>{m()});function en(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];!d(n)||!p(n)||(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];t===!1?n.removeAttribute(e):n.setAttribute(e,t===!0?"":t)}))})}function nn(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=i.reduce(function(e,t){return e[t]="",e},{});!d(s)||!p(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}}q=e(()=>{C(),i(),ne={name:"applyStyles",enabled:!0,phase:"write",fn:en,effect:nn,requires:["computeStyles"]}});function f(e){return e.split("-")[0]}b=e(()=>{o()}),_=e(()=>{y=Math.max,H=Math.min,M=Math.round});function D(e,t){t===void 0&&(t=!1);var i,a,n=e.getBoundingClientRect(),s=1,o=1;return d(e)&&t&&(i=e.offsetHeight,a=e.offsetWidth,a>0&&(s=M(n.width)/a||1),i>0&&(o=M(n.height)/i||1)),{width:n.width/s,height:n.height/o,top:n.top/o,right:n.right/s,bottom:n.bottom/o,left:n.left/s,x:n.left/s,y:n.top/o}}z=e(()=>{i(),_()});function ve(e){var t=D(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}me=e(()=>{z()});function ft(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ut(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}je=e(()=>{i()});function v(e){return h(e).getComputedStyle(e)}E=e(()=>{m()});function On(e){return["table","td","th"].indexOf(p(e))>=0}xt=e(()=>{C()});function w(e){return((F(e)?e.ownerDocument:e.document)||window.document).documentElement}g=e(()=>{i()});function Z(e){return p(e)==="html"?e:e.assignedSlot||e.parentNode||(Ut(e)?e.host:null)||w(e)}W=e(()=>{C(),g(),i()});function Kt(e){return!d(e)||v(e).position==="fixed"?null:e.offsetParent}function on(e){var t,n,o,s=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&d(e)&&(o=v(e),o.position==="fixed"))return null;for(n=Z(e);d(n)&&["html","body"].indexOf(p(n))<0;){if(t=v(n),t.transform!=="none"||t.perspective!=="none"||t.contain==="paint"||["transform","perspective"].indexOf(t.willChange)!==-1||s&&t.willChange==="filter"||s&&t.filter&&t.filter!=="none")return n;n=n.parentNode}return null}function $(e){for(var n=h(e),t=Kt(e);t&&On(t)&&v(t).position==="static";)t=Kt(t);return t&&(p(t)==="html"||p(t)==="body"&&v(t).position==="static")?n:t||on(e)||n}N=e(()=>{m(),C(),E(),i(),xt(),W()});function Ae(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}ee=e(()=>{});function I(e,t,n){return y(e,H(t,n))}function rn(e,t,n){var s=I(e,t,n);return s>n?n:s}Te=e(()=>{_()});function Pt(){return{top:0,right:0,bottom:0,left:0}}De=e(()=>{});function Rt(e){return Object.assign({},Pt(),e)}Le=e(()=>{De()});function Mt(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}Pe=e(()=>{});function _n(e){var i,t=e.state,A=e.name,k=e.options,d=t.elements.arrow,u=t.modifiersData.popperOffsets,p=f(t.placement),o=Ae(p),O=[s,a].indexOf(p)>=0,c=O?"height":"width";if(!!d&&!!u){var g=_t(k.padding,t),v=ve(d),j=o==="y"?n:s,w=o==="y"?r:a,y=t.rects.reference[c]+t.rects.reference[o]-u[o]-t.rects.popper[c],_=u[o]-t.rects.reference[o],l=$(d),m=l?o==="y"?l.clientHeight||0:l.clientWidth||0:0,x=y/2-_/2,C=g[j],E=m-v[c]-g[w],h=m/2-v[c]/2+x,b=I(C,h,E),S=o;t.modifiersData[A]=(i={},i[S]=b,i.centerOffset=b-h,i)}}function qt(e){var n=e.state,o=e.options,s=o.element,t=s===void 0?"[data-popper-arrow]":s;t!=null&&(typeof t=="string"&&(t=n.elements.popper.querySelector(t),!t)||ft(n.elements.popper,t)&&(n.elements.arrow=t))}$e=e(()=>{b(),me(),je(),N(),ee(),Te(),Le(),Pe(),o(),i(),_t=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,Rt(typeof e!="number"?e:Mt(e,k))},Ve={name:"arrow",enabled:!0,phase:"main",fn:_n,effect:qt,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function L(e){return e.split("-")[1]}P=e(()=>{});function Qt(e){var n=e.x,s=e.y,o=window,t=o.devicePixelRatio||1;return{x:M(n*t)/t||0,y:M(s*t)/t||0}}function gt(e){var l,d,f,g,z,D,j=e.popper,S=e.popperRect,c=e.placement,C=e.variation,m=e.offsets,F=e.position,p=e.gpuAcceleration,O=e.adaptive,b=e.roundOffsets,M=e.isFixed,E=m.x,t=E===void 0?0:E,k=m.y,o=k===void 0?0:k,R=typeof b=="function"?b({x:t,y:o}):{x:t,y:o},t=R.x,o=R.y,T=m.hasOwnProperty("x"),N=m.hasOwnProperty("y"),y=s,_=n,u=window;if(O){var i=$(j),x="clientHeight",L="clientWidth";(i===h(j)&&(i=w(j),v(i).position!=="static"&&F==="absolute"&&(x="scrollHeight",L="scrollWidth")),i=i,c===n||(c===s||c===a)&&C===A)&&(_=r,z=M&&u.visualViewport?u.visualViewport.height:i[x],o-=z-S.height,o*=p?1:-1),(c===s||(c===n||c===r)&&C===A)&&(y=a,D=M&&u.visualViewport?u.visualViewport.width:i[L],t-=D-S.width,t*=p?1:-1)}return g=Object.assign({position:F},O&&ct),f=b===!0?Qt({x:t,y:o}):{x:t,y:o},t=f.x,o=f.y,p?Object.assign({},g,(d={},d[_]=N?"0":"",d[y]=T?"0":"",d.transform=(u.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",d)):Object.assign({},g,(l={},l[_]=N?o+"px":"",l[y]=T?t+"px":"",l.transform="",l))}function Tn(e){var d,t=e.state,n=e.options,s=n.gpuAcceleration,c=s===void 0||s,o=n.adaptive,l=o===void 0||o,i=n.roundOffsets,a=i===void 0||i,r={placement:f(t.placement),variation:L(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,gt(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,gt(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}re=e(()=>{o(),N(),m(),g(),E(),b(),P(),_(),ct={top:"auto",right:"auto",bottom:"auto",left:"auto"},te={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Tn,data:{}}});function Sn(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=o===void 0||o,a=s.resize,r=a===void 0||a,c=h(n.elements.popper),l=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&l.forEach(function(e){e.addEventListener("scroll",t.update,V)}),r&&c.addEventListener("resize",t.update,V),function(){i&&l.forEach(function(e){e.removeEventListener("scroll",t.update,V)}),r&&c.removeEventListener("resize",t.update,V)}}se=e(()=>{m(),V={passive:!0},X={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Sn,data:{}}});function Y(e){return e.replace(/left|right|bottom|top/g,function(e){return st[e]})}ot=e(()=>{st={left:"right",right:"left",bottom:"top",top:"bottom"}});function it(e){return e.replace(/start|end/g,function(e){return at[e]})}rt=e(()=>{at={start:"end",end:"start"}});function Ge(e){var t=h(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}G=e(()=>{m()});function Ye(e){return D(w(e)).left+Ge(e).scrollLeft}K=e(()=>{z(),g(),G()});function Mn(e){var r=h(e),n=w(e),t=r.visualViewport,s=n.clientWidth,o=n.clientHeight,i=0,a=0;return t&&(s=t.width,o=t.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=t.offsetLeft,a=t.offsetTop)),{width:s,height:o,x:i+Ye(e),y:a}}mt=e(()=>{m(),g(),K()});function An(e){var s,n=w(e),o=Ge(e),t=(s=e.ownerDocument)==null?void 0:s.body,i=y(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=y(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ye(e),c=-o.scrollTop;return v(t||n).direction==="rtl"&&(a+=y(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}pt=e(()=>{g(),E(),K(),G(),_()});function qe(e){var t=v(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}Q=e(()=>{E()});function bt(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:d(e)&&qe(e)?e:bt(Z(e))}jt=e(()=>{W(),Q(),C(),i()});function U(e,t){t===void 0&&(t=[]);var s,n=bt(e),o=n===((s=e.ownerDocument)==null?void 0:s.body),i=h(n),a=o?[i].concat(i.visualViewport||[],qe(n)?n:[]):n,r=t.concat(a);return o?r:r.concat(U(Z(a)))}Be=e(()=>{jt(),W(),m(),Q()});function Ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}He=e(()=>{});function yn(e){var t=D(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ct(e,t){return t===J?Ie(Mn(e)):F(t)?yn(t):Ie(An(w(e)))}function bn(e){var n=U(Z(e)),s=["absolute","fixed"].indexOf(v(e).position)>=0,t=s&&d(e)?$(e):e;return F(t)?n.filter(function(e){return F(e)&&ft(e,t)&&p(e)!=="body"}):[]}function vn(e,t,n){var i=t==="clippingParents"?bn(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(t,n){var s=Ct(e,n);return t.top=y(s.top,t.top),t.right=H(s.right,t.right),t.bottom=H(s.bottom,t.bottom),t.left=y(s.left,t.left),t},Ct(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}At=e(()=>{o(),mt(),pt(),Be(),N(),g(),E(),i(),z(),W(),je(),C(),He(),_()});function St(e){var o,i,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?L(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case n:o={x:h,y:t.y-c.height};break;case r:o={x:h,y:t.y+t.height};break;case a:o={x:t.x+t.width,y:m};break;case s:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(i=u?Ae(u):null,i!=null)switch(l=i==="y"?"height":"width",p){case j:o[i]=o[i]-(t[l]/2-c[l]/2);break;case A:o[i]=o[i]+(t[l]/2-c[l]/2);break;default:}return o}Re=e(()=>{b(),P(),ee(),o()});function T(e,t){t===void 0&&(t={});var p,s=t,O=s.placement,f=O===void 0?e.placement:O,x=s.boundary,M=x===void 0?Ze:x,_=s.rootBoundary,C=_===void 0?J:_,v=s.elementContext,o=v===void 0?S:v,b=s.altBoundary,z=b!==void 0&&b,g=s.padding,h=g===void 0?0:g,l=Rt(typeof h!="number"?h:Mt(h,k)),T=o===S?pe:S,y=e.rects.popper,u=e.elements[z?T:o],c=vn(F(u)?u:u.contextElement||w(e.elements.popper),M,C),m=D(e.elements.reference),A=St({reference:m,element:y,strategy:"absolute",placement:f}),E=Ie(Object.assign({},y,A)),i=o===S?E:m,d={top:c.top-i.top+l.top,bottom:i.bottom-c.bottom+l.bottom,left:c.left-i.left+l.left,right:i.right-c.right+l.right},j=e.modifiersData.offset;return o===S&&j&&(p=j[f],Object.keys(d).forEach(function(e){var t=[a,r].indexOf(e)>=0?1:-1,s=[n,r].indexOf(e)>=0?"y":"x";d[e]+=p[s]*t})),d}R=e(()=>{At(),g(),z(),Re(),He(),o(),i(),Le(),Pe()});function gn(e,t){t===void 0&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=i===void 0?de:i,a=L(c),r=a?h?ue:ue.filter(function(e){return L(e)===a}):k,o=r.filter(function(e){return m.indexOf(e)>=0});return o.length===0&&(o=r),s=o.reduce(function(t,n){return t[n]=T(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}Dt=e(()=>{P(),o(),R(),b()});function pn(e){if(f(e)===B)return[];var t=Y(e);return[it(e),t,it(t)]}function mn(e){var t=e.state,o=e.options,w=e.name;if(!t.modifiersData[w]._skip){for(var i,_,x,O=o.mainAxis,V=O===void 0||O,C=o.altAxis,N=C===void 0||C,R=o.fallbackPlacements,y=o.padding,F=o.boundary,E=o.rootBoundary,q=o.altBoundary,z=o.flipVariations,m=z===void 0||z,G=o.allowedAutoPlacements,l=t.options.placement,W=f(l),$=W===l,I=R||($||!m?[Y(l)]:pn(l)),h=[l].concat(I).reduce(function(e,n){return e.concat(f(n)===B?gn(t,{placement:n,boundary:F,rootBoundary:E,padding:y,flipVariations:m,allowedAutoPlacements:G}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,u=h[0],v=0;v=0,k=A?"width":"height",g=T(t,{placement:c,boundary:F,rootBoundary:E,altBoundary:q,padding:y}),d=A?D?a:s:D?r:n;if(H[k]>P[k]&&(d=Y(d)),x=Y(d),i=[],V&&i.push(g[b]<=0),N&&i.push(g[d]<=0,g[x]<=0),i.every(function(e){return e})){u=c,M=!1;break}S.set(c,i)}if(M)for(var U=m?3:1,K=function(e){var t=h.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return u=t,"break"},p=U;p>0;p--)if(_=K(p),_==="break")break;t.placement!==u&&(t.modifiersData[w]._skip=!0,t.placement=u,t.reset=!0)}}ze=e(()=>{ot(),b(),rt(),R(),Dt(),o(),P(),Ne={name:"flip",enabled:!0,phase:"main",fn:mn,requiresIfExists:["offset"],data:{_skip:!1}}});function Ht(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function It(e){return[n,a,r,s].some(function(t){return e[t]>=0})}function dn(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=T(t,{elementContext:"reference"}),u=T(t,{altBoundary:!0}),n=Ht(d,r),s=Ht(u,c,l),o=It(n),i=It(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}Ce=e(()=>{o(),R(),Fe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:dn}});function Zt(e,t,o){var c=f(e),d=[s,n].indexOf(c)>=0?-1:1,l=typeof o=="function"?o(Object.assign({},t,{placement:e})):o,i=l[0],r=l[1];return i=i||0,r=(r||0)*d,[s,a].indexOf(c)>=0?{x:r,y:i}:{x:i,y:r}}function Gt(e){var t=e.state,i=e.options,a=e.name,n=i.offset,r=n===void 0?[0,0]:n,s=de.reduce(function(e,n){return e[n]=Zt(n,t.rects,r),e},{}),o=s[t.placement],c=o.x,l=o.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[a]=s}we=e(()=>{b(),o(),xe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Gt}});function En(e){var t=e.state,n=e.name;t.modifiersData[n]=St({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}ie=e(()=>{Re(),oe={name:"popperOffsets",enabled:!0,phase:"read",fn:En,data:{}}});function Yt(e){return e==="x"?"y":"x"}Wt=e(()=>{});function Jt(e){var t=e.state,c=e.options,pe=e.name,ne=c.mainAxis,fe=ne===void 0||ne,U=c.altAxis,je=U!==void 0&&U,ye=c.boundary,_e=c.rootBoundary,we=c.altBoundary,Oe=c.padding,R=c.tether,l=R===void 0||R,W=c.tetherOffset,k=W===void 0?0:W,O=T(t,{boundary:ye,rootBoundary:_e,padding:Oe,altBoundary:we}),Z=f(t.placement),x=L(t.placement),ie=!x,o=Ae(Z),p=Yt(o),v=t.modifiersData.popperOffsets,u=t.rects.reference,g=t.rects.popper,_=typeof k=="function"?k(Object.assign({},t.rects,{placement:t.placement})):k,m=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(v){if(fe){var P,B=o==="y"?n:s,V=o==="y"?r:a,i=o==="y"?"height":"width",h=v[o],K=h+O[B],M=h-O[V],Y=l?-g[i]/2:0,be=x===j?u[i]:g[i],ge=x===j?-g[i]:-u[i],Q=t.elements.arrow,ae=l&&Q?ve(Q):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Pt(),ee=J[B],te=J[V],b=I(0,u[i],ae[i]),ue=ie?u[i]/2-Y-b-ee-m.mainAxis:be-b-ee-m.mainAxis,de=ie?-u[i]/2+Y+b+te+m.mainAxis:ge+b+te+m.mainAxis,E=t.elements.arrow&&$(t.elements.arrow),re=E?o==="y"?E.clientTop||0:E.clientLeft||0:0,z=(P=N?.[o])!=null?P:0,ce=h+ue-z-re,le=h+de-z,oe=I(l?H(K,ce):K,h,l?y(M,le):M);v[o]=oe,C[o]=oe-h}if(je){var se,he=o==="x"?n:s,me=o==="x"?r:a,d=v[p],w=p==="y"?"height":"width",X=d+O[he],G=d-O[me],A=[n,s].indexOf(Z)!==-1,D=(se=N?.[p])!=null?se:0,S=A?X:d-u[w]-g[w]-D+m.altAxis,F=A?d+u[w]+g[w]-D-m.altAxis:G,q=l&&A?rn(S,d,F):I(l?S:X,d,l?F:G);v[p]=q,C[p]=q-d}t.modifiersData[pe]=C}}fe=e(()=>{o(),b(),ee(),Wt(),Te(),me(),N(),R(),P(),De(),_(),_e={name:"preventOverflow",enabled:!0,phase:"main",fn:Jt,requiresIfExists:["offset"]}}),ye=e(()=>{q(),$e(),re(),se(),ze(),Ce(),we(),ie(),fe()});function sn(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}$t=e(()=>{});function an(e){return e===h(e)||!d(e)?Ge(e):sn(e)}Vt=e(()=>{G(),m(),i(),$t()});function cn(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return n!==1||s!==1}function ln(e,t,n){n===void 0&&(n=!1);var r=d(t),c=d(t)&&cn(t),i=w(t),o=D(e,c),a={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(r||!r&&!n)&&((p(t)!=="body"||qe(i))&&(a=an(t)),d(t)?(s=D(t,!0),s.x+=t.clientLeft,s.y+=t.clientTop):i&&(s.x=Ye(i))),{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}Bt=e(()=>{z(),Vt(),C(),i(),K(),g(),Q(),_()});function un(e){var n=new Map,t=new Set,s=[];e.forEach(function(e){n.set(e.name,e)});function o(e){t.add(e.name);var i=[].concat(e.requires||[],e.requiresIfExists||[]);i.forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){t.has(e.name)||o(e)}),s}function hn(e){var t=un(e);return Oe.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}Lt=e(()=>{o()});function fn(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}Nt=e(()=>{}),zt=e(()=>{}),kt=e(()=>{zt(),o()}),Et=e(()=>{});function jn(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}et=e(()=>{});function Ot(){for(var t=arguments.length,n=new Array(t),e=0;e{Bt(),me(),Be(),N(),E(),Lt(),Nt(),kt(),Et(),b(),et(),R(),i(),o(),be={placement:"bottom",modifiers:[],strategy:"absolute"},wt=ae()}),ge=e(()=>{ce(),se(),ie(),re(),q(),yt=[X,oe,te,ne],vt=ae({defaultModifiers:yt})}),ut=e(()=>{ce(),se(),ie(),re(),q(),we(),ze(),fe(),$e(),Ce(),ge(),ye(),tt=[X,oe,te,ne,xe,Ne,_e,Ve,Fe],ht=ae({defaultModifiers:tt})}),dt=e(()=>{o(),ye(),ce(),ut(),ge()}),le={},xn(le,{afterMain:()=>Me,afterRead:()=>Xe,afterWrite:()=>Ee,applyStyles:()=>ne,arrow:()=>Ve,auto:()=>B,basePlacements:()=>k,beforeMain:()=>Ue,beforeRead:()=>Je,beforeWrite:()=>Se,bottom:()=>r,clippingParents:()=>Ze,computeStyles:()=>te,createPopper:()=>ht,createPopperBase:()=>wt,createPopperLite:()=>vt,detectOverflow:()=>T,end:()=>A,eventListeners:()=>X,flip:()=>Ne,hide:()=>Fe,left:()=>s,main:()=>We,modifierPhases:()=>Oe,offset:()=>xe,placements:()=>de,popper:()=>S,popperGenerator:()=>ae,popperOffsets:()=>oe,preventOverflow:()=>_e,read:()=>Qe,reference:()=>pe,right:()=>a,start:()=>j,top:()=>n,variationPlacements:()=>ue,viewport:()=>J,write:()=>ke});var n,s,a,r,j,k,A,B,Ze,S,J,pe,ue,de,Je,Qe,Xe,Ue,We,Me,Se,ke,Ee,Oe,i,m,C,ne,b,y,_,M,z,H,me,je,E,xt,g,N,W,ee,Te,De,Le,Pe,_t,Ve,$e,P,q,ct,te,re,R,V,X,se,st,ot,at,rt,K,G,mt,pt,Q,jt,Be,He,At,Re,Dt,Ne,ze,Fe,Ce,xe,we,oe,ie,Wt,_e,fe,ye,$t,Vt,Bt,Lt,Nt,zt,kt,Et,et,be,wt,ce,yt,vt,ge,tt,ht,ut,dt,le,lt=e(()=>{dt()}),Nn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Dropdown=s(n.Popper,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o){"use strict";let g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function re(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let C=re(e),a=g(t),f=g(n),m=g(s),G=g(o),W=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),D=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=D(e);return t?document.querySelector(t):null},d=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),K=e=>d(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,F=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&d(o)?"element":W(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},T=e=>!!d(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),O=()=>{},B=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},w=[],z=e=>{document.readyState==="loading"?(w.length||document.addEventListener("DOMContentLoaded",()=>{w.forEach(e=>e())}),w.push(e)):e()},l=()=>document.documentElement.dir==="rtl",X=e=>{z(()=>{let t=B();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},V=(e,t,n,s)=>{let o=e.indexOf(t);if(o===-1)return e[!n&&s?e.length-1:0];let i=e.length;return o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))]},_="dropdown",r=".bs.dropdown",b=".data-api",p="Escape",x="Space",A="Tab",v="ArrowUp",h="ArrowDown",N=2,L=new RegExp(`${v}|${h}|${p}`),R=`hide${r}`,P=`hidden${r}`,H=`show${r}`,I=`shown${r}`,k=`click${r}${b}`,E=`keydown${r}${b}`,$=`keyup${r}${b}`,c="show",U="dropup",M="dropend",q="dropstart",Y="navbar",u='[data-bs-toggle="dropdown"]',j=".dropdown-menu",Q=".navbar-nav",Z=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",J=l()?"top-end":"top-start",ee=l()?"top-start":"top-end",te=l()?"bottom-end":"bottom-start",ne=l()?"bottom-start":"bottom-end",se=l()?"left-start":"right-start",oe=l()?"right-start":"left-start",ie={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ae={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class i extends G.default{constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return ie}static get DefaultType(){return ae}static get NAME(){return _}toggle(){return this._isShown()?this.hide():this.show()}show(){if(y(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if(a.default.trigger(this._element,H,e).defaultPrevented)return;let t=i.getParentFromElement(this._element);this._inNavbar?f.default.setDataAttribute(this._menu,"popper","none"):this._createPopper(t),"ontouchstart"in document.documentElement&&!t.closest(Q)&&[].concat(...document.body.children).forEach(e=>a.default.on(e,"mouseover",O)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(c),this._element.classList.add(c),a.default.trigger(this._element,I,e)}hide(){if(y(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){a.default.trigger(this._element,R,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",O)),this._popper&&this._popper.destroy(),this._menu.classList.remove(c),this._element.classList.remove(c),this._element.setAttribute("aria-expanded","false"),f.default.removeDataAttribute(this._menu,"popper"),a.default.trigger(this._element,P,e))}_getConfig(e){if(e={...this.constructor.Default,...f.default.getDataAttributes(this._element),...e},F(_,e,this.constructor.DefaultType),typeof e.reference=="object"&&!d(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${_.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof C>"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;this._config.reference==="parent"?t=e:d(this._config.reference)?t=K(this._config.reference):typeof this._config.reference=="object"&&(t=this._config.reference);let n=this._getPopperConfig(),s=n.modifiers.find(e=>e.name==="applyStyles"&&e.enabled===!1);this._popper=C.createPopper(t,this._menu,n),s&&f.default.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(c)}_getMenuElement(){return m.default.next(this._element,j)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(M))return se;if(e.classList.contains(q))return oe;let t=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains(U)?t?ee:J:t?ne:te}_detectNavbar(){return this._element.closest(`.${Y}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:e,target:t}){let n=m.default.find(Z,this._menu).filter(T);n.length&&V(n,t,e===h,!n.includes(t)).focus()}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(e&&(e.button===N||e.type==="keyup"&&e.key!==A))return;let t=m.default.find(u);for(let s=0,a=t.length;s{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Modal=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=d(e),u=d(t),c=d(n),_e=d(s),ge=1e3,f="transitionend",ie=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),Q=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},N=e=>{let t=Q(e);return t?document.querySelector(t):null},oe=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*ge)},ce=e=>{e.dispatchEvent(new Event(f))},m=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),ue=e=>m(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,g=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&m(o)?"element":ie(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},X=e=>!!m(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",pe=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),_=e=>{e.offsetHeight},me=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},v=[],le=e=>{document.readyState==="loading"?(v.length||document.addEventListener("DOMContentLoaded",()=>{v.forEach(e=>e())}),v.push(e)):e()},h=()=>document.documentElement.dir==="rtl",re=e=>{le(()=>{let t=me();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a=e=>{typeof e=="function"&&e()},ee=(e,t,n=!0)=>{if(!n){a(e);return}let i=oe(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(f,o),a(e))};t.addEventListener(f,o),setTimeout(()=>{s||ce(t)},i)},S=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",M=".sticky-top";class J{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(S,"paddingRight",t=>t+e),this._setElementAttributes(M,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(S,"paddingRight"),this._resetElementAttributes(M,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&u.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=u.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(u.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){m(e)?t(e):c.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let R={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},q={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},D="backdrop",V="fade",L="show",j=`mousedown.bs.${D}`;class ne{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){a(e);return}this._append(),this._config.isAnimated&&_(this._getElement()),this._getElement().classList.add(L),this._emulateAnimation(()=>{a(e)})}hide(e){if(!this._config.isVisible){a(e);return}this._getElement().classList.remove(L),this._emulateAnimation(()=>{this.dispose(),a(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(V),this._element=e}return this._element}_getConfig(e){return e={...R,...typeof e=="object"?e:{}},e.rootElement=ue(e.rootElement),g(D,e,q),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),j,()=>{a(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,j),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){ee(e,this._getElement(),this._config.isAnimated)}}let H={trapElement:null,autofocus:!0},I={trapElement:"element",autofocus:"boolean"},B="focustrap",l=".bs.focustrap",$=`focusin${l}`,W=`keydown.tab${l}`,U="Tab",K="forward",z="backward";class Y{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,l),o.default.on(document,$,e=>this._handleFocusin(e)),o.default.on(document,W,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,l))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=c.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===z?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===U&&(this._lastTabNavDirection=e.shiftKey?z:K)}_getConfig(e){return e={...H,...typeof e=="object"?e:{}},g(B,e,I),e}}let G=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),pe(this))return;let o=N(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},T="modal",i=".bs.modal",Z=".data-api",F="Escape",A={backdrop:!0,keyboard:!0,focus:!0},te={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},P=`hide${i}`,se=`hidePrevented${i}`,k=`hidden${i}`,b=`show${i}`,ae=`shown${i}`,E=`resize${i}`,C=`click.dismiss${i}`,x=`keydown.dismiss${i}`,de=`mouseup.dismiss${i}`,O=`mousedown.dismiss${i}`,he=`click${i}${Z}`,w="modal-open",fe="fade",y="show",p="modal-static",ve=".modal.show",be=".modal-dialog",je=".modal-body",ye='[data-bs-toggle="modal"]';class r extends _e.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._dialog=c.default.findOne(be,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new J}static get Default(){return A}static get NAME(){return T}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||o.default.trigger(this._element,b,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(w),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),o.default.on(this._dialog,O,()=>{o.default.one(this._element,de,e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||o.default.trigger(this._element,P).defaultPrevented)return;this._isShown=!1;let e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(y),o.default.off(this._element,C),o.default.off(this._dialog,O),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(e=>o.default.off(e,i)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ne({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Y({trapElement:this._element})}_getConfig(e){return e={...A,...u.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},g(T,e,te),e}_showElement(e){let t=this._isAnimated(),n=c.default.findOne(je,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(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,n&&(n.scrollTop=0),t&&_(this._element),this._element.classList.add(y);let s=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(s,this._dialog,t)}_setEscapeEvent(){this._isShown?o.default.on(this._element,x,e=>{this._config.keyboard&&e.key===F?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===F&&this._triggerBackdropTransition()}):o.default.off(this._element,x)}_setResizeEvent(){this._isShown?o.default.on(window,E,()=>this._adjustDialog()):o.default.off(window,E)}_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(w),this._resetAdjustments(),this._scrollBar.reset(),o.default.trigger(this._element,k)})}_showBackdrop(e){o.default.on(this._element,C,e=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}e.target===e.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(fe)}_triggerBackdropTransition(){if(o.default.trigger(this._element,se).defaultPrevented)return;let{classList:e,scrollHeight:s,style:t}=this._element,n=s>document.documentElement.clientHeight;!n&&t.overflowY==="hidden"||e.contains(p)||(n||(t.overflowY="hidden"),e.add(p),this._queueCallback(()=>{e.remove(p),n||this._queueCallback(()=>{t.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,n=this._scrollBar.getWidth(),t=n>0;(!t&&e&&!h()||t&&!e&&h())&&(this._element.style.paddingLeft=`${n}px`),(t&&!e&&!h()||!t&&e&&h())&&(this._element.style.paddingRight=`${n}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){let n=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof n[e]>"u")throw new TypeError(`No method named "${e}"`);n[e](t)}})}}return o.default.on(document,he,ye,function(e){let t=N(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),o.default.one(t,b,e=>{e.defaultPrevented||o.default.one(t,k,()=>{X(this)&&this.focus()})});let n=c.default.findOne(ve);n&&r.getInstance(n).hide(),r.getOrCreateInstance(t).toggle(this)}),G(r),re(r),r})}),Rn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(O(),x(),u(),l()):typeof define=="function"&&define.amd?define(["./dom/selector-engine","./dom/manipulator","./dom/event-handler","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Offcanvas=s(n.SelectorEngine,n.Manipulator,n.EventHandler,n.Base))})(e,function(e,t,n,s){"use strict";let h=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=h(e),d=h(t),o=h(n),he=h(s),X=1e3,m="transitionend",F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),N=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},E=e=>{let t=N(e);return t?document.querySelector(t):null},Q=e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e),s=Number.parseFloat(t),o=Number.parseFloat(n);return!s&&!o?0:(t=t.split(",")[0],n=n.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(n))*X)},ce=e=>{e.dispatchEvent(new Event(m))},c=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),B=e=>c(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,p=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&c(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},oe=e=>!!c(e)&&e.getClientRects().length!==0&&getComputedStyle(e).getPropertyValue("visibility")==="visible",y=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),ne=e=>{e.offsetHeight},ee=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},f=[],G=e=>{document.readyState==="loading"?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(e=>e())}),f.push(e)):e()},K=e=>{G(()=>{let t=ee();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},r=e=>{typeof e=="function"&&e()},L=(e,t,n=!0)=>{if(!n){r(e);return}let i=Q(t)+5,s=!1,o=({target:n})=>{n===t&&(s=!0,t.removeEventListener(m,o),r(e))};t.addEventListener(m,o),setTimeout(()=>{s||ce(t)},i)},A=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",S=".sticky-top";class M{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",t=>t+e),this._setElementAttributes(A,"paddingRight",t=>t+e),this._setElementAttributes(S,"marginRight",t=>t-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){let s=this.getWidth(),o=e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);let o=window.getComputedStyle(e)[t];e.style[t]=`${n(Number.parseFloat(o))}px`};this._applyManipulationCallback(e,o)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(A,"paddingRight"),this._resetElementAttributes(S,"marginRight")}_saveInitialAttribute(e,t){let n=e.style[t];n&&d.default.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){let n=e=>{let n=d.default.getDataAttribute(e,t);typeof n>"u"?e.style.removeProperty(t):(d.default.removeDataAttribute(e,t),e.style[t]=n)};this._applyManipulationCallback(e,n)}_applyManipulationCallback(e,t){c(e)?t(e):l.default.find(e,this._element).forEach(t)}isOverflowing(){return this.getWidth()>0}}let z={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Y={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},v="backdrop",D="fade",g="show",k=`mousedown.bs.${v}`;class R{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){r(e);return}this._append(),this._config.isAnimated&&ne(this._getElement()),this._getElement().classList.add(g),this._emulateAnimation(()=>{r(e)})}hide(e){if(!this._config.isVisible){r(e);return}this._getElement().classList.remove(g),this._emulateAnimation(()=>{this.dispose(),r(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(D),this._element=e}return this._element}_getConfig(e){return e={...z,...typeof e=="object"?e:{}},e.rootElement=B(e.rootElement),p(v,e,Y),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),o.default.on(this._getElement(),k,()=>{r(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(o.default.off(this._element,k),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){L(e,this._getElement(),this._config.isAnimated)}}let P={trapElement:null,autofocus:!0},H={trapElement:"element",autofocus:"boolean"},I="focustrap",u=".bs.focustrap",V=`focusin${u}`,$=`keydown.tab${u}`,W="Tab",U="forward",C="backward";class q{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:t}=this._config;this._isActive||(t&&e.focus(),o.default.off(document,u),o.default.on(document,V,e=>this._handleFocusin(e)),o.default.on(document,$,e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,o.default.off(document,u))}_handleFocusin(e){let{target:s}=e,{trapElement:t}=this._config;if(s===document||s===t||t.contains(s))return;let n=l.default.focusableChildren(t);n.length===0?t.focus():this._lastTabNavDirection===C?n[n.length-1].focus():n[0].focus()}_handleKeydown(e){e.key===W&&(this._lastTabNavDirection=e.shiftKey?C:U)}_getConfig(e){return e={...P,...typeof e=="object"?e:{}},p(I,e,H),e}}let T=(e,t="hide")=>{let s=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;o.default.on(document,s,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),y(this))return;let o=E(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},x="offcanvas",a=".bs.offcanvas",O=".data-api",Z=`load${a}${O}`,J="Escape",w={backdrop:!0,keyboard:!0,scroll:!1},te={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},_="show",se="offcanvas-backdrop",j=".offcanvas.show",ie=`show${a}`,ae=`shown${a}`,re=`hide${a}`,b=`hidden${a}`,le=`click${a}${O}`,de=`keydown.dismiss${a}`,ue='[data-bs-toggle="offcanvas"]';class i extends he.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return x}static get Default(){return w}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||o.default.trigger(this._element,ie,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new M).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(_);let t=()=>{this._config.scroll||this._focustrap.activate(),o.default.trigger(this._element,ae,{relatedTarget:e})};this._queueCallback(t,this._element,!0)}hide(){if(!this._isShown||o.default.trigger(this._element,re).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(_),this._backdrop.hide();let e=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new M).reset(),o.default.trigger(this._element,b)};this._queueCallback(e,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e={...w,...d.default.getDataAttributes(this._element),...typeof e=="object"?e:{}},p(x,e,te),e}_initializeBackDrop(){return new R({className:se,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new q({trapElement:this._element})}_addEventListeners(){o.default.on(this._element,de,e=>{this._config.keyboard&&e.key===J&&this.hide()})}static jQueryInterface(e){return this.each(function(){let t=i.getOrCreateInstance(this,e);if(typeof e=="string"){if(t[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return o.default.on(document,le,ue,function(e){let t=E(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),y(this))return;o.default.one(t,b,()=>{oe(this)&&this.focus()});let n=l.default.findOne(j);n&&n!==t&&i.getInstance(n).hide(),i.getOrCreateInstance(t).toggle(this)}),o.default.on(window,Z,()=>l.default.find(j).forEach(e=>i.getOrCreateInstance(e).show())),T(i),K(i),i})}),nt=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s((lt(),Ft(le)),Ke(),u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["@popperjs/core","./dom/data","./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tooltip=s(n.Popper,n.Data,n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s,o,i){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ee(e){if(e&&e.__esModule)return e;let t=Object.create(null);if(e)for(let n in e)if(n!=="default"){let s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}let w=ee(e),X=c(t),a=c(n),K=c(s),U=c(o),W=c(i),V=1e6,N=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),G=e=>{do e+=Math.floor(Math.random()*V);while(document.getElementById(e))return e},v=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),b=e=>v(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,R=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&v(o)?"element":N(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},y=e=>{if(!document.documentElement.attachShadow)return null;if(typeof e.getRootNode=="function"){let t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?y(e.parentNode):null},_=()=>{},Q=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],Y=e=>{document.readyState==="loading"?(g.length||document.addEventListener("DOMContentLoaded",()=>{g.forEach(e=>e())}),g.push(e)):e()},C=()=>document.documentElement.dir==="rtl",q=e=>{Y(()=>{let t=Q();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},D=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),z=/^aria-[\w-]*$/i,B=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,M=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,F=(e,t)=>{let n=e.nodeName.toLowerCase();if(t.includes(n))return!D.has(n)||!!(B.test(e.nodeValue)||M.test(e.nodeValue));let s=t.filter(e=>e instanceof RegExp);for(let e=0,t=s.length;e{F(t,r)||e.removeAttribute(t.nodeName)})}return s.body.innerHTML}let k="tooltip",r=".bs.tooltip",L="bs-tooltip",A=new Set(["sanitize","allowList","sanitizeFn"]),P={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)"},H={AUTO:"auto",TOP:"top",RIGHT:C()?"left":"right",BOTTOM:"bottom",LEFT:C()?"right":"left"},I={animation:!0,template:'',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:T,popperConfig:null},S={HIDE:`hide${r}`,HIDDEN:`hidden${r}`,SHOW:`show${r}`,SHOWN:`shown${r}`,INSERTED:`inserted${r}`,CLICK:`click${r}`,FOCUSIN:`focusin${r}`,FOCUSOUT:`focusout${r}`,MOUSEENTER:`mouseenter${r}`,MOUSELEAVE:`mouseleave${r}`},h="fade",$="modal",u="show",d="show",p="out",E=".tooltip-inner",x=`.${$}`,O="hide.bs.modal",l="hover",f="focus",Z="click",J="manual";class m extends W.default{constructor(e,t){if(typeof w>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return I}static get NAME(){return k}static get Event(){return S}static get DefaultType(){return P}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){let t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(u)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),a.default.off(this._element.closest(x),O,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;let i=a.default.trigger(this._element,this.constructor.Event.SHOW),t=y(this._element),r=t===null?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(i.defaultPrevented||!r)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(E).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let e=this.getTipElement(),n=G(this.constructor.NAME);e.setAttribute("id",n),this._element.setAttribute("aria-describedby",n),this._config.animation&&e.classList.add(h);let c=typeof this._config.placement=="function"?this._config.placement.call(this,e,this._element):this._config.placement,s=this._getAttachment(c);this._addAttachmentClass(s);let{container:l}=this._config;X.default.set(e,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.append(e),a.default.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=w.createPopper(this._element,e,this._getPopperConfig(s)),e.classList.add(u);let o=this._resolvePossibleFunction(this._config.customClass);o&&e.classList.add(...o.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>{a.default.on(e,"mouseover",_)});let d=()=>{let e=this._hoverState;this._hoverState=null,a.default.trigger(this._element,this.constructor.Event.SHOWN),e===p&&this._leave(null,this)},m=this.tip.classList.contains(h);this._queueCallback(d,this.tip,m)}hide(){if(!this._popper)return;let e=this.getTipElement(),t=()=>{this._isWithActiveTrigger()||(this._hoverState!==d&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),a.default.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if(a.default.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(u),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(e=>a.default.off(e,"mouseover",_)),this._activeTrigger[Z]=!1,this._activeTrigger[f]=!1,this._activeTrigger[l]=!1;let n=this.tip.classList.contains(h);this._queueCallback(t,this.tip,n),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return!!this.getTitle()}getTipElement(){if(this.tip)return this.tip;let t=document.createElement("div");t.innerHTML=this._config.template;let e=t.children[0];return this.setContent(e),e.classList.remove(h,u),this.tip=e,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),E)}_sanitizeAndSetContent(e,t,n){let s=U.default.findOne(n,e);if(!t&&s){s.remove();return}this.setElementContent(s,t)}setElementContent(e,t){if(e!==null){if(v(t)){t=b(t),this._config.html?t.parentNode!==e&&(e.innerHTML="",e.append(t)):e.textContent=t.textContent;return}this._config.html?(this._config.sanitize&&(t=j(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,t){return t||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(e=>Number.parseInt(e,10)):typeof e=="function"?t=>e(t,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,...typeof this._config.popperConfig=="function"?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return H[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(e=>{if(e==="click")a.default.on(this._element,this.constructor.Event.CLICK,this._config.selector,e=>this.toggle(e));else if(e!==J){let t=e===l?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=e===l?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;a.default.on(this._element,t,this._config.selector,e=>this._enter(e)),a.default.on(this._element,n,this._config.selector,e=>this._leave(e))}}),this._hideModalHandler=()=>{this._element&&this.hide()},a.default.on(this._element.closest(x),O,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||t!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusin"?f:l]=!0),t.getTipElement().classList.contains(u)||t._hoverState===d){t._hoverState=d;return}if(clearTimeout(t._timeout),t._hoverState=d,!t._config.delay||!t._config.delay.show){t.show();return}t._timeout=setTimeout(()=>{t._hoverState===d&&t.show()},t._config.delay.show)}_leave(e,t){if(t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger[e.type==="focusout"?f:l]=t._element.contains(e.relatedTarget)),!t._isWithActiveTrigger()){if(clearTimeout(t._timeout),t._hoverState=p,!t._config.delay||!t._config.delay.hide){t.hide();return}t._timeout=setTimeout(()=>{t._hoverState===p&&t.hide()},t._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let t=K.default.getDataAttributes(this._element);return Object.keys(t).forEach(e=>{A.has(e)&&delete t[e]}),e={...this.constructor.Default,...t,...typeof e=="object"&&e?e:{}},e.container=e.container===!1?document.body:b(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),R(k,e,this.constructor.DefaultType),e.sanitize&&(e.template=j(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){let t=this.getTipElement(),n=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),e=t.getAttribute("class").match(n);e!==null&&e.length>0&&e.map(e=>e.trim()).forEach(e=>t.classList.remove(e))}_getBasicClassPrefix(){return L}_handlePopperPlacementChange(e){let{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let t=m.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return q(m),m})}),Hn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(nt()):typeof define=="function"&&define.amd?define(["./tooltip"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Popover=s(n.Tooltip))})(e,function(e){"use strict";let o=(e=>e&&typeof e=="object"&&"default"in e?e:{default:e})(e),f=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},s=[],i=e=>{document.readyState==="loading"?(s.length||document.addEventListener("DOMContentLoaded",()=>{s.forEach(e=>e())}),s.push(e)):e()},r=e=>{i(()=>{let t=f();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},a="popover",t=".bs.popover",c="bs-popover",l={...o.default.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},d={...o.default.DefaultType,content:"(string|element|function)"},u={HIDE:`hide${t}`,HIDDEN:`hidden${t}`,SHOW:`show${t}`,SHOWN:`shown${t}`,INSERTED:`inserted${t}`,CLICK:`click${t}`,FOCUSIN:`focusin${t}`,FOCUSOUT:`focusout${t}`,MOUSEENTER:`mouseenter${t}`,MOUSELEAVE:`mouseleave${t}`},h=".popover-header",m=".popover-body";class n extends o.default{static get Default(){return l}static get NAME(){return a}static get Event(){return u}static get DefaultType(){return d}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),h),this._sanitizeAndSetContent(e,this._getContent(),m)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return c}static jQueryInterface(e){return this.each(function(){let t=n.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return r(n),n})}),In=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.ScrollSpy=s(n.EventHandler,n.Manipulator,n.SelectorEngine,n.Base))})(e,function(e,t,n,s){"use strict";let c=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=c(e),p=c(t),o=c(n),D=c(s),F=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),A=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},w=e=>{let t=A(e);return t&&document.querySelector(t)?t:null},f=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),P=e=>f(e)?e.jquery?e[0]:e:typeof e=="string"&&e.length>0?document.querySelector(e):null,E=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&f(o)?"element":F(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},H=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},d=[],z=e=>{document.readyState==="loading"?(d.length||document.addEventListener("DOMContentLoaded",()=>{d.forEach(e=>e())}),d.push(e)):e()},k=e=>{z(()=>{let t=H();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},j="scrollspy",l=".bs.scrollspy",S=".data-api",m={offset:10,method:"auto",target:""},O={offset:"number",method:"string",target:"(string|element)"},x=`activate${l}`,C=`scroll${l}`,y=`load${l}${S}`,b="dropdown-item",i="active",_='[data-bs-spy="scroll"]',M=".nav, .list-group",h=".nav-link",T=".nav-item",v=".list-group-item",u=`${h}, ${v}, .${b}`,N=".dropdown",L=".dropdown-toggle",R="offset",g="position";class r extends D.default{constructor(e,t){super(e),this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(t),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,a.default.on(this._scrollElement,C,()=>this._process()),this.refresh(),this._process()}static get Default(){return m}static get NAME(){return j}refresh(){let t=this._scrollElement===this._scrollElement.window?R:g,e=this._config.method==="auto"?t:this._config.method,n=e===g?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),o.default.find(u,this._config.target).map(t=>{let s=w(t),i=s?o.default.findOne(s):null;if(i){let t=i.getBoundingClientRect();if(t.width||t.height)return[p.default[e](i).top+n,s]}return null}).filter(e=>e).sort((e,t)=>e[0]-t[0]).forEach(e=>{this._offsets.push(e[0]),this._targets.push(e[1])})}dispose(){a.default.off(this._scrollElement,l),super.dispose()}_getConfig(e){return e={...m,...p.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},e.target=P(e.target)||document.documentElement,E(j,e,O),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),n=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=n){let e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e);return}if(this._activeTarget&&e0){this._activeTarget=null,this._clear();return}for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(typeof this._offsets[t+1]>"u"||e`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),t=o.default.findOne(n.join(","),this._config.target);t.classList.add(i),t.classList.contains(b)?o.default.findOne(L,t.closest(N)).classList.add(i):o.default.parents(t,M).forEach(e=>{o.default.prev(e,`${h}, ${v}`).forEach(e=>e.classList.add(i)),o.default.prev(e,T).forEach(e=>{o.default.children(e,h).forEach(e=>e.classList.add(i))})}),a.default.trigger(this._scrollElement,x,{relatedTarget:e})}_clear(){o.default.find(u,this._config.target).filter(e=>e.classList.contains(i)).forEach(e=>e.classList.remove(i))}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return a.default.on(window,y,()=>{o.default.find(_).forEach(e=>new r(e))}),k(r),r})}),Bn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),O(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/selector-engine","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Tab=s(n.EventHandler,n.SelectorEngine,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},o=l(e),i=l(t),D=l(n),M=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},S=e=>{let t=M(e);return t?document.querySelector(t):null},E=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],j=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},g=e=>{j(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},C="tab",s=".bs.tab",v=".data-api",b=`hide${s}`,f=`hidden${s}`,y=`show${s}`,_=`shown${s}`,w=`click${s}${v}`,O="dropdown-menu",a="active",m="fade",h="show",k=".dropdown",A=".nav, .list-group",u=".active",d=":scope > li > .active",F='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',T=".dropdown-toggle",z=":scope > .dropdown-menu .active";class r extends D.default{static get NAME(){return C}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(a))return;let e,n=S(this._element),t=this._element.closest(A);if(t){let n=t.nodeName==="UL"||t.nodeName==="OL"?d:u;e=i.default.find(n,t),e=e[e.length-1]}let s=e?o.default.trigger(e,b,{relatedTarget:this._element}):null;if(o.default.trigger(this._element,y,{relatedTarget:e}).defaultPrevented||s!==null&&s.defaultPrevented)return;this._activate(this._element,t);let r=()=>{o.default.trigger(e,f,{relatedTarget:this._element}),o.default.trigger(this._element,_,{relatedTarget:e})};n?this._activate(n,n.parentNode,r):r()}_activate(e,t,n){let s=(t&&(t.nodeName==="UL"||t.nodeName==="OL")?i.default.find(d,t):i.default.children(t,u))[0],a=n&&s&&s.classList.contains(m),o=()=>this._transitionComplete(e,s,n);s&&a?(s.classList.remove(h),this._queueCallback(o,e,!0)):o()}_transitionComplete(e,t,n){if(t){t.classList.remove(a);let e=i.default.findOne(z,t.parentNode);e&&e.classList.remove(a),t.getAttribute("role")==="tab"&&t.setAttribute("aria-selected",!1)}e.classList.add(a),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(m)&&e.classList.add(h);let s=e.parentNode;if(s&&s.nodeName==="LI"&&(s=s.parentNode),s&&s.classList.contains(O)){let t=e.closest(k);t&&i.default.find(T,t).forEach(e=>e.classList.add(a)),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each(function(){let t=r.getOrCreateInstance(this);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e]()}})}}return o.default.on(document,w,F,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),E(this))return;r.getOrCreateInstance(this).show()}),g(r),r})}),Vn=t((e,t)=>{(function(n,s){typeof e=="object"&&typeof t<"u"?t.exports=s(u(),x(),l()):typeof define=="function"&&define.amd?define(["./dom/event-handler","./dom/manipulator","./base-component"],s):(n=typeof globalThis<"u"?globalThis:n||self,n.Toast=s(n.EventHandler,n.Manipulator,n.Base))})(e,function(e,t,n){"use strict";let l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=l(e),N=l(t),D=l(n),T=e=>e==null?`${e}`:{}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(),F=e=>{let t=e.getAttribute("data-bs-target");if(!t||t==="#"){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&n!=="#"?n.trim():null}return t},M=e=>{let t=F(e);return t?document.querySelector(t):null},y=e=>!!e&&typeof e=="object"&&(typeof e.jquery<"u"&&(e=e[0]),typeof e.nodeType<"u"),m=(e,t,n)=>{Object.keys(n).forEach(s=>{let i=n[s],o=t[s],a=o&&y(o)?"element":T(o);if(!new RegExp(i).test(a))throw new TypeError(`${e.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${i}".`)})},j=e=>!!(!e||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains("disabled"))||(typeof e.disabled<"u"?e.disabled:e.hasAttribute("disabled")&&e.getAttribute("disabled")!=="false"),p=e=>{e.offsetHeight},x=()=>{let{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},c=[],g=e=>{document.readyState==="loading"?(c.length||document.addEventListener("DOMContentLoaded",()=>{c.forEach(e=>e())}),c.push(e)):e()},v=e=>{g(()=>{let t=x();if(t){let n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}})},b=(e,t="hide")=>{let o=`click.dismiss${e.EVENT_KEY}`,n=e.NAME;s.default.on(document,o,`[data-bs-dismiss="${n}"]`,function(s){if(["A","AREA"].includes(this.tagName)&&s.preventDefault(),j(this))return;let o=M(this)||this.closest(`.${n}`);e.getOrCreateInstance(o)[t]()})},h="toast",o=".bs.toast",_=`mouseover${o}`,w=`mouseout${o}`,O=`focusin${o}`,f=`focusout${o}`,C=`hide${o}`,E=`hidden${o}`,k=`show${o}`,A=`shown${o}`,S="fade",u="hide",i="show",r="showing",z={animation:"boolean",autohide:"boolean",delay:"number"},d={animation:!0,autohide:!0,delay:5e3};class a extends D.default{constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return z}static get Default(){return d}static get NAME(){return h}show(){if(s.default.trigger(this._element,k).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(S);let e=()=>{this._element.classList.remove(r),s.default.trigger(this._element,A),this._maybeScheduleHide()};this._element.classList.remove(u),p(this._element),this._element.classList.add(i),this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(i)||s.default.trigger(this._element,C).defaultPrevented)return;let e=()=>{this._element.classList.add(u),this._element.classList.remove(r),this._element.classList.remove(i),s.default.trigger(this._element,E)};this._element.classList.add(r),this._queueCallback(e,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(i)&&this._element.classList.remove(i),super.dispose()}_getConfig(e){return e={...d,...N.default.getDataAttributes(this._element),...typeof e=="object"&&e?e:{}},m(h,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t;break}if(t){this._clearTimeout();return}let n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){s.default.on(this._element,_,e=>this._onInteraction(e,!0)),s.default.on(this._element,w,e=>this._onInteraction(e,!1)),s.default.on(this._element,O,e=>this._onInteraction(e,!0)),s.default.on(this._element,f,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let t=a.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof t[e]>"u")throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return b(a),v(a),a})}),Yn=c(kn()),Wn=c(l()),Un=c(Fn()),Kn=c(Dn()),qn=c(Pn()),$n=c(Nn()),Gn=c(Ln()),Zn=c(Rn()),Qn=c(Hn()),Xn=c(In()),Jn=c(Bn()),es=c(Vn()),ts=c(nt())})()

    Your first http4k app

    Welcome to the world of http4k! In this guide, we’ll run you through the steps required to get up and running with your first Kotlin server application. We’ll generate the project, make some requests to it and then build it into a runnable application. By the end, you’ll have a fully working app built packaged and tested using the Gradle build tool.

    Pre-requisites:

    • An internet connection
    • JDK 19 or greater installed and set up
    • An IDE/Text-editor - (http4k is developed using IntelliJ)

    Step 1

    First, we’ll generate and download a project template from the http4k Toolbox. Point your browser at toolbox.http4k.org and select the Project Wizard from the menu (alternatively, you can use the CLI to run through the same process using the command http4k generate project).

    The Toolbox is designed as a questionnaire which will help you configure a working project from all of the available http4k modules. There are several stages, but for this guide we’re just going to generate the project using the defaults.

    We explain each of the parts in the remainder of this step, but if you just want to skip to the end, just keep hitting Next until the progress bar hits 100% then go to step 2:

    toolbox

    a. First we select a deployment model for our App - Server or Serverless. Hit Next to select Server.

    b. We don’t need any realtime components such as Websockets. Hit Next.

    c. The third page allows us to select whichever Server backend we want. The default option is SunHttp which is pre-bundled with the core module. Hit Next.

    d. Next, we can choose an HTTP client. The Java HTTP Client is also pre-bundled. Hit Next.

    e. Parts 2 and 3 allows us to select bolt-on functionality and testing modules. Keep hitting Next until you get to Part 4.

    e. Now we can name the main class and package of our application. If you’re happy with the defaults (later steps will assume you are), hit Next twice.

    f. Finally, we can choose a build tool and packaging for the app. We’ll use the defaults of Gradle with ZIP distribution.

    Step 2

    Once you’re finished, the Toolbox will review your choices and you can hit Download. Unzip and import the project into your IDE. In Intellij, you choose: File -> New -> Project from existing sources. and select the build.gradle file inside the unpacked ZIP.

    Step 3

    The project is fully formed and buildable, it consists of:

    a. Build files and scripts for gradle

    b. A runnable program containing the http4k app in the src/main/kotlin directory

    c. The src/test/kotlin directory containing a working test and a runnable client program for our app.

    layout

    Step 4

    First, let’s take a tour of the /src/main/kotlin/HelloWorld.kt file which contains our production app.

    app code
    • Lines 14-18 defines our production application. It consists of a single HTTP endpoint binding all HTTP GET requests on the path /ping to an HttpHandler function. This function takes an implicit Request parameter it (which it ignores), and just constructs and returns a Response object with status and a static body string. The return type of the call to routes() is also an HttpHandler.
    • Lines 20-26 form a runnable program which starts our application.
    • Lines 21 decorates our app with a Request printing Filter. This returns another HttpHandler.
    • Lines 23 binds the app onto an instance of the SunHttp Server backend and starts it on port 9000.

    Hit the little green arrow and the application will run and start. Point your browser at http://localhost:9000/ping to check that it’s working. Note that the Filter is printing each incoming request to the console.

    Step 5

    In /src/test/kotlin/HelloWorldClient.kt there is an example of an HTTP client which we can use to call our running app.

    client code
    • Lines 12 creates an HTTP client - note that it’s type is also HttpHandler.
    • Lines 14 decorates the client with a Response printing Filter. The result type of new client is also HttpHandler.
    • Lines 16 constructs an HTTP Request and calls the client app with it, receiving a response.

    Try running the client by hitting the little green arrow on line 11. You’ll see the Response printed to the console by the Filter, followed by a repeat of the body content, which is printed by line 18.

    Step 6

    Modify the request in /src/test/kotlin/HelloWorldClient.kt to point at http://localhost:9000/pong instead. Run the client program again and note that a 404 is printed. This happens because we have not bound an HttpHandler to that endpoint.

    To bind an HttpHandler to the pong endpoint, modify /src/main/kotlin/HelloWorld.kt by adding lines 18-20 below:

    client code
    • Lines 19-21 add an HTTP endpoint binding all HTTP GET requests on the path /pong to an HttpHandler function.

    To see this update in action, first rerun the main application by hitting the green arrow now on line 23 in /src/main/kotlin/HelloWorld.kt, and then running the client again using the green arrow on line 11 in /src/test/kotlin/HelloWorldClient.kt. You should see the new “ping” response printed to the console.

    Step 7

    A test for our app is found in /src/test/kotlin/HelloWorldTest.kt. Run it with the green arrow on line 10 and it should pass.

    client code

    Cool things to notice about the test:

    1. As our app is just an HttpHandler function, it runs entirely in-memory. It is therefore super-fast and completely threadsafe.
    2. There is no custom core or other setup required for the test to run.
    3. Request and Response objects are immutable data classes, and can therefore be compared safely in tests.

    Step 8

    Let’s package our app into a runnable Application. From the IDE run the distZip task. This will create an standard application ZIP file with scripts to run the app and deposit it in the build/distributions directory. You’ll find the task in the Gradle tab under: HelloWorld -> Tasks -> Dstribution -> distZip.

    Congratulations!

    You have successfully:

    1. Created an working http4k project using the http4k Toolbox.
    2. Bound a simple HttpHandler function to particular HTTP endpoint.
    3. Seen how the http4k HttpHandler and Filter model provide a simple set of composable building blocks to construct HTTP applications.
    4. Tested the application entirely in-memory with no custom libraries or code.
    5. Packaged your http4k app into a ZIP file.

    To see a similar application, you can check out the complete Hello World app from the http4k Examples repo

    (Ready for more? Let’s move on to deploying your http4k app as a Serverless Lambda to AWS)

    \ No newline at end of file +

    Your first http4k app

    Welcome to the world of http4k! In this guide, we’ll run you through the steps required to get up and running with your first Kotlin server application. We’ll generate the project, make some requests to it and then build it into a runnable application. By the end, you’ll have a fully working app built packaged and tested using the Gradle build tool.

    Pre-requisites:

    • An internet connection
    • JDK 19 or greater installed and set up
    • An IDE/Text-editor - (http4k is developed using IntelliJ)

    Step 1

    First, we’ll generate and download a project template from the http4k Toolbox. Point your browser at toolbox.http4k.org and select the Project Wizard from the menu (alternatively, you can use the CLI to run through the same process using the command http4k generate project).

    The Toolbox is designed as a questionnaire which will help you configure a working project from all of the available http4k modules. There are several stages, but for this guide we’re just going to generate the project using the defaults.

    We explain each of the parts in the remainder of this step, but if you just want to skip to the end, just keep hitting Next until the progress bar hits 100% then go to step 2:

    toolbox

    a. First we select a deployment model for our App - Server or Serverless. Hit Next to select Server.

    b. We don’t need any realtime components such as Websockets. Hit Next.

    c. The third page allows us to select whichever Server backend we want. The default option is SunHttp which is pre-bundled with the core module. Hit Next.

    d. Next, we can choose an HTTP client. The Java HTTP Client is also pre-bundled. Hit Next.

    e. Parts 2 and 3 allows us to select bolt-on functionality and testing modules. Keep hitting Next until you get to Part 4.

    e. Now we can name the main class and package of our application. If you’re happy with the defaults (later steps will assume you are), hit Next twice.

    f. Finally, we can choose a build tool and packaging for the app. We’ll use the defaults of Gradle with ZIP distribution.

    Step 2

    Once you’re finished, the Toolbox will review your choices and you can hit Download. Unzip and import the project into your IDE. In Intellij, you choose: File -> New -> Project from existing sources. and select the build.gradle file inside the unpacked ZIP.

    Step 3

    The project is fully formed and buildable, it consists of:

    a. Build files and scripts for gradle

    b. A runnable program containing the http4k app in the src/main/kotlin directory

    c. The src/test/kotlin directory containing a working test and a runnable client program for our app.

    layout

    Step 4

    First, let’s take a tour of the /src/main/kotlin/HelloWorld.kt file which contains our production app.

    app code
    • Lines 14-18 defines our production application. It consists of a single HTTP endpoint binding all HTTP GET requests on the path /ping to an HttpHandler function. This function takes an implicit Request parameter it (which it ignores), and just constructs and returns a Response object with status and a static body string. The return type of the call to routes() is also an HttpHandler.
    • Lines 20-26 form a runnable program which starts our application.
    • Lines 21 decorates our app with a Request printing Filter. This returns another HttpHandler.
    • Lines 23 binds the app onto an instance of the SunHttp Server backend and starts it on port 9000.

    Hit the little green arrow and the application will run and start. Point your browser at http://localhost:9000/ping to check that it’s working. Note that the Filter is printing each incoming request to the console.

    Step 5

    In /src/test/kotlin/HelloWorldClient.kt there is an example of an HTTP client which we can use to call our running app.

    client code
    • Lines 12 creates an HTTP client - note that it’s type is also HttpHandler.
    • Lines 14 decorates the client with a Response printing Filter. The result type of new client is also HttpHandler.
    • Lines 16 constructs an HTTP Request and calls the client app with it, receiving a response.

    Try running the client by hitting the little green arrow on line 11. You’ll see the Response printed to the console by the Filter, followed by a repeat of the body content, which is printed by line 18.

    Step 6

    Modify the request in /src/test/kotlin/HelloWorldClient.kt to point at http://localhost:9000/pong instead. Run the client program again and note that a 404 is printed. This happens because we have not bound an HttpHandler to that endpoint.

    To bind an HttpHandler to the pong endpoint, modify /src/main/kotlin/HelloWorld.kt by adding lines 18-20 below:

    client code
    • Lines 19-21 add an HTTP endpoint binding all HTTP GET requests on the path /pong to an HttpHandler function.

    To see this update in action, first rerun the main application by hitting the green arrow now on line 23 in /src/main/kotlin/HelloWorld.kt, and then running the client again using the green arrow on line 11 in /src/test/kotlin/HelloWorldClient.kt. You should see the new “ping” response printed to the console.

    Step 7

    A test for our app is found in /src/test/kotlin/HelloWorldTest.kt. Run it with the green arrow on line 10 and it should pass.

    client code

    Cool things to notice about the test:

    1. As our app is just an HttpHandler function, it runs entirely in-memory. It is therefore super-fast and completely threadsafe.
    2. There is no custom core or other setup required for the test to run.
    3. Request and Response objects are immutable data classes, and can therefore be compared safely in tests.

    Step 8

    Let’s package our app into a runnable Application. From the IDE run the distZip task. This will create an standard application ZIP file with scripts to run the app and deposit it in the build/distributions directory. You’ll find the task in the Gradle tab under: HelloWorld -> Tasks -> Dstribution -> distZip.

    Congratulations!

    You have successfully:

    1. Created an working http4k project using the http4k Toolbox.
    2. Bound a simple HttpHandler function to particular HTTP endpoint.
    3. Seen how the http4k HttpHandler and Filter model provide a simple set of composable building blocks to construct HTTP applications.
    4. Tested the application entirely in-memory with no custom libraries or code.
    5. Packaged your http4k app into a ZIP file.

    To see a similar application, you can check out the complete Hello World app from the http4k Examples repo

    (Ready for more? Let’s move on to deploying your http4k app as a Serverless Lambda to AWS)

    \ No newline at end of file