vrembem 4.0.0-next.29 → 4.0.0-next.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
- (function(S,A){typeof exports=="object"&&typeof module<"u"?A(exports):typeof define=="function"&&define.amd?define(["exports"],A):(S=typeof globalThis<"u"?globalThis:S||self,A(S.vrembem={}))})(this,function(S){"use strict";var Pe=S=>{throw TypeError(S)};var Re=(S,A,O)=>A.has(S)||Pe("Cannot "+O);var w=(S,A,O)=>(Re(S,A,"read from private field"),O?O.call(S):A.get(S)),L=(S,A,O)=>A.has(S)?Pe("Cannot add the same private member more than once"):A instanceof WeakSet?A.add(S):A.set(S,O),C=(S,A,O,yt)=>(Re(S,A,"write to private field"),yt?yt.call(S,O):A.set(S,O),O);var M,ct,q,tt,ft,ut,dt,ht,gt,mt,pt,F,U,wt;function A(t){return t.split("-").map((e,i)=>i===0?e:e.charAt(0).toUpperCase()+e.slice(1)).join("")}function O(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function yt(t){if(typeof t=="number")return t;const e=parseFloat(t);if(!Number.isNaN(e)){const i=t.includes("ms");return e*(i?1:1e3)}throw new Error(`Could not convert value to milliseconds: ${t}`)}function Pt(){return getComputedStyle(document.body).getPropertyValue("--vb-prefix").trim()}function se(t,e){const i={fallback:null,element:document.body,...e};if(t.slice(0,2)!=="--"){const n=Pt();n&&(t=`${n}${t}`),t=`--${t}`}const s=getComputedStyle(i.element).getPropertyValue(t).trim();if(s)return s;if(i.fallback)return i.fallback;throw new Error(`CSS variable "${t}" was not found!`)}function ne(t,e="config"){const s=(t.getAttribute(`data-${e}`)||"").replace(/'/g,'"');return s?JSON.parse(s):{}}function oe(t){const e=getComputedStyle(t.el),i={},s=Object.keys(t.context.settings);for(let n=0;n<s.length;n++){const o=Pt(),r=t.context.module.toLowerCase(),l=O(s[n]),a=e.getPropertyValue(`--${o}${r}-${l}`).trim();a&&(i[l]=a)}return i}function re(t){return typeof t=="string"?document.getElementById(t):t instanceof HTMLElement?t:null}async function k(t,...e){t in this&&typeof this[t]=="function"&&await this[t](...e)}function xt(t,e,i,s,n=0){return new Promise(o=>{t.classList.remove(e),t.classList.add(i),setTimeout(()=>{t.classList.add(s),t.classList.remove(i),o(t)},yt(n))})}function De(t,e){e&&document.querySelectorAll(e).forEach(s=>{t?s.style.overflow="hidden":s.style.removeProperty("overflow")})}function Me(t,e){e&&document.querySelectorAll(e).forEach(s=>{t?(s.inert=!0,s.setAttribute("aria-hidden",!0)):(s.inert=null,s.removeAttribute("aria-hidden"))})}function vt(t,e,i){Me(!!t,e),De(!!t,i)}class le{constructor(e,i){L(this,M);this.value=e,C(this,M,i),this.mql=null}get handler(){return w(this,M)}set handler(e){this.mql&&this.mql.removeEventListener("change",w(this,M)),C(this,M,e)}mount(e,i){return e&&(this.value=e),i&&C(this,M,i),this.value?(this.mql=window.matchMedia(`(min-width: ${this.value})`),this.mql.addEventListener("change",w(this,M)),w(this,M).call(this,this.mql),this):this}unmount(){return this.mql?(this.mql.removeEventListener("change",w(this,M)),this.value=null,C(this,M,null),this.mql=null,this):this}}M=new WeakMap;class Rt{constructor(e={}){this.module=this.constructor.name,this.collection=[],this.settings=Object.assign({dataConfig:"config",teleport:null,teleportMethod:"append"},e)}get(e,i="id"){return this.collection.find(s=>s[i]===e)}applySettings(e){return Object.assign(this.settings,e)}async createEntry(e,i){return new St(this,e,i)}async register(e,i={}){await this.deregister((e==null?void 0:e.id)||e,!0);const s=await this.createEntry(e,i);return await s.mount(),await k.call(this,"beforeRegister",s),await k.call(s,"beforeRegister"),this.collection.push(s),await k.call(s,"afterRegister"),await k.call(this,"afterRegister",s),s}async deregister(e,i=!1){const s=this.collection.findIndex(n=>n.id===e);if(~s){const n=this.collection[s];await n.unmount(i),await k.call(this,"beforeDeregister",n),await k.call(n,"beforeDeregister",i),Object.getOwnPropertyNames(n).forEach(o=>{o!="beforeDeregister"&&o!="afterDeregister"&&delete n[o]}),this.collection.splice(s,1),await k.call(n,"afterDeregister",i),await k.call(this,"afterDeregister",n)}return this.collection}async mount(e={}){this.applySettings(e),await k.call(this,"beforeMount");const i=document.querySelectorAll(this.settings.selector);for(const s of i)await this.register(s);return await k.call(this,"afterMount"),this}async unmount(){for(await k.call(this,"beforeUnmount");this.collection.length>0;)await this.deregister(this.collection[0].id);return await k.call(this,"afterUnmount"),this}}class St{constructor(e,i,s={}){this.context=e,this.id=(i==null?void 0:i.id)||i,this.el=re(i),this.settings=Object.assign({},s),this.dataConfig={},this.customProps={},this.returnRef=null}applySettings(e){return Object.assign(this.settings,e)}getDataConfig(){return Object.assign(this.dataConfig,ne(this.el,this.getSetting("dataConfig")))}getCustomProps(){return Object.assign(this.customProps,oe(this))}getSetting(e){const i=A(e),s=O(e);if("dataConfig"in this&&i in this.dataConfig)return this.dataConfig[i];if("customProps"in this&&s in this.customProps)return this.customProps[s];if("settings"in this&&i in this.settings)return this.settings[i];if("settings"in this.context&&i in this.context.settings)return this.context.settings[i];throw new Error(`${this.context.module} setting does not exist: ${e}`)}async mount(e={}){if(this.el===null)throw new Error(`${this.context.module} element was not found with ID: "${this.id}"`);this.applySettings(e),this.getDataConfig(),this.getCustomProps(),await k.call(this,"beforeMount"),this.getSetting("teleport")&&this.teleport(),await k.call(this,"afterMount")}async unmount(e=!1){await k.call(this,"beforeUnmount",e),this.getSetting("teleport")&&this.teleportReturn(),await k.call(this,"afterUnmount",e)}teleport(e=this.getSetting("teleport"),i=this.getSetting("teleportMethod")){return this.returnRef?(console.error("Element has already been teleported:",this.el),!1):(this.returnRef=Wt(this.el,e,i),this.el)}teleportReturn(){return this.returnRef?(this.returnRef=Wt(this.el,this.returnRef),this.el):(console.error("No return reference found:",this.el),!1)}}class _t{constructor(e=null,i="[data-focus]"){L(this,ct);L(this,q);L(this,tt);this.el=e,this.selectorFocus=i,C(this,q,Ie.bind(this)),C(this,tt,Ne.bind(this))}get focusable(){return w(this,ct)}set focusable(e){C(this,ct,e),w(this,ct).length?(document.removeEventListener("keydown",w(this,tt)),document.addEventListener("keydown",w(this,q))):(document.removeEventListener("keydown",w(this,q)),document.addEventListener("keydown",w(this,tt)))}get focusableFirst(){return this.focusable[0]}get focusableLast(){return this.focusable[this.focusable.length-1]}mount(e,i){e&&(this.el=e),i&&(this.selectorFocus=i),this.focusable=this.getFocusable(),this.focus()}unmount(){this.el=null,this.focusable=[],document.removeEventListener("keydown",w(this,q)),document.removeEventListener("keydown",w(this,tt))}focus(e=this.el,i=this.selectorFocus){(e.querySelector(i)||e).focus()}getFocusable(e=this.el){const i=[],s=document.activeElement,n=e.scrollTop,o=Fe.join(",");return e.querySelectorAll(o).forEach(l=>{l.focus(),document.activeElement===l&&i.push(l)}),e.scrollTop=n,s.focus(),i}}ct=new WeakMap,q=new WeakMap,tt=new WeakMap;const T=":not([inert])",P=':not([tabindex^="-"])',Et=":not(:disabled)",Fe=[`a[href]${T}${P}`,`area[href]${T}${P}`,`input:not([type="hidden"]):not([type="radio"])${T}${P}${Et}`,`input[type="radio"]${T}${P}${Et}`,`select${T}${P}${Et}`,`textarea${T}${P}${Et}`,`button${T}${P}${Et}`,`details${T} > summary:first-of-type${P}`,`iframe${T}${P}`,`audio[controls]${T}${P}`,`video[controls]${T}${P}`,`[contenteditable]${T}${P}`,`[tabindex]${T}${P}`];function Ie(t){(t.key==="Tab"||t.keyCode===9)&&(t.shiftKey?(document.activeElement===this.focusableFirst||document.activeElement===this.el)&&(t.preventDefault(),this.focusableLast.focus()):(document.activeElement===this.focusableLast||document.activeElement===this.el)&&(t.preventDefault(),this.focusableFirst.focus()))}function Ne(t){(t.key==="Tab"||t.keyCode===9)&&t.preventDefault()}function zt(t,e=!0){const i=localStorage.getItem(t),s=i?JSON.parse(i):{};return{get(n){return n?s[n]:s},set(n,o){return o?s[n]=o:delete s[n],e&&localStorage.setItem(t,JSON.stringify(s)),s}}}function Wt(t,e,i){const s=e.nodeType===Node.COMMENT_NODE,n=e.nodeType===Node.ELEMENT_NODE;if(e=s||n?e:document.querySelector(e),s&&(i="after"),!e)throw new Error(`Not a valid teleport reference: '${e}'`);if(typeof e[i]!="function")throw new Error(`Not a valid teleport method: '${i}'`);let o=null;return s||(o=document.createComment("teleported #"+t.id),t.before(o)),e[i](t),s&&e.remove(),o}function Be(t){const e={prefix:se("prefix-themes",{fallback:"vb-theme-"}),themes:["root","light","dark"],storeKey:"VB:Profile"};for(const[o]of Object.entries(e))t&&t[o]&&(e[o]=t[o]);const i={onInit(){},onChange(){}};for(const[o]of Object.entries(i))t&&t[o]&&(i[o]=t[o]);const s=zt(e.storeKey),n={settings:e,add(o){e.themes.push(o)},remove(o){const r=e.themes.indexOf(o);~r&&e.themes.splice(r,1)},callback(o){i[o].call(this)},get class(){return`${e.prefix}${this.theme}`},get classes(){return e.themes.map(o=>`${e.prefix}${o}`)},get themes(){return e.themes},get theme(){return s.get("theme")||"root"},set theme(o){e.themes.includes(o)?this.theme!=o&&(s.set("theme",o),document.documentElement.classList.remove(...this.classes),document.documentElement.classList.add(`${e.prefix}${o}`),this.callback("onChange")):console.error(`Not a valid theme value: "${o}"`)}};return n.callback("onInit"),n}const Ve=Object.freeze(Object.defineProperty({__proto__:null,Breakpoint:le,Collection:Rt,CollectionEntry:St,FocusTrap:_t,cssVar:se,getConfig:ne,getCustomProps:oe,getElement:re,getPrefix:Pt,lifecycleHook:k,localStore:zt,setGlobalState:vt,teleport:Wt,themeStore:Be,toCamel:A,toKebab:O,toMilliseconds:yt,transition:xt},Symbol.toStringTag,{value:"Module"})),He={dataOpen:"drawer-open",dataClose:"drawer-close",dataToggle:"drawer-toggle",dataBreakpoint:"drawer-breakpoint",selector:".drawer",selectorDialog:".drawer__dialog",selectorScreen:".drawer",selectorFocus:"[data-focus]",selectorInert:null,selectorOverflow:"body",stateOpened:"is-opened",stateOpening:"is-opening",stateClosing:"is-closing",stateClosed:"is-closed",classModal:"drawer_modal",breakpoints:null,customEventPrefix:"drawer:",store:!0,storeKey:"VB:DrawerState",setTabindex:!0,teleport:null,teleportMethod:"prepend",transition:!0,transitionDuration:"drawer-transition-duration"};function _e(t){t.store==="opened"?t.open(!1,!1):t.store==="closed"?t.close(!1,!1):t.store==="indeterminate"?t.state="indeterminate":t.el.classList.contains(t.getSetting("stateOpened"))?t.open(!1,!1):t.el.classList.contains(t.getSetting("stateClosed"))?t.close(!1,!1):t.state="indeterminate"}async function ze(t){t.store==="opened"?await t.open(!1,!1):t.store==="closed"?await t.close(!1,!1):t.store==="indeterminate"?t.state!="indeterminate"&&(t.state="indeterminate"):(t.state!=t.inlineState&&(t.state=t.inlineState),t.inlineState==="opened"?await t.open(!1,!1):t.inlineState==="closed"&&await t.close(!1,!1))}function We(t){const e=Pt(),i=t.getAttribute(`data-${this.settings.dataBreakpoint}`);return this.settings.breakpoints&&this.settings.breakpoints[i]?this.settings.breakpoints[i]:getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${i}`).trim()?getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${i}`).trim():i}function nt(t){const e=typeof t=="string"?this.get(t):t;if(e)return e;throw new Error(`Drawer not found in collection with id of "${t.id||t}".`)}function ae(t){t.state==="opened"?t.mode==="modal"?this.focusTrap.mount(t.dialog,this.settings.selectorFocus):this.focusTrap.focus(t.dialog,this.settings.selectorFocus):(t.trigger&&(t.trigger.focus(),t.trigger=null),this.focusTrap.unmount())}function je(t){switch(t.mode){case"inline":return Ue.call(this,t);case"modal":return Ke.call(this,t);default:throw new Error(`"${t.mode}" is not a valid drawer mode.`)}}async function Ue(t){return t.el.classList.remove(t.getSetting("classModal")),t.dialog.removeAttribute("aria-modal"),vt(!1,t.getSetting("selectorInert"),t.getSetting("selectorOverflow")),this.focusTrap.unmount(),await ze(t),t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix")+"switchMode",{detail:this,bubbles:!0})),t}async function Ke(t){return t.el.classList.add(t.getSetting("classModal")),t.dialog.setAttribute("aria-modal","true"),await t.close(!1,!1),t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix")+"switchMode",{detail:this,bubbles:!0})),t}class Xe extends St{constructor(i,s,n={}){super(i,s,n);L(this,ft);L(this,ut);L(this,dt);this.dialog=null,this.trigger=null,C(this,dt,new le),C(this,ft,"indeterminate"),C(this,ut,"indeterminate"),this.inlineState="indeterminate"}get breakpoint(){return We.call(this.context,this.el)}get store(){return this.context.store.get(this.id)}get mode(){return w(this,ft)}set mode(i){C(this,ft,i),je.call(this.context,this)}get state(){return w(this,ut)}set state(i){C(this,ut,i),this.mode==="inline"&&i!="opening"&&i!="closing"&&(this.inlineState=i,this.getSetting("store")&&this.context.store.set(this.id,i)),i==="indeterminate"&&(this.el.classList.remove(this.getSetting("stateOpened")),this.el.classList.remove(this.getSetting("stateOpening")),this.el.classList.remove(this.getSetting("stateClosed")),this.el.classList.remove(this.getSetting("stateClosing")))}async open(i,s){return this.context.open(this,i,s)}async close(i,s){return this.context.close(this,i,s)}async toggle(i,s){return this.context.toggle(this,i,s)}async deregister(){return this.context.deregister(this.id)}mountBreakpoint(){const i=this.breakpoint,s=this.handleBreakpoint.bind(this);w(this,dt).mount(i,s)}unmountBreakpoint(){w(this,dt).unmount()}handleBreakpoint(i){const s=i.matches?"inline":"modal";this.mode!=s&&(this.mode=s)}async beforeMount(){const i=this.el.querySelector(this.getSetting("selectorDialog"));this.dialog=i||this.el,this.getSetting("setTabindex")&&this.dialog.setAttribute("tabindex","-1"),_e(this),this.inlineState=this.state,this.mode=this.el.classList.contains(this.getSetting("classModal"))?"modal":"inline",this.breakpoint&&this.mountBreakpoint()}async beforeUnmount(i=!0){i&&this.state==="opened"&&await this.close(!1),this.context.store.set(this.id),this.unmountBreakpoint()}}ft=new WeakMap,ut=new WeakMap,dt=new WeakMap;async function Ye(t){const e=t.target.closest(`
1
+ (function(S,A){typeof exports=="object"&&typeof module<"u"?A(exports):typeof define=="function"&&define.amd?define(["exports"],A):(S=typeof globalThis<"u"?globalThis:S||self,A(S.vrembem={}))})(this,function(S){"use strict";var Re=S=>{throw TypeError(S)};var De=(S,A,O)=>A.has(S)||Re("Cannot "+O);var w=(S,A,O)=>(De(S,A,"read from private field"),O?O.call(S):A.get(S)),L=(S,A,O)=>A.has(S)?Re("Cannot add the same private member more than once"):A instanceof WeakSet?A.add(S):A.set(S,O),C=(S,A,O,yt)=>(De(S,A,"write to private field"),yt?yt.call(S,O):A.set(S,O),O);var M,ct,q,tt,ft,ut,dt,ht,gt,mt,pt,F,j,wt;function A(t){return t.split("-").map((e,i)=>i===0?e:e.charAt(0).toUpperCase()+e.slice(1)).join("")}function O(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function yt(t){if(typeof t=="number")return t;const e=parseFloat(t);if(!Number.isNaN(e)){const i=t.includes("ms");return e*(i?1:1e3)}throw new Error(`Could not convert value to milliseconds: ${t}`)}function Pt(){return getComputedStyle(document.body).getPropertyValue("--vb-prefix").trim()}function se(t,e){const i={fallback:null,element:document.body,...e};if(t.slice(0,2)!=="--"){const n=Pt();n&&(t=`${n}${t}`),t=`--${t}`}const s=getComputedStyle(i.element).getPropertyValue(t).trim();if(s)return s;if(i.fallback)return i.fallback;throw new Error(`CSS variable "${t}" was not found!`)}function ne(t,e="config"){const s=(t.getAttribute(`data-${e}`)||"").replace(/'/g,'"');return s?JSON.parse(s):{}}function oe(t){const e=getComputedStyle(t.el),i={},s=t.getSetting("customProps");for(let n=0;n<s.length;n++){const o=Pt(),r=t.context.module.toLowerCase(),l=O(s[n]),a=e.getPropertyValue(`--${o}${r}-${l}`).trim();a&&(i[l]=a)}return i}function re(t){return typeof t=="string"?document.getElementById(t):t instanceof HTMLElement?t:null}function Me(t,e,i="camel"){return e=i==="camel"?A(e):O(e),t.split(".").concat(e).reduce((s,n)=>s==null?void 0:s[n],this)}function le(t,e={}){const{fallback:i,props:s=["dataConfig","customProps","settings","context.settings"]}=e;for(const n of s){const o=n!=="customProps"?"camel":"kebab",r=Me.call(this,n,t,o);if(r!==void 0)return r}if(i!==void 0)return i;throw new Error(`${this.context.module} setting does not exist: ${t}`)}async function $(t,...e){t in this&&typeof this[t]=="function"&&await this[t](...e)}function xt(t,e,i,s,n=0){return new Promise(o=>{t.classList.remove(e),t.classList.add(i),setTimeout(()=>{t.classList.add(s),t.classList.remove(i),o(t)},yt(n))})}function Fe(t,e){e&&document.querySelectorAll(e).forEach(s=>{t?s.style.overflow="hidden":s.style.removeProperty("overflow")})}function Ie(t,e){e&&document.querySelectorAll(e).forEach(s=>{t?(s.inert=!0,s.setAttribute("aria-hidden",!0)):(s.inert=null,s.removeAttribute("aria-hidden"))})}function vt(t,e,i){Ie(!!t,e),Fe(!!t,i)}class ae{constructor(e,i){L(this,M);this.value=e,C(this,M,i),this.mql=null}get handler(){return w(this,M)}set handler(e){this.mql&&this.mql.removeEventListener("change",w(this,M)),C(this,M,e)}mount(e,i){return e&&(this.value=e),i&&C(this,M,i),this.value?(this.mql=window.matchMedia(`(min-width: ${this.value})`),this.mql.addEventListener("change",w(this,M)),w(this,M).call(this,this.mql),this):this}unmount(){return this.mql?(this.mql.removeEventListener("change",w(this,M)),this.value=null,C(this,M,null),this.mql=null,this):this}}M=new WeakMap;class Rt{constructor(e={}){this.module=this.constructor.name,this.collection=[],this.settings=Object.assign({dataConfig:"config",customProps:[],teleport:null,teleportMethod:"append"},e)}get(e,i="id"){return this.collection.find(s=>s[i]===e)}applySettings(e){return Object.assign(this.settings,e)}async createEntry(e,i){return new St(this,e,i)}async register(e,i={}){await this.deregister((e==null?void 0:e.id)||e,!0);const s=await this.createEntry(e,i);return await s.mount(),await $.call(this,"beforeRegister",s),await $.call(s,"beforeRegister"),this.collection.push(s),await $.call(s,"afterRegister"),await $.call(this,"afterRegister",s),s}async deregister(e,i=!1){const s=this.collection.findIndex(n=>n.id===e);if(~s){const n=this.collection[s];await n.unmount(i),await $.call(this,"beforeDeregister",n),await $.call(n,"beforeDeregister",i),Object.getOwnPropertyNames(n).forEach(o=>{o!="beforeDeregister"&&o!="afterDeregister"&&delete n[o]}),this.collection.splice(s,1),await $.call(n,"afterDeregister",i),await $.call(this,"afterDeregister",n)}return this.collection}async mount(e={}){this.applySettings(e),await $.call(this,"beforeMount");const i=document.querySelectorAll(this.settings.selector);for(const s of i)await this.register(s);return await $.call(this,"afterMount"),this}async unmount(){for(await $.call(this,"beforeUnmount");this.collection.length>0;)await this.deregister(this.collection[0].id);return await $.call(this,"afterUnmount"),this}}class St{constructor(e,i,s={}){this.context=e,this.id=(i==null?void 0:i.id)||i,this.el=re(i),this.settings=Object.assign({},s),this.dataConfig={},this.customProps={},this.returnRef=null}applySettings(e){return Object.assign(this.settings,e)}getDataConfig(){return Object.assign(this.dataConfig,ne(this.el,this.getSetting("dataConfig")))}getCustomProps(){return Object.assign(this.customProps,oe(this))}getSetting(e,i={}){return le.call(this,e,i)}async mount(e={}){if(this.el===null)throw new Error(`${this.context.module} element was not found with ID: "${this.id}"`);this.applySettings(e),this.getDataConfig(),this.getCustomProps(),await $.call(this,"beforeMount"),this.getSetting("teleport")&&this.teleport(),await $.call(this,"afterMount")}async unmount(e=!1){await $.call(this,"beforeUnmount",e),this.getSetting("teleport")&&this.teleportReturn(),await $.call(this,"afterUnmount",e)}teleport(e=this.getSetting("teleport"),i=this.getSetting("teleportMethod")){return this.returnRef?(console.error("Element has already been teleported:",this.el),!1):(this.returnRef=Wt(this.el,e,i),this.el)}teleportReturn(){return this.returnRef?(this.returnRef=Wt(this.el,this.returnRef),this.el):(console.error("No return reference found:",this.el),!1)}}class _t{constructor(e=null,i="[data-focus]"){L(this,ct);L(this,q);L(this,tt);this.el=e,this.selectorFocus=i,C(this,q,Be.bind(this)),C(this,tt,Ve.bind(this))}get focusable(){return w(this,ct)}set focusable(e){C(this,ct,e),w(this,ct).length?(document.removeEventListener("keydown",w(this,tt)),document.addEventListener("keydown",w(this,q))):(document.removeEventListener("keydown",w(this,q)),document.addEventListener("keydown",w(this,tt)))}get focusableFirst(){return this.focusable[0]}get focusableLast(){return this.focusable[this.focusable.length-1]}mount(e,i){e&&(this.el=e),i&&(this.selectorFocus=i),this.focusable=this.getFocusable(),this.focus()}unmount(){this.el=null,this.focusable=[],document.removeEventListener("keydown",w(this,q)),document.removeEventListener("keydown",w(this,tt))}focus(e=this.el,i=this.selectorFocus){(e.querySelector(i)||e).focus()}getFocusable(e=this.el){const i=[],s=document.activeElement,n=e.scrollTop,o=Ne.join(",");return e.querySelectorAll(o).forEach(l=>{l.focus(),document.activeElement===l&&i.push(l)}),e.scrollTop=n,s.focus(),i}}ct=new WeakMap,q=new WeakMap,tt=new WeakMap;const T=":not([inert])",P=':not([tabindex^="-"])',Et=":not(:disabled)",Ne=[`a[href]${T}${P}`,`area[href]${T}${P}`,`input:not([type="hidden"]):not([type="radio"])${T}${P}${Et}`,`input[type="radio"]${T}${P}${Et}`,`select${T}${P}${Et}`,`textarea${T}${P}${Et}`,`button${T}${P}${Et}`,`details${T} > summary:first-of-type${P}`,`iframe${T}${P}`,`audio[controls]${T}${P}`,`video[controls]${T}${P}`,`[contenteditable]${T}${P}`,`[tabindex]${T}${P}`];function Be(t){(t.key==="Tab"||t.keyCode===9)&&(t.shiftKey?(document.activeElement===this.focusableFirst||document.activeElement===this.el)&&(t.preventDefault(),this.focusableLast.focus()):(document.activeElement===this.focusableLast||document.activeElement===this.el)&&(t.preventDefault(),this.focusableFirst.focus()))}function Ve(t){(t.key==="Tab"||t.keyCode===9)&&t.preventDefault()}function zt(t,e=!0){const i=localStorage.getItem(t),s=i?JSON.parse(i):{};return{get(n){return n?s[n]:s},set(n,o){return o?s[n]=o:delete s[n],e&&localStorage.setItem(t,JSON.stringify(s)),s}}}function Wt(t,e,i){const s=e.nodeType===Node.COMMENT_NODE,n=e.nodeType===Node.ELEMENT_NODE;if(e=s||n?e:document.querySelector(e),s&&(i="after"),!e)throw new Error(`Not a valid teleport reference: '${e}'`);if(typeof e[i]!="function")throw new Error(`Not a valid teleport method: '${i}'`);let o=null;return s||(o=document.createComment("teleported #"+t.id),t.before(o)),e[i](t),s&&e.remove(),o}function He(t){const e={prefix:se("prefix-themes",{fallback:"vb-theme-"}),themes:["root","light","dark"],storeKey:"VB:Profile"};for(const[o]of Object.entries(e))t&&t[o]&&(e[o]=t[o]);const i={onInit(){},onChange(){}};for(const[o]of Object.entries(i))t&&t[o]&&(i[o]=t[o]);const s=zt(e.storeKey),n={settings:e,add(o){e.themes.push(o)},remove(o){const r=e.themes.indexOf(o);~r&&e.themes.splice(r,1)},callback(o){i[o].call(this)},get class(){return`${e.prefix}${this.theme}`},get classes(){return e.themes.map(o=>`${e.prefix}${o}`)},get themes(){return e.themes},get theme(){return s.get("theme")||"root"},set theme(o){e.themes.includes(o)?this.theme!=o&&(s.set("theme",o),document.documentElement.classList.remove(...this.classes),document.documentElement.classList.add(`${e.prefix}${o}`),this.callback("onChange")):console.error(`Not a valid theme value: "${o}"`)}};return n.callback("onInit"),n}const _e=Object.freeze(Object.defineProperty({__proto__:null,Breakpoint:ae,Collection:Rt,CollectionEntry:St,FocusTrap:_t,cssVar:se,getConfig:ne,getCustomProps:oe,getElement:re,getPrefix:Pt,getSetting:le,lifecycleHook:$,localStore:zt,setGlobalState:vt,teleport:Wt,themeStore:He,toCamel:A,toKebab:O,toMilliseconds:yt,transition:xt},Symbol.toStringTag,{value:"Module"})),ze={dataOpen:"drawer-open",dataClose:"drawer-close",dataToggle:"drawer-toggle",dataBreakpoint:"drawer-breakpoint",selector:".drawer",selectorDialog:".drawer__dialog",selectorScreen:".drawer",selectorFocus:"[data-focus]",selectorInert:null,selectorOverflow:"body",stateOpened:"is-opened",stateOpening:"is-opening",stateClosing:"is-closing",stateClosed:"is-closed",classModal:"drawer_modal",customProps:["transition-duration"],breakpoints:null,customEventPrefix:"drawer:",store:!0,storeKey:"VB:DrawerState",setTabindex:!0,teleport:null,teleportMethod:"prepend",transition:!0,transitionDuration:300};function We(t){t.store==="opened"?t.open(!1,!1):t.store==="closed"?t.close(!1,!1):t.store==="indeterminate"?t.state="indeterminate":t.el.classList.contains(t.getSetting("stateOpened"))?t.open(!1,!1):t.el.classList.contains(t.getSetting("stateClosed"))?t.close(!1,!1):t.state="indeterminate"}async function Ue(t){t.store==="opened"?await t.open(!1,!1):t.store==="closed"?await t.close(!1,!1):t.store==="indeterminate"?t.state!="indeterminate"&&(t.state="indeterminate"):(t.state!=t.inlineState&&(t.state=t.inlineState),t.inlineState==="opened"?await t.open(!1,!1):t.inlineState==="closed"&&await t.close(!1,!1))}function je(t){const e=Pt(),i=t.getAttribute(`data-${this.settings.dataBreakpoint}`);return this.settings.breakpoints&&this.settings.breakpoints[i]?this.settings.breakpoints[i]:getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${i}`).trim()?getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${i}`).trim():i}function nt(t){const e=typeof t=="string"?this.get(t):t;if(e)return e;throw new Error(`Drawer not found in collection with id of "${t.id||t}".`)}function ce(t){t.state==="opened"?t.mode==="modal"?this.focusTrap.mount(t.dialog,this.settings.selectorFocus):this.focusTrap.focus(t.dialog,this.settings.selectorFocus):(t.trigger&&(t.trigger.focus(),t.trigger=null),this.focusTrap.unmount())}function Ke(t){switch(t.mode){case"inline":return Xe.call(this,t);case"modal":return Ye.call(this,t);default:throw new Error(`"${t.mode}" is not a valid drawer mode.`)}}async function Xe(t){return t.el.classList.remove(t.getSetting("classModal")),t.dialog.removeAttribute("aria-modal"),vt(!1,t.getSetting("selectorInert"),t.getSetting("selectorOverflow")),this.focusTrap.unmount(),await Ue(t),t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix")+"switchMode",{detail:this,bubbles:!0})),t}async function Ye(t){return t.el.classList.add(t.getSetting("classModal")),t.dialog.setAttribute("aria-modal","true"),await t.close(!1,!1),t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix")+"switchMode",{detail:this,bubbles:!0})),t}class Ge extends St{constructor(i,s,n={}){super(i,s,n);L(this,ft);L(this,ut);L(this,dt);this.dialog=null,this.trigger=null,C(this,dt,new ae),C(this,ft,"indeterminate"),C(this,ut,"indeterminate"),this.inlineState="indeterminate"}get breakpoint(){return je.call(this.context,this.el)}get store(){return this.context.store.get(this.id)}get mode(){return w(this,ft)}set mode(i){C(this,ft,i),Ke.call(this.context,this)}get state(){return w(this,ut)}set state(i){C(this,ut,i),this.mode==="inline"&&i!="opening"&&i!="closing"&&(this.inlineState=i,this.getSetting("store")&&this.context.store.set(this.id,i)),i==="indeterminate"&&(this.el.classList.remove(this.getSetting("stateOpened")),this.el.classList.remove(this.getSetting("stateOpening")),this.el.classList.remove(this.getSetting("stateClosed")),this.el.classList.remove(this.getSetting("stateClosing")))}async open(i,s){return this.context.open(this,i,s)}async close(i,s){return this.context.close(this,i,s)}async toggle(i,s){return this.context.toggle(this,i,s)}async deregister(){return this.context.deregister(this.id)}mountBreakpoint(){const i=this.breakpoint,s=this.handleBreakpoint.bind(this);w(this,dt).mount(i,s)}unmountBreakpoint(){w(this,dt).unmount()}handleBreakpoint(i){const s=i.matches?"inline":"modal";this.mode!=s&&(this.mode=s)}async beforeMount(){const i=this.el.querySelector(this.getSetting("selectorDialog"));this.dialog=i||this.el,this.getSetting("setTabindex")&&this.dialog.setAttribute("tabindex","-1"),We(this),this.inlineState=this.state,this.mode=this.el.classList.contains(this.getSetting("classModal"))?"modal":"inline",this.breakpoint&&this.mountBreakpoint()}async beforeUnmount(i=!0){i&&this.state==="opened"&&await this.close(!1),this.context.store.set(this.id),this.unmountBreakpoint()}}ft=new WeakMap,ut=new WeakMap,dt=new WeakMap;async function Je(t){const e=t.target.closest(`
2
2
  [data-${this.settings.dataOpen}],
3
3
  [data-${this.settings.dataToggle}],
4
4
  [data-${this.settings.dataClose}]
5
- `);if(e){t.preventDefault(),e.matches(`[data-${this.settings.dataToggle}]`)&&e.getAttribute(`data-${this.settings.dataToggle}`).trim().split(" ").forEach(s=>{const n=nt.call(this,s);return n.trigger=e,n.toggle()}),e.matches(`[data-${this.settings.dataOpen}]`)&&e.getAttribute(`data-${this.settings.dataOpen}`).trim().split(" ").forEach(s=>{const n=nt.call(this,s);return n.trigger=e,n.open()}),e.matches(`[data-${this.settings.dataClose}]`)&&e.getAttribute(`data-${this.settings.dataClose}`).trim().split(" ").forEach(s=>{if(s){const n=nt.call(this,s);return n.trigger=e,n.close()}else{const n=t.target.closest(this.settings.selector);if(n)return this.close(n.id)}});return}if(this.activeModal&&t.target.matches(this.settings.selectorScreen))return this.close(this.activeModal.id)}function Ge(t){if(t.key==="Escape"&&this.activeModal)return this.close(this.activeModal.id)}async function ce(t,e,i=!0){const s=nt.call(this,t);return(s.state==="closed"||s.state==="indeterminate")&&(s.state="opening",e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateClosed"),s.getSetting("stateOpening"),s.getSetting("stateOpened"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateOpened")),s.el.classList.remove(s.getSetting("stateClosed"))),s.state="opened",s.mode==="modal"&&vt(!0,s.getSetting("selectorInert"),s.getSetting("selectorOverflow")),i&&ae.call(this,s),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"opened",{detail:this,bubbles:!0}))),s}async function fe(t,e,i=!0){const s=nt.call(this,t);return(s.state==="opened"||s.state==="indeterminate")&&(s.state="closing",document.activeElement.blur(),e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateOpened"),s.getSetting("stateClosing"),s.getSetting("stateClosed"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateClosed")),s.el.classList.remove(s.getSetting("stateOpened"))),s.state="closed",s.mode==="modal"&&vt(!1,s.getSetting("selectorInert"),s.getSetting("selectorOverflow")),i&&ae.call(this,s),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"closed",{detail:this,bubbles:!0}))),s}async function Je(t,e,i){const s=nt.call(this,t);return s.state==="closed"?ce.call(this,s,e,i):fe.call(this,s,e,i)}class Ze extends Rt{constructor(i){super({...He,...i});L(this,ht);L(this,gt);this.focusTrap=new _t,C(this,ht,Ye.bind(this)),C(this,gt,Ge.bind(this)),this.store=zt(this.settings.storeKey,this.settings.store)}get activeModal(){return this.collection.find(i=>i.state==="opened"&&i.mode==="modal")}async createEntry(i,s){return new Xe(this,i,s)}async open(i,s,n){return ce.call(this,i,s,n)}async close(i,s,n){return fe.call(this,i,s,n)}async toggle(i,s,n){return Je.call(this,i,s,n)}async afterMount(){document.addEventListener("click",w(this,ht),!1),document.addEventListener("keydown",w(this,gt),!1)}async beforeUnmount(){this.trigger=null}async afterUnmount(){document.removeEventListener("click",w(this,ht),!1),document.removeEventListener("keydown",w(this,gt),!1)}}ht=new WeakMap,gt=new WeakMap;const Qe={dataOpen:"modal-open",dataClose:"modal-close",dataReplace:"modal-replace",selector:".modal",selectorDialog:".modal__dialog",selectorScreen:".modal",selectorRequired:'[role="alertdialog"]',selectorFocus:"[data-focus]",selectorInert:null,selectorOverflow:"body",stateOpened:"is-opened",stateOpening:"is-opening",stateClosing:"is-closing",stateClosed:"is-closed",customEventPrefix:"modal:",setTabindex:!0,teleport:null,teleportMethod:"append",transition:!0,transitionDuration:"modal-transition-duration"};class qe extends St{constructor(e,i,s={}){super(e,i,s),this.state="closed",this.dialog=null}get isRequired(){return this.dialog.matches(this.getSetting("selectorRequired"))}async open(e,i){return this.context.open(this,e,i)}async close(e,i){return this.context.close(this,e,i)}async replace(e,i){return this.context.replace(this,e,i)}async deregister(){return this.context.deregister(this.id)}async beforeMount(){const e=this.el.querySelector(this.getSetting("selectorDialog"));this.dialog=e||this.el,this.dialog.setAttribute("aria-modal","true"),this.dialog.hasAttribute("role")||this.dialog.setAttribute("role","dialog"),this.getSetting("setTabindex")&&this.dialog.setAttribute("tabindex","-1")}async afterRegister(){this.el.classList.contains(this.getSetting("stateOpened"))?await this.open(!1):(this.el.classList.remove(this.getSetting("stateOpening")),this.el.classList.remove(this.getSetting("stateClosing")),this.el.classList.add(this.getSetting("stateClosed")))}async beforeUnmount(e=!1){!e&&this.state==="opened"?await this.close(!1):this.context.stack.remove(this)}}function Ct(t){const e=typeof t=="string"?this.get(t):this.get(t.id);if(e)return e;throw new Error(`Modal not found in collection with id of "${t.id||t}".`)}function Dt(){this.active?this.focusTrap.mount(this.active.dialog,this.settings.selectorFocus):(this.trigger&&(this.trigger.focus(),this.trigger=null),this.focusTrap.unmount())}async function ti(t){const e=t.target.closest(`
5
+ `);if(e){t.preventDefault(),e.matches(`[data-${this.settings.dataToggle}]`)&&e.getAttribute(`data-${this.settings.dataToggle}`).trim().split(" ").forEach(s=>{const n=nt.call(this,s);return n.trigger=e,n.toggle()}),e.matches(`[data-${this.settings.dataOpen}]`)&&e.getAttribute(`data-${this.settings.dataOpen}`).trim().split(" ").forEach(s=>{const n=nt.call(this,s);return n.trigger=e,n.open()}),e.matches(`[data-${this.settings.dataClose}]`)&&e.getAttribute(`data-${this.settings.dataClose}`).trim().split(" ").forEach(s=>{if(s){const n=nt.call(this,s);return n.trigger=e,n.close()}else{const n=t.target.closest(this.settings.selector);if(n)return this.close(n.id)}});return}if(this.activeModal&&t.target.matches(this.settings.selectorScreen))return this.close(this.activeModal.id)}function Ze(t){if(t.key==="Escape"&&this.activeModal)return this.close(this.activeModal.id)}async function fe(t,e,i=!0){const s=nt.call(this,t);return(s.state==="closed"||s.state==="indeterminate")&&(s.state="opening",e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateClosed"),s.getSetting("stateOpening"),s.getSetting("stateOpened"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateOpened")),s.el.classList.remove(s.getSetting("stateClosed"))),s.state="opened",s.mode==="modal"&&vt(!0,s.getSetting("selectorInert"),s.getSetting("selectorOverflow")),i&&ce.call(this,s),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"opened",{detail:this,bubbles:!0}))),s}async function ue(t,e,i=!0){const s=nt.call(this,t);return(s.state==="opened"||s.state==="indeterminate")&&(s.state="closing",document.activeElement.blur(),e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateOpened"),s.getSetting("stateClosing"),s.getSetting("stateClosed"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateClosed")),s.el.classList.remove(s.getSetting("stateOpened"))),s.state="closed",s.mode==="modal"&&vt(!1,s.getSetting("selectorInert"),s.getSetting("selectorOverflow")),i&&ce.call(this,s),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"closed",{detail:this,bubbles:!0}))),s}async function Qe(t,e,i){const s=nt.call(this,t);return s.state==="closed"?fe.call(this,s,e,i):ue.call(this,s,e,i)}class qe extends Rt{constructor(i){super({...ze,...i});L(this,ht);L(this,gt);this.focusTrap=new _t,C(this,ht,Je.bind(this)),C(this,gt,Ze.bind(this)),this.store=zt(this.settings.storeKey,this.settings.store)}get activeModal(){return this.collection.find(i=>i.state==="opened"&&i.mode==="modal")}async createEntry(i,s){return new Ge(this,i,s)}async open(i,s,n){return fe.call(this,i,s,n)}async close(i,s,n){return ue.call(this,i,s,n)}async toggle(i,s,n){return Qe.call(this,i,s,n)}async afterMount(){document.addEventListener("click",w(this,ht),!1),document.addEventListener("keydown",w(this,gt),!1)}async beforeUnmount(){this.trigger=null}async afterUnmount(){document.removeEventListener("click",w(this,ht),!1),document.removeEventListener("keydown",w(this,gt),!1)}}ht=new WeakMap,gt=new WeakMap;const ti={dataOpen:"modal-open",dataClose:"modal-close",dataReplace:"modal-replace",selector:".modal",selectorDialog:".modal__dialog",selectorScreen:".modal",selectorRequired:'[role="alertdialog"]',selectorFocus:"[data-focus]",selectorInert:null,selectorOverflow:"body",stateOpened:"is-opened",stateOpening:"is-opening",stateClosing:"is-closing",stateClosed:"is-closed",customProps:["transition-duration"],customEventPrefix:"modal:",setTabindex:!0,teleport:null,teleportMethod:"append",transition:!0,transitionDuration:300};class ei extends St{constructor(e,i,s={}){super(e,i,s),this.state="closed",this.dialog=null}get isRequired(){return this.dialog.matches(this.getSetting("selectorRequired"))}async open(e,i){return this.context.open(this,e,i)}async close(e,i){return this.context.close(this,e,i)}async replace(e,i){return this.context.replace(this,e,i)}async deregister(){return this.context.deregister(this.id)}async beforeMount(){const e=this.el.querySelector(this.getSetting("selectorDialog"));this.dialog=e||this.el,this.dialog.setAttribute("aria-modal","true"),this.dialog.hasAttribute("role")||this.dialog.setAttribute("role","dialog"),this.getSetting("setTabindex")&&this.dialog.setAttribute("tabindex","-1")}async afterRegister(){this.el.classList.contains(this.getSetting("stateOpened"))?await this.open(!1):(this.el.classList.remove(this.getSetting("stateOpening")),this.el.classList.remove(this.getSetting("stateClosing")),this.el.classList.add(this.getSetting("stateClosed")))}async beforeUnmount(e=!1){!e&&this.state==="opened"?await this.close(!1):this.context.stack.remove(this)}}function Ct(t){const e=typeof t=="string"?this.get(t):this.get(t.id);if(e)return e;throw new Error(`Modal not found in collection with id of "${t.id||t}".`)}function Dt(){this.active?this.focusTrap.mount(this.active.dialog,this.settings.selectorFocus):(this.trigger&&(this.trigger.focus(),this.trigger=null),this.focusTrap.unmount())}async function ii(t){const e=t.target.closest(`
6
6
  [data-${this.settings.dataOpen}],
7
7
  [data-${this.settings.dataReplace}],
8
8
  [data-${this.settings.dataClose}]
9
- `);if(e){if(t.preventDefault(),e.matches(`[data-${this.settings.dataOpen}]`)){const i=e.getAttribute(`data-${this.settings.dataOpen}`).trim(),s=Ct.call(this,i);return t.target.closest(this.settings.selector)||(this.trigger=e),s.open()}if(e.matches(`[data-${this.settings.dataReplace}]`)){const i=e.getAttribute(`data-${this.settings.dataReplace}`).trim(),s=Ct.call(this,i);return t.target.closest(this.settings.selector)||(this.trigger=e),s.replace()}if(e.matches(`[data-${this.settings.dataClose}]`)){const i=e.getAttribute(`data-${this.settings.dataClose}`).trim();return i==="*"?this.closeAll():this.close(i)}}if(this.active&&t.target.matches(this.settings.selectorScreen)&&!this.active.isRequired)return this.close(this.active.id)}function ei(t){if(t.key==="Escape"&&this.active&&!this.active.dialog.matches(this.settings.selectorRequired))return this.close()}async function ue(t,e=void 0,i=!0){const s=Ct.call(this,t);return this.stack.moveToTop(s),s.state==="closed"&&(s.state="opening",this.stack.add(s),e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateClosed"),s.getSetting("stateOpening"),s.getSetting("stateOpened"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateOpened")),s.el.classList.remove(s.getSetting("stateClosed"))),s.state="opened"),i&&Dt.call(this),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"opened",{detail:this,bubbles:!0})),s}async function de(t,e,i=!0){const s=t?Ct.call(this,t):this.active;return s&&s.state==="opened"&&(s.state="closing",document.activeElement.blur(),e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateOpened"),s.getSetting("stateClosing"),s.getSetting("stateClosed"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateClosed")),s.el.classList.remove(s.getSetting("stateOpened"))),this.stack.remove(s),s.state="closed",i&&Dt.call(this),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"closed",{detail:this,bubbles:!0}))),s}async function jt(t,e){const i=[];return await Promise.all(this.stack.value.map(async s=>{t&&t===s.id?Promise.resolve():i.push(await de.call(this,s,e,!1)),s.trigger=null})),i}async function ii(t,e,i=!0){const s=Ct.call(this,t);let n,o;return s.state==="opened"?(n=s,o=await jt.call(this,s.id,e)):(o=jt.call(this,!1,e),n=ue.call(this,s,e,!1),await Promise.all([n,o])),i&&Dt.call(this),{opened:n,closed:o}}function si(t){const e=[];return{get value(){return[...e]},get top(){const i=e[e.length-1];return i||null},updateIndex(){e.forEach((i,s)=>{i.el.style.zIndex=null;const n=getComputedStyle(i.el)["z-index"];i.el.style.zIndex=parseInt(n)+s+1})},setGlobalState(){vt(this.top,t.selectorInert,t.selectorOverflow),this.updateIndex()},add(i){i.el.style.zIndex=null;const s=getComputedStyle(i.el)["z-index"];i.el.style.zIndex=parseInt(s)+e.length+1,e.push(i),this.setGlobalState()},remove(i){const s=e.findIndex(n=>n.id===i.id);s>=0&&(i.el.style.zIndex=null,e.splice(s,1),this.setGlobalState())},moveToTop(i){const s=e.findIndex(n=>n.id===i.id);s>=0&&(e.splice(s,1),this.add(i))}}}class ni extends Rt{constructor(i){super({...Qe,...i});L(this,mt);L(this,pt);this.trigger=null,this.focusTrap=new _t,C(this,mt,ti.bind(this)),C(this,pt,ei.bind(this)),this.stack=si(this.settings)}get active(){return this.stack.top}async createEntry(i,s){return new qe(this,i,s)}async open(i,s,n){return ue.call(this,i,s,n)}async close(i,s,n){return de.call(this,i,s,n)}async replace(i,s,n){return ii.call(this,i,s,n)}async closeAll(i=!1,s,n=!0){const o=await jt.call(this,i,s);return n&&Dt.call(this),o}async afterMount(){document.addEventListener("click",w(this,mt),!1),document.addEventListener("keydown",w(this,pt),!1)}async beforeUnmount(){this.trigger=null}async afterUnmount(){document.removeEventListener("click",w(this,mt),!1),document.removeEventListener("keydown",w(this,pt),!1)}}mt=new WeakMap,pt=new WeakMap;const oi={selector:".popover",selectorTooltip:".popover_tooltip",selectorArrow:".popover__arrow",stateActive:"is-active",placement:"bottom",event:"click",offset:0,flipPadding:0,shiftPadding:0,arrowPadding:0,toggleDelay:0,teleport:null,teleportMethod:"append"};function he(t,e,i){Object.assign(t.style,{left:e!=null?`${e}px`:"",top:i!=null?`${i}px`:""})}function ge(t,e){let i=t.getSetting("toggle-delay");typeof i=="string"&&(i.indexOf(",")>-1&&(i=i.split(",")),i.indexOf(" ")>-1&&(i=i.split(" "))),Array.isArray(i)&&(i=i[e]);const s=Number(i);if(Number.isNaN(s))throw new Error(`Provided delay value is not a number: "${i}"`);return s}function Ut(t){let e;const i=typeof t=="string"?t.trim().split(" "):[t];for(let s=0;s<i.length;s++)i[s]=Number(i[s]);switch(i.length){case 1:e=i[0];break;case 2:e={top:i[0],right:i[1],bottom:i[0],left:i[1]};break;case 3:e={top:i[0],right:i[1],bottom:i[2],left:i[1]};break;case 4:e={top:i[0],right:i[1],bottom:i[2],left:i[3]};break;default:e=!1;break}return e}function ri(t){return{offset:Number(t.getSetting("offset")),flip:{padding:Ut(t.getSetting("flip-padding"))},shift:{padding:Ut(t.getSetting("shift-padding"))},arrow:{element:t.getSetting("selectorArrow"),padding:Ut(t.getSetting("arrow-padding"))}}}function me(t){const e=typeof t=="string"?this.get(t):this.get(t.id);if(e)return e;throw new Error(`Popover not found in collection with id of "${t}".`)}async function pe(t){const e=t?me.call(this,t):await we.call(this);return e&&e.state==="opened"&&(e.el.inert=!0,e.el.classList.remove(this.settings.stateActive),e.isTooltip||e.trigger.setAttribute("aria-expanded","false"),e.floatingCleanup(),e.state="closed",e.trigger===this.trigger&&(this.trigger=null)),e}async function we(){const t=[];return await Promise.all(this.collection.map(async e=>{e.state==="opened"&&t.push(await pe.call(this,e))})),t}function be(t){t.state=="opened"&&setTimeout(()=>{const e=t.el.matches(":hover")===t.el||t.trigger.matches(":hover")===t.trigger;let i=document.activeElement.closest(`#${t.id}, [aria-controls="${t.id}"], [aria-describedby="${t.id}"]`);return i=i?i.matches(":focus-visible"):!1,!e&&!i&&t.close(),t},1)}function li(t){t.state==="opened"?t.close():(this.trigger=t.trigger,t.open())}function ai(t){t.isTooltip&&(t.toggleDelayId&&clearTimeout(t.toggleDelayId),t.close())}function ci(t,e){if(t.isHovered=e,e.type=="focus"&&!t.trigger.matches(":focus-visible"))return;t.toggleDelayId&&clearTimeout(t.toggleDelayId);const i=t.trigger.getAttribute("aria-expanded");if(i&&i=="true")return;const s=this.activeHover?0:ge(t,0);this.activeHover&&this.activeHover.close(),t.toggleDelayId=setTimeout(()=>{t.id&&t.open()},s)}function fi(t,e){setTimeout(()=>{t.isHovered=e,!t.isHovered&&(t.toggleDelayId&&clearTimeout(t.toggleDelayId),t.toggleDelayId=setTimeout(()=>{be.call(this,t)},ge(t,1)))},1)}function ui(t){switch(t.key){case"Escape":this.trigger&&this.trigger.focus(),we.call(this);return;case"Tab":this.collection.forEach(e=>{be.call(this,e)});return;default:return}}function di(t){const e=this;document.addEventListener("click",function i(s){s.target.closest(`#${t.id}, [aria-controls="${t.id}"], [aria-describedby="${t.id}"]`)?t.el&&!t.el.classList.contains(e.settings.stateActive)&&this.removeEventListener("click",i):(t.el&&t.el.classList.contains(e.settings.stateActive)&&t.close(),this.removeEventListener("click",i))})}class hi extends St{constructor(i,s,n={}){super(i,s,n);L(this,F);L(this,U);this.state="closed",this.toggleDelayId=null,this.trigger=null,C(this,F,null),C(this,U,{el:!1,trigger:!1}),this.floatingCleanup=()=>{}}get isTooltip(){return!!this.el.closest(this.getSetting("selectorTooltip"))||this.el.getAttribute("role")=="tooltip"}get isHovered(){return w(this,U).el||w(this,U).trigger}set isHovered(i){const s=i.type=="mouseenter"?!0:i.type=="mouseleave"?!1:void 0;if(s!=null)switch(i.target){case this.el:w(this,U).el=s;break;case this.trigger:w(this,U).trigger=s;break}}async open(){return this.context.open(this)}async close(){return this.context.close(this)}async deregister(){return this.context.deregister(this.id)}registerEventListeners(){w(this,F)||(this.getSetting("event")==="hover"?(C(this,F,[{el:["el","trigger"],type:["mouseenter","focus"],listener:ci.bind(this.context,this)},{el:["el","trigger"],type:["mouseleave","focusout"],listener:fi.bind(this.context,this)},{el:["trigger"],type:["click"],listener:ai.bind(this.context,this)}]),w(this,F).forEach(s=>{s.el.forEach(n=>{s.type.forEach(o=>{this[n].addEventListener(o,s.listener,!1)})})})):(C(this,F,[{el:["trigger"],type:["click"],listener:li.bind(this.context,this)}]),w(this,F).forEach(s=>{s.el.forEach(n=>{s.type.forEach(o=>{this[n].addEventListener(o,s.listener,!1)})})})))}deregisterEventListeners(){w(this,F)&&(w(this,F).forEach(i=>{i.el.forEach(s=>{i.type.forEach(n=>{this[s].removeEventListener(n,i.listener,!1)})})}),C(this,F,null))}async beforeMount(){this.trigger=document.querySelector(`[aria-controls="${this.id}"], [aria-describedby="${this.id}"]`),this.isTooltip?(this.settings.event="hover",this.el.setAttribute("role","tooltip")):this.trigger.setAttribute("aria-expanded","false"),this.registerEventListeners()}async afterRegister(){this.el.classList.contains(this.getSetting("stateActive"))?await this.open():this.el.inert=!0}async beforeUnmount(){this.state==="opened"&&await this.close(),this.floatingCleanup(),this.deregisterEventListeners()}}F=new WeakMap,U=new WeakMap;const ot=Math.min,G=Math.max,Mt=Math.round,Ft=Math.floor,z=t=>({x:t,y:t}),gi={left:"right",right:"left",bottom:"top",top:"bottom"},mi={start:"end",end:"start"};function Kt(t,e,i){return G(t,ot(e,i))}function J(t,e){return typeof t=="function"?t(e):t}function W(t){return t.split("-")[0]}function At(t){return t.split("-")[1]}function Xt(t){return t==="x"?"y":"x"}function Yt(t){return t==="y"?"height":"width"}function Z(t){return["top","bottom"].includes(W(t))?"y":"x"}function Gt(t){return Xt(Z(t))}function pi(t,e,i){i===void 0&&(i=!1);const s=At(t),n=Gt(t),o=Yt(n);let r=n==="x"?s===(i?"end":"start")?"right":"left":s==="start"?"bottom":"top";return e.reference[o]>e.floating[o]&&(r=It(r)),[r,It(r)]}function wi(t){const e=It(t);return[Jt(t),e,Jt(e)]}function Jt(t){return t.replace(/start|end/g,e=>mi[e])}function bi(t,e,i){const s=["left","right"],n=["right","left"],o=["top","bottom"],r=["bottom","top"];switch(t){case"top":case"bottom":return i?e?n:s:e?s:n;case"left":case"right":return e?o:r;default:return[]}}function yi(t,e,i,s){const n=At(t);let o=bi(W(t),i==="start",s);return n&&(o=o.map(r=>r+"-"+n),e&&(o=o.concat(o.map(Jt)))),o}function It(t){return t.replace(/left|right|bottom|top/g,e=>gi[e])}function xi(t){return{top:0,right:0,bottom:0,left:0,...t}}function ye(t){return typeof t!="number"?xi(t):{top:t,right:t,bottom:t,left:t}}function Nt(t){const{x:e,y:i,width:s,height:n}=t;return{width:s,height:n,top:i,left:e,right:e+s,bottom:i+n,x:e,y:i}}function xe(t,e,i){let{reference:s,floating:n}=t;const o=Z(e),r=Gt(e),l=Yt(r),a=W(e),c=o==="y",d=s.x+s.width/2-n.width/2,u=s.y+s.height/2-n.height/2,h=s[l]/2-n[l]/2;let f;switch(a){case"top":f={x:d,y:s.y-n.height};break;case"bottom":f={x:d,y:s.y+s.height};break;case"right":f={x:s.x+s.width,y:u};break;case"left":f={x:s.x-n.width,y:u};break;default:f={x:s.x,y:s.y}}switch(At(e)){case"start":f[r]-=h*(i&&c?-1:1);break;case"end":f[r]+=h*(i&&c?-1:1);break}return f}const vi=async(t,e,i)=>{const{placement:s="bottom",strategy:n="absolute",middleware:o=[],platform:r}=i,l=o.filter(Boolean),a=await(r.isRTL==null?void 0:r.isRTL(e));let c=await r.getElementRects({reference:t,floating:e,strategy:n}),{x:d,y:u}=xe(c,s,a),h=s,f={},g=0;for(let m=0;m<l.length;m++){const{name:b,fn:p}=l[m],{x:y,y:x,data:E,reset:v}=await p({x:d,y:u,initialPlacement:s,placement:h,strategy:n,middlewareData:f,rects:c,platform:r,elements:{reference:t,floating:e}});d=y??d,u=x??u,f={...f,[b]:{...f[b],...E}},v&&g<=50&&(g++,typeof v=="object"&&(v.placement&&(h=v.placement),v.rects&&(c=v.rects===!0?await r.getElementRects({reference:t,floating:e,strategy:n}):v.rects),{x:d,y:u}=xe(c,h,a)),m=-1)}return{x:d,y:u,placement:h,strategy:n,middlewareData:f}};async function ve(t,e){var i;e===void 0&&(e={});const{x:s,y:n,platform:o,rects:r,elements:l,strategy:a}=t,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:u="floating",altBoundary:h=!1,padding:f=0}=J(e,t),g=ye(f),b=l[h?u==="floating"?"reference":"floating":u],p=Nt(await o.getClippingRect({element:(i=await(o.isElement==null?void 0:o.isElement(b)))==null||i?b:b.contextElement||await(o.getDocumentElement==null?void 0:o.getDocumentElement(l.floating)),boundary:c,rootBoundary:d,strategy:a})),y=u==="floating"?{x:s,y:n,width:r.floating.width,height:r.floating.height}:r.reference,x=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l.floating)),E=await(o.isElement==null?void 0:o.isElement(x))?await(o.getScale==null?void 0:o.getScale(x))||{x:1,y:1}:{x:1,y:1},v=Nt(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:x,strategy:a}):y);return{top:(p.top-v.top+g.top)/E.y,bottom:(v.bottom-p.bottom+g.bottom)/E.y,left:(p.left-v.left+g.left)/E.x,right:(v.right-p.right+g.right)/E.x}}const Si=t=>({name:"arrow",options:t,async fn(e){const{x:i,y:s,placement:n,rects:o,platform:r,elements:l,middlewareData:a}=e,{element:c,padding:d=0}=J(t,e)||{};if(c==null)return{};const u=ye(d),h={x:i,y:s},f=Gt(n),g=Yt(f),m=await r.getDimensions(c),b=f==="y",p=b?"top":"left",y=b?"bottom":"right",x=b?"clientHeight":"clientWidth",E=o.reference[g]+o.reference[f]-h[f]-o.floating[g],v=h[f]-o.reference[f],D=await(r.getOffsetParent==null?void 0:r.getOffsetParent(c));let et=D?D[x]:0;(!et||!await(r.isElement==null?void 0:r.isElement(D)))&&(et=l.floating[x]||o.floating[g]);const Lt=E/2-v/2,it=et/2-m[g]/2-1,K=ot(u[p],it),Ot=ot(u[y],it),st=K,Tt=et-m[g]-Ot,$=et/2-m[g]/2+Lt,bt=Kt(st,$,Tt),_=!a.arrow&&At(n)!=null&&$!==bt&&o.reference[g]/2-($<st?K:Ot)-m[g]/2<0,H=_?$<st?$-st:$-Tt:0;return{[f]:h[f]+H,data:{[f]:bt,centerOffset:$-bt-H,..._&&{alignmentOffset:H}},reset:_}}}),Ei=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var i,s;const{placement:n,middlewareData:o,rects:r,initialPlacement:l,platform:a,elements:c}=e,{mainAxis:d=!0,crossAxis:u=!0,fallbackPlacements:h,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:m=!0,...b}=J(t,e);if((i=o.arrow)!=null&&i.alignmentOffset)return{};const p=W(n),y=Z(l),x=W(l)===l,E=await(a.isRTL==null?void 0:a.isRTL(c.floating)),v=h||(x||!m?[It(l)]:wi(l)),D=g!=="none";!h&&D&&v.push(...yi(l,m,g,E));const et=[l,...v],Lt=await ve(e,b),it=[];let K=((s=o.flip)==null?void 0:s.overflows)||[];if(d&&it.push(Lt[p]),u){const $=pi(n,r,E);it.push(Lt[$[0]],Lt[$[1]])}if(K=[...K,{placement:n,overflows:it}],!it.every($=>$<=0)){var Ot,st;const $=(((Ot=o.flip)==null?void 0:Ot.index)||0)+1,bt=et[$];if(bt)return{data:{index:$,overflows:K},reset:{placement:bt}};let _=(st=K.filter(H=>H.overflows[0]<=0).sort((H,X)=>H.overflows[1]-X.overflows[1])[0])==null?void 0:st.placement;if(!_)switch(f){case"bestFit":{var Tt;const H=(Tt=K.filter(X=>{if(D){const Y=Z(X.placement);return Y===y||Y==="y"}return!0}).map(X=>[X.placement,X.overflows.filter(Y=>Y>0).reduce((Y,ts)=>Y+ts,0)]).sort((X,Y)=>X[1]-Y[1])[0])==null?void 0:Tt[0];H&&(_=H);break}case"initialPlacement":_=l;break}if(n!==_)return{reset:{placement:_}}}return{}}}};async function Ci(t,e){const{placement:i,platform:s,elements:n}=t,o=await(s.isRTL==null?void 0:s.isRTL(n.floating)),r=W(i),l=At(i),a=Z(i)==="y",c=["left","top"].includes(r)?-1:1,d=o&&a?-1:1,u=J(e,t);let{mainAxis:h,crossAxis:f,alignmentAxis:g}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return l&&typeof g=="number"&&(f=l==="end"?g*-1:g),a?{x:f*d,y:h*c}:{x:h*c,y:f*d}}const Ai=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var i,s;const{x:n,y:o,placement:r,middlewareData:l}=e,a=await Ci(e,t);return r===((i=l.offset)==null?void 0:i.placement)&&(s=l.arrow)!=null&&s.alignmentOffset?{}:{x:n+a.x,y:o+a.y,data:{...a,placement:r}}}}},ki=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:i,y:s,placement:n}=e,{mainAxis:o=!0,crossAxis:r=!1,limiter:l={fn:b=>{let{x:p,y}=b;return{x:p,y}}},...a}=J(t,e),c={x:i,y:s},d=await ve(e,a),u=Z(W(n)),h=Xt(u);let f=c[h],g=c[u];if(o){const b=h==="y"?"top":"left",p=h==="y"?"bottom":"right",y=f+d[b],x=f-d[p];f=Kt(y,f,x)}if(r){const b=u==="y"?"top":"left",p=u==="y"?"bottom":"right",y=g+d[b],x=g-d[p];g=Kt(y,g,x)}const m=l.fn({...e,[h]:f,[u]:g});return{...m,data:{x:m.x-i,y:m.y-s,enabled:{[h]:o,[u]:r}}}}}},$i=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:i,y:s,placement:n,rects:o,middlewareData:r}=e,{offset:l=0,mainAxis:a=!0,crossAxis:c=!0}=J(t,e),d={x:i,y:s},u=Z(n),h=Xt(u);let f=d[h],g=d[u];const m=J(l,e),b=typeof m=="number"?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(a){const x=h==="y"?"height":"width",E=o.reference[h]-o.floating[x]+b.mainAxis,v=o.reference[h]+o.reference[x]-b.mainAxis;f<E?f=E:f>v&&(f=v)}if(c){var p,y;const x=h==="y"?"width":"height",E=["top","left"].includes(W(n)),v=o.reference[u]-o.floating[x]+(E&&((p=r.offset)==null?void 0:p[u])||0)+(E?0:b.crossAxis),D=o.reference[u]+o.reference[x]+(E?0:((y=r.offset)==null?void 0:y[u])||0)-(E?b.crossAxis:0);g<v?g=v:g>D&&(g=D)}return{[h]:f,[u]:g}}}};function Bt(){return typeof window<"u"}function rt(t){return Se(t)?(t.nodeName||"").toLowerCase():"#document"}function R(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function B(t){var e;return(e=(Se(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function Se(t){return Bt()?t instanceof Node||t instanceof R(t).Node:!1}function I(t){return Bt()?t instanceof Element||t instanceof R(t).Element:!1}function V(t){return Bt()?t instanceof HTMLElement||t instanceof R(t).HTMLElement:!1}function Ee(t){return!Bt()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof R(t).ShadowRoot}function kt(t){const{overflow:e,overflowX:i,overflowY:s,display:n}=N(t);return/auto|scroll|overlay|hidden|clip/.test(e+s+i)&&!["inline","contents"].includes(n)}function Li(t){return["table","td","th"].includes(rt(t))}function Vt(t){return[":popover-open",":modal"].some(e=>{try{return t.matches(e)}catch{return!1}})}function Zt(t){const e=Qt(),i=I(t)?N(t):t;return i.transform!=="none"||i.perspective!=="none"||(i.containerType?i.containerType!=="normal":!1)||!e&&(i.backdropFilter?i.backdropFilter!=="none":!1)||!e&&(i.filter?i.filter!=="none":!1)||["transform","perspective","filter"].some(s=>(i.willChange||"").includes(s))||["paint","layout","strict","content"].some(s=>(i.contain||"").includes(s))}function Oi(t){let e=j(t);for(;V(e)&&!lt(e);){if(Zt(e))return e;if(Vt(e))return null;e=j(e)}return null}function Qt(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function lt(t){return["html","body","#document"].includes(rt(t))}function N(t){return R(t).getComputedStyle(t)}function Ht(t){return I(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function j(t){if(rt(t)==="html")return t;const e=t.assignedSlot||t.parentNode||Ee(t)&&t.host||B(t);return Ee(e)?e.host:e}function Ce(t){const e=j(t);return lt(e)?t.ownerDocument?t.ownerDocument.body:t.body:V(e)&&kt(e)?e:Ce(e)}function $t(t,e,i){var s;e===void 0&&(e=[]),i===void 0&&(i=!0);const n=Ce(t),o=n===((s=t.ownerDocument)==null?void 0:s.body),r=R(n);if(o){const l=qt(r);return e.concat(r,r.visualViewport||[],kt(n)?n:[],l&&i?$t(l):[])}return e.concat(n,$t(n,[],i))}function qt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Ae(t){const e=N(t);let i=parseFloat(e.width)||0,s=parseFloat(e.height)||0;const n=V(t),o=n?t.offsetWidth:i,r=n?t.offsetHeight:s,l=Mt(i)!==o||Mt(s)!==r;return l&&(i=o,s=r),{width:i,height:s,$:l}}function te(t){return I(t)?t:t.contextElement}function at(t){const e=te(t);if(!V(e))return z(1);const i=e.getBoundingClientRect(),{width:s,height:n,$:o}=Ae(e);let r=(o?Mt(i.width):i.width)/s,l=(o?Mt(i.height):i.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!l||!Number.isFinite(l))&&(l=1),{x:r,y:l}}const Ti=z(0);function ke(t){const e=R(t);return!Qt()||!e.visualViewport?Ti:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Pi(t,e,i){return e===void 0&&(e=!1),!i||e&&i!==R(t)?!1:e}function Q(t,e,i,s){e===void 0&&(e=!1),i===void 0&&(i=!1);const n=t.getBoundingClientRect(),o=te(t);let r=z(1);e&&(s?I(s)&&(r=at(s)):r=at(t));const l=Pi(o,i,s)?ke(o):z(0);let a=(n.left+l.x)/r.x,c=(n.top+l.y)/r.y,d=n.width/r.x,u=n.height/r.y;if(o){const h=R(o),f=s&&I(s)?R(s):s;let g=h,m=qt(g);for(;m&&s&&f!==g;){const b=at(m),p=m.getBoundingClientRect(),y=N(m),x=p.left+(m.clientLeft+parseFloat(y.paddingLeft))*b.x,E=p.top+(m.clientTop+parseFloat(y.paddingTop))*b.y;a*=b.x,c*=b.y,d*=b.x,u*=b.y,a+=x,c+=E,g=R(m),m=qt(g)}}return Nt({width:d,height:u,x:a,y:c})}function Ri(t){let{elements:e,rect:i,offsetParent:s,strategy:n}=t;const o=n==="fixed",r=B(s),l=e?Vt(e.floating):!1;if(s===r||l&&o)return i;let a={scrollLeft:0,scrollTop:0},c=z(1);const d=z(0),u=V(s);if((u||!u&&!o)&&((rt(s)!=="body"||kt(r))&&(a=Ht(s)),V(s))){const h=Q(s);c=at(s),d.x=h.x+s.clientLeft,d.y=h.y+s.clientTop}return{width:i.width*c.x,height:i.height*c.y,x:i.x*c.x-a.scrollLeft*c.x+d.x,y:i.y*c.y-a.scrollTop*c.y+d.y}}function Di(t){return Array.from(t.getClientRects())}function ee(t,e){const i=Ht(t).scrollLeft;return e?e.left+i:Q(B(t)).left+i}function Mi(t){const e=B(t),i=Ht(t),s=t.ownerDocument.body,n=G(e.scrollWidth,e.clientWidth,s.scrollWidth,s.clientWidth),o=G(e.scrollHeight,e.clientHeight,s.scrollHeight,s.clientHeight);let r=-i.scrollLeft+ee(t);const l=-i.scrollTop;return N(s).direction==="rtl"&&(r+=G(e.clientWidth,s.clientWidth)-n),{width:n,height:o,x:r,y:l}}function Fi(t,e){const i=R(t),s=B(t),n=i.visualViewport;let o=s.clientWidth,r=s.clientHeight,l=0,a=0;if(n){o=n.width,r=n.height;const c=Qt();(!c||c&&e==="fixed")&&(l=n.offsetLeft,a=n.offsetTop)}return{width:o,height:r,x:l,y:a}}function Ii(t,e){const i=Q(t,!0,e==="fixed"),s=i.top+t.clientTop,n=i.left+t.clientLeft,o=V(t)?at(t):z(1),r=t.clientWidth*o.x,l=t.clientHeight*o.y,a=n*o.x,c=s*o.y;return{width:r,height:l,x:a,y:c}}function $e(t,e,i){let s;if(e==="viewport")s=Fi(t,i);else if(e==="document")s=Mi(B(t));else if(I(e))s=Ii(e,i);else{const n=ke(t);s={...e,x:e.x-n.x,y:e.y-n.y}}return Nt(s)}function Le(t,e){const i=j(t);return i===e||!I(i)||lt(i)?!1:N(i).position==="fixed"||Le(i,e)}function Ni(t,e){const i=e.get(t);if(i)return i;let s=$t(t,[],!1).filter(l=>I(l)&&rt(l)!=="body"),n=null;const o=N(t).position==="fixed";let r=o?j(t):t;for(;I(r)&&!lt(r);){const l=N(r),a=Zt(r);!a&&l.position==="fixed"&&(n=null),(o?!a&&!n:!a&&l.position==="static"&&!!n&&["absolute","fixed"].includes(n.position)||kt(r)&&!a&&Le(t,r))?s=s.filter(d=>d!==r):n=l,r=j(r)}return e.set(t,s),s}function Bi(t){let{element:e,boundary:i,rootBoundary:s,strategy:n}=t;const r=[...i==="clippingAncestors"?Vt(e)?[]:Ni(e,this._c):[].concat(i),s],l=r[0],a=r.reduce((c,d)=>{const u=$e(e,d,n);return c.top=G(u.top,c.top),c.right=ot(u.right,c.right),c.bottom=ot(u.bottom,c.bottom),c.left=G(u.left,c.left),c},$e(e,l,n));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function Vi(t){const{width:e,height:i}=Ae(t);return{width:e,height:i}}function Hi(t,e,i){const s=V(e),n=B(e),o=i==="fixed",r=Q(t,!0,o,e);let l={scrollLeft:0,scrollTop:0};const a=z(0);if(s||!s&&!o)if((rt(e)!=="body"||kt(n))&&(l=Ht(e)),s){const f=Q(e,!0,o,e);a.x=f.x+e.clientLeft,a.y=f.y+e.clientTop}else n&&(a.x=ee(n));let c=0,d=0;if(n&&!s&&!o){const f=n.getBoundingClientRect();d=f.top+l.scrollTop,c=f.left+l.scrollLeft-ee(n,f)}const u=r.left+l.scrollLeft-a.x-c,h=r.top+l.scrollTop-a.y-d;return{x:u,y:h,width:r.width,height:r.height}}function ie(t){return N(t).position==="static"}function Oe(t,e){if(!V(t)||N(t).position==="fixed")return null;if(e)return e(t);let i=t.offsetParent;return B(t)===i&&(i=i.ownerDocument.body),i}function Te(t,e){const i=R(t);if(Vt(t))return i;if(!V(t)){let n=j(t);for(;n&&!lt(n);){if(I(n)&&!ie(n))return n;n=j(n)}return i}let s=Oe(t,e);for(;s&&Li(s)&&ie(s);)s=Oe(s,e);return s&&lt(s)&&ie(s)&&!Zt(s)?i:s||Oi(t)||i}const _i=async function(t){const e=this.getOffsetParent||Te,i=this.getDimensions,s=await i(t.floating);return{reference:Hi(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:s.width,height:s.height}}};function zi(t){return N(t).direction==="rtl"}const Wi={convertOffsetParentRelativeRectToViewportRelativeRect:Ri,getDocumentElement:B,getClippingRect:Bi,getOffsetParent:Te,getElementRects:_i,getClientRects:Di,getDimensions:Vi,getScale:at,isElement:I,isRTL:zi};function ji(t,e){let i=null,s;const n=B(t);function o(){var l;clearTimeout(s),(l=i)==null||l.disconnect(),i=null}function r(l,a){l===void 0&&(l=!1),a===void 0&&(a=1),o();const{left:c,top:d,width:u,height:h}=t.getBoundingClientRect();if(l||e(),!u||!h)return;const f=Ft(d),g=Ft(n.clientWidth-(c+u)),m=Ft(n.clientHeight-(d+h)),b=Ft(c),y={rootMargin:-f+"px "+-g+"px "+-m+"px "+-b+"px",threshold:G(0,ot(1,a))||1};let x=!0;function E(v){const D=v[0].intersectionRatio;if(D!==a){if(!x)return r();D?r(!1,D):s=setTimeout(()=>{r(!1,1e-7)},1e3)}x=!1}try{i=new IntersectionObserver(E,{...y,root:n.ownerDocument})}catch{i=new IntersectionObserver(E,y)}i.observe(t)}return r(!0),o}function Ui(t,e,i,s){s===void 0&&(s={});const{ancestorScroll:n=!0,ancestorResize:o=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:a=!1}=s,c=te(t),d=n||o?[...c?$t(c):[],...$t(e)]:[];d.forEach(p=>{n&&p.addEventListener("scroll",i,{passive:!0}),o&&p.addEventListener("resize",i)});const u=c&&l?ji(c,i):null;let h=-1,f=null;r&&(f=new ResizeObserver(p=>{let[y]=p;y&&y.target===c&&f&&(f.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var x;(x=f)==null||x.observe(e)})),i()}),c&&!a&&f.observe(c),f.observe(e));let g,m=a?Q(t):null;a&&b();function b(){const p=Q(t);m&&(p.x!==m.x||p.y!==m.y||p.width!==m.width||p.height!==m.height)&&i(),m=p,g=requestAnimationFrame(b)}return i(),()=>{var p;d.forEach(y=>{n&&y.removeEventListener("scroll",i),o&&y.removeEventListener("resize",i)}),u==null||u(),(p=f)==null||p.disconnect(),f=null,a&&cancelAnimationFrame(g)}}const Ki=Ai,Xi=ki,Yi=Ei,Gi=Si,Ji=$i,Zi=(t,e,i)=>{const s=new Map,n={platform:Wi,...i},o={...n.platform,_c:s};return vi(t,e,{...n,platform:o})};async function Qi(t){const e=me.call(this,t);e.el.inert=!1,e.el.classList.add(this.settings.stateActive),e.isTooltip||e.trigger.setAttribute("aria-expanded","true"),e.getCustomProps();const i=ri(e),s=e.el.querySelector(i.arrow.element);return i.arrow.element=s||void 0,e.floatingCleanup=Ui(e.trigger,e.el,()=>{Zi(e.trigger,e.el,{placement:e.getSetting("placement"),middleware:[Yi(i.flip),Xi({...i.shift,limiter:Ji()}),Ki(i.offset),Gi(i.arrow)]}).then(({x:n,y:o,placement:r,middlewareData:l})=>{if(e.el){if(he(e.el,n,o),i.arrow.element&&l.arrow){const{x:a,y:c}=l.arrow;he(i.arrow.element,a,c)}e.el.setAttribute("data-floating-placement",r)}})}),e.state="opened",e.getSetting("event")==="click"&&di.call(this,e),e}class qi extends Rt{constructor(i={}){super({...oi,...i});L(this,wt);this.trigger=null,C(this,wt,ui.bind(this))}get active(){return this.get("opened","state")}get activeHover(){return this.collection.find(i=>i.state=="opened"&&i.getSetting("event")=="hover")}async createEntry(i,s){return new hi(this,i,s)}async open(i){return Qi.call(this,i)}async close(i){return pe.call(this,i)}async afterMount(){document.addEventListener("keydown",w(this,wt),!1)}async beforeUnmount(){this.trigger=null}async afterUnmount(){document.removeEventListener("keydown",w(this,wt),!1)}}wt=new WeakMap,S.Drawer=Ze,S.Modal=ni,S.Popover=qi,S.core=Ve,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})});
9
+ `);if(e){if(t.preventDefault(),e.matches(`[data-${this.settings.dataOpen}]`)){const i=e.getAttribute(`data-${this.settings.dataOpen}`).trim(),s=Ct.call(this,i);return t.target.closest(this.settings.selector)||(this.trigger=e),s.open()}if(e.matches(`[data-${this.settings.dataReplace}]`)){const i=e.getAttribute(`data-${this.settings.dataReplace}`).trim(),s=Ct.call(this,i);return t.target.closest(this.settings.selector)||(this.trigger=e),s.replace()}if(e.matches(`[data-${this.settings.dataClose}]`)){const i=e.getAttribute(`data-${this.settings.dataClose}`).trim();return i==="*"?this.closeAll():this.close(i)}}if(this.active&&t.target.matches(this.settings.selectorScreen)&&!this.active.isRequired)return this.close(this.active.id)}function si(t){if(t.key==="Escape"&&this.active&&!this.active.dialog.matches(this.settings.selectorRequired))return this.close()}async function de(t,e=void 0,i=!0){const s=Ct.call(this,t);return this.stack.moveToTop(s),s.state==="closed"&&(s.state="opening",this.stack.add(s),e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateClosed"),s.getSetting("stateOpening"),s.getSetting("stateOpened"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateOpened")),s.el.classList.remove(s.getSetting("stateClosed"))),s.state="opened"),i&&Dt.call(this),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"opened",{detail:this,bubbles:!0})),s}async function he(t,e,i=!0){const s=t?Ct.call(this,t):this.active;return s&&s.state==="opened"&&(s.state="closing",document.activeElement.blur(),e??s.getSetting("transition")?await xt(s.el,s.getSetting("stateOpened"),s.getSetting("stateClosing"),s.getSetting("stateClosed"),s.getSetting("transitionDuration")):(s.el.classList.add(s.getSetting("stateClosed")),s.el.classList.remove(s.getSetting("stateOpened"))),this.stack.remove(s),s.state="closed",i&&Dt.call(this),s.el.dispatchEvent(new CustomEvent(s.getSetting("customEventPrefix")+"closed",{detail:this,bubbles:!0}))),s}async function Ut(t,e){const i=[];return await Promise.all(this.stack.value.map(async s=>{t&&t===s.id?Promise.resolve():i.push(await he.call(this,s,e,!1)),s.trigger=null})),i}async function ni(t,e,i=!0){const s=Ct.call(this,t);let n,o;return s.state==="opened"?(n=s,o=await Ut.call(this,s.id,e)):(o=Ut.call(this,!1,e),n=de.call(this,s,e,!1),await Promise.all([n,o])),i&&Dt.call(this),{opened:n,closed:o}}function oi(t){const e=[];return{get value(){return[...e]},get top(){const i=e[e.length-1];return i||null},updateIndex(){e.forEach((i,s)=>{i.el.style.zIndex=null;const n=getComputedStyle(i.el)["z-index"];i.el.style.zIndex=parseInt(n)+s+1})},setGlobalState(){vt(this.top,t.selectorInert,t.selectorOverflow),this.updateIndex()},add(i){i.el.style.zIndex=null;const s=getComputedStyle(i.el)["z-index"];i.el.style.zIndex=parseInt(s)+e.length+1,e.push(i),this.setGlobalState()},remove(i){const s=e.findIndex(n=>n.id===i.id);s>=0&&(i.el.style.zIndex=null,e.splice(s,1),this.setGlobalState())},moveToTop(i){const s=e.findIndex(n=>n.id===i.id);s>=0&&(e.splice(s,1),this.add(i))}}}class ri extends Rt{constructor(i){super({...ti,...i});L(this,mt);L(this,pt);this.trigger=null,this.focusTrap=new _t,C(this,mt,ii.bind(this)),C(this,pt,si.bind(this)),this.stack=oi(this.settings)}get active(){return this.stack.top}async createEntry(i,s){return new ei(this,i,s)}async open(i,s,n){return de.call(this,i,s,n)}async close(i,s,n){return he.call(this,i,s,n)}async replace(i,s,n){return ni.call(this,i,s,n)}async closeAll(i=!1,s,n=!0){const o=await Ut.call(this,i,s);return n&&Dt.call(this),o}async afterMount(){document.addEventListener("click",w(this,mt),!1),document.addEventListener("keydown",w(this,pt),!1)}async beforeUnmount(){this.trigger=null}async afterUnmount(){document.removeEventListener("click",w(this,mt),!1),document.removeEventListener("keydown",w(this,pt),!1)}}mt=new WeakMap,pt=new WeakMap;const li={selector:".popover",selectorTooltip:".popover_tooltip",selectorArrow:".popover__arrow",stateActive:"is-active",customProps:["placement","event","offset","flip-padding","shift-padding","arrow-padding","toggle-delay"],placement:"bottom",event:"click",offset:0,flipPadding:0,shiftPadding:0,arrowPadding:0,toggleDelay:0,teleport:null,teleportMethod:"append"};function ge(t,e,i){Object.assign(t.style,{left:e!=null?`${e}px`:"",top:i!=null?`${i}px`:""})}function me(t,e){let i=t.getSetting("toggle-delay");typeof i=="string"&&(i.indexOf(",")>-1&&(i=i.split(",")),i.indexOf(" ")>-1&&(i=i.split(" "))),Array.isArray(i)&&(i=i[e]);const s=Number(i);if(Number.isNaN(s))throw new Error(`Provided delay value is not a number: "${i}"`);return s}function jt(t){let e;const i=typeof t=="string"?t.trim().split(" "):[t];for(let s=0;s<i.length;s++)i[s]=Number(i[s]);switch(i.length){case 1:e=i[0];break;case 2:e={top:i[0],right:i[1],bottom:i[0],left:i[1]};break;case 3:e={top:i[0],right:i[1],bottom:i[2],left:i[1]};break;case 4:e={top:i[0],right:i[1],bottom:i[2],left:i[3]};break;default:e=!1;break}return e}function ai(t){return{offset:Number(t.getSetting("offset")),flip:{padding:jt(t.getSetting("flip-padding"))},shift:{padding:jt(t.getSetting("shift-padding"))},arrow:{element:t.getSetting("selectorArrow"),padding:jt(t.getSetting("arrow-padding"))}}}function pe(t){const e=typeof t=="string"?this.get(t):this.get(t.id);if(e)return e;throw new Error(`Popover not found in collection with id of "${t}".`)}async function we(t){const e=t?pe.call(this,t):await be.call(this);return e&&e.state==="opened"&&(e.el.inert=!0,e.el.classList.remove(this.settings.stateActive),e.isTooltip||e.trigger.setAttribute("aria-expanded","false"),e.floatingCleanup(),e.state="closed",e.trigger===this.trigger&&(this.trigger=null)),e}async function be(){const t=[];return await Promise.all(this.collection.map(async e=>{e.state==="opened"&&t.push(await we.call(this,e))})),t}function ye(t){t.state=="opened"&&setTimeout(()=>{const e=t.el.matches(":hover")===t.el||t.trigger.matches(":hover")===t.trigger;let i=document.activeElement.closest(`#${t.id}, [aria-controls="${t.id}"], [aria-describedby="${t.id}"]`);return i=i?i.matches(":focus-visible"):!1,!e&&!i&&t.close(),t},1)}function ci(t){t.state==="opened"?t.close():(this.trigger=t.trigger,t.open())}function fi(t){t.isTooltip&&(t.toggleDelayId&&clearTimeout(t.toggleDelayId),t.close())}function ui(t,e){if(t.isHovered=e,e.type=="focus"&&!t.trigger.matches(":focus-visible"))return;t.toggleDelayId&&clearTimeout(t.toggleDelayId);const i=t.trigger.getAttribute("aria-expanded");if(i&&i=="true")return;const s=this.activeHover?0:me(t,0);this.activeHover&&this.activeHover.close(),t.toggleDelayId=setTimeout(()=>{t.id&&t.open()},s)}function di(t,e){setTimeout(()=>{t.isHovered=e,!t.isHovered&&(t.toggleDelayId&&clearTimeout(t.toggleDelayId),t.toggleDelayId=setTimeout(()=>{ye.call(this,t)},me(t,1)))},1)}function hi(t){switch(t.key){case"Escape":this.trigger&&this.trigger.focus(),be.call(this);return;case"Tab":this.collection.forEach(e=>{ye.call(this,e)});return;default:return}}function gi(t){const e=this;document.addEventListener("click",function i(s){s.target.closest(`#${t.id}, [aria-controls="${t.id}"], [aria-describedby="${t.id}"]`)?t.el&&!t.el.classList.contains(e.settings.stateActive)&&this.removeEventListener("click",i):(t.el&&t.el.classList.contains(e.settings.stateActive)&&t.close(),this.removeEventListener("click",i))})}class mi extends St{constructor(i,s,n={}){super(i,s,n);L(this,F);L(this,j);this.state="closed",this.toggleDelayId=null,this.trigger=null,C(this,F,null),C(this,j,{el:!1,trigger:!1}),this.floatingCleanup=()=>{}}get isTooltip(){return!!this.el.closest(this.getSetting("selectorTooltip"))||this.el.getAttribute("role")=="tooltip"}get isHovered(){return w(this,j).el||w(this,j).trigger}set isHovered(i){const s=i.type=="mouseenter"?!0:i.type=="mouseleave"?!1:void 0;if(s!=null)switch(i.target){case this.el:w(this,j).el=s;break;case this.trigger:w(this,j).trigger=s;break}}async open(){return this.context.open(this)}async close(){return this.context.close(this)}async deregister(){return this.context.deregister(this.id)}registerEventListeners(){w(this,F)||(this.getSetting("event")==="hover"?(C(this,F,[{el:["el","trigger"],type:["mouseenter","focus"],listener:ui.bind(this.context,this)},{el:["el","trigger"],type:["mouseleave","focusout"],listener:di.bind(this.context,this)},{el:["trigger"],type:["click"],listener:fi.bind(this.context,this)}]),w(this,F).forEach(s=>{s.el.forEach(n=>{s.type.forEach(o=>{this[n].addEventListener(o,s.listener,!1)})})})):(C(this,F,[{el:["trigger"],type:["click"],listener:ci.bind(this.context,this)}]),w(this,F).forEach(s=>{s.el.forEach(n=>{s.type.forEach(o=>{this[n].addEventListener(o,s.listener,!1)})})})))}deregisterEventListeners(){w(this,F)&&(w(this,F).forEach(i=>{i.el.forEach(s=>{i.type.forEach(n=>{this[s].removeEventListener(n,i.listener,!1)})})}),C(this,F,null))}async beforeMount(){this.trigger=document.querySelector(`[aria-controls="${this.id}"], [aria-describedby="${this.id}"]`),this.isTooltip?(this.settings.event="hover",this.el.setAttribute("role","tooltip")):this.trigger.setAttribute("aria-expanded","false"),this.registerEventListeners()}async afterRegister(){this.el.classList.contains(this.getSetting("stateActive"))?await this.open():this.el.inert=!0}async beforeUnmount(){this.state==="opened"&&await this.close(),this.floatingCleanup(),this.deregisterEventListeners()}}F=new WeakMap,j=new WeakMap;const ot=Math.min,G=Math.max,Mt=Math.round,Ft=Math.floor,z=t=>({x:t,y:t}),pi={left:"right",right:"left",bottom:"top",top:"bottom"},wi={start:"end",end:"start"};function Kt(t,e,i){return G(t,ot(e,i))}function J(t,e){return typeof t=="function"?t(e):t}function W(t){return t.split("-")[0]}function At(t){return t.split("-")[1]}function Xt(t){return t==="x"?"y":"x"}function Yt(t){return t==="y"?"height":"width"}function Z(t){return["top","bottom"].includes(W(t))?"y":"x"}function Gt(t){return Xt(Z(t))}function bi(t,e,i){i===void 0&&(i=!1);const s=At(t),n=Gt(t),o=Yt(n);let r=n==="x"?s===(i?"end":"start")?"right":"left":s==="start"?"bottom":"top";return e.reference[o]>e.floating[o]&&(r=It(r)),[r,It(r)]}function yi(t){const e=It(t);return[Jt(t),e,Jt(e)]}function Jt(t){return t.replace(/start|end/g,e=>wi[e])}function xi(t,e,i){const s=["left","right"],n=["right","left"],o=["top","bottom"],r=["bottom","top"];switch(t){case"top":case"bottom":return i?e?n:s:e?s:n;case"left":case"right":return e?o:r;default:return[]}}function vi(t,e,i,s){const n=At(t);let o=xi(W(t),i==="start",s);return n&&(o=o.map(r=>r+"-"+n),e&&(o=o.concat(o.map(Jt)))),o}function It(t){return t.replace(/left|right|bottom|top/g,e=>pi[e])}function Si(t){return{top:0,right:0,bottom:0,left:0,...t}}function xe(t){return typeof t!="number"?Si(t):{top:t,right:t,bottom:t,left:t}}function Nt(t){const{x:e,y:i,width:s,height:n}=t;return{width:s,height:n,top:i,left:e,right:e+s,bottom:i+n,x:e,y:i}}function ve(t,e,i){let{reference:s,floating:n}=t;const o=Z(e),r=Gt(e),l=Yt(r),a=W(e),c=o==="y",d=s.x+s.width/2-n.width/2,u=s.y+s.height/2-n.height/2,h=s[l]/2-n[l]/2;let f;switch(a){case"top":f={x:d,y:s.y-n.height};break;case"bottom":f={x:d,y:s.y+s.height};break;case"right":f={x:s.x+s.width,y:u};break;case"left":f={x:s.x-n.width,y:u};break;default:f={x:s.x,y:s.y}}switch(At(e)){case"start":f[r]-=h*(i&&c?-1:1);break;case"end":f[r]+=h*(i&&c?-1:1);break}return f}const Ei=async(t,e,i)=>{const{placement:s="bottom",strategy:n="absolute",middleware:o=[],platform:r}=i,l=o.filter(Boolean),a=await(r.isRTL==null?void 0:r.isRTL(e));let c=await r.getElementRects({reference:t,floating:e,strategy:n}),{x:d,y:u}=ve(c,s,a),h=s,f={},g=0;for(let m=0;m<l.length;m++){const{name:b,fn:p}=l[m],{x:y,y:x,data:E,reset:v}=await p({x:d,y:u,initialPlacement:s,placement:h,strategy:n,middlewareData:f,rects:c,platform:r,elements:{reference:t,floating:e}});d=y??d,u=x??u,f={...f,[b]:{...f[b],...E}},v&&g<=50&&(g++,typeof v=="object"&&(v.placement&&(h=v.placement),v.rects&&(c=v.rects===!0?await r.getElementRects({reference:t,floating:e,strategy:n}):v.rects),{x:d,y:u}=ve(c,h,a)),m=-1)}return{x:d,y:u,placement:h,strategy:n,middlewareData:f}};async function Se(t,e){var i;e===void 0&&(e={});const{x:s,y:n,platform:o,rects:r,elements:l,strategy:a}=t,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:u="floating",altBoundary:h=!1,padding:f=0}=J(e,t),g=xe(f),b=l[h?u==="floating"?"reference":"floating":u],p=Nt(await o.getClippingRect({element:(i=await(o.isElement==null?void 0:o.isElement(b)))==null||i?b:b.contextElement||await(o.getDocumentElement==null?void 0:o.getDocumentElement(l.floating)),boundary:c,rootBoundary:d,strategy:a})),y=u==="floating"?{x:s,y:n,width:r.floating.width,height:r.floating.height}:r.reference,x=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l.floating)),E=await(o.isElement==null?void 0:o.isElement(x))?await(o.getScale==null?void 0:o.getScale(x))||{x:1,y:1}:{x:1,y:1},v=Nt(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:x,strategy:a}):y);return{top:(p.top-v.top+g.top)/E.y,bottom:(v.bottom-p.bottom+g.bottom)/E.y,left:(p.left-v.left+g.left)/E.x,right:(v.right-p.right+g.right)/E.x}}const Ci=t=>({name:"arrow",options:t,async fn(e){const{x:i,y:s,placement:n,rects:o,platform:r,elements:l,middlewareData:a}=e,{element:c,padding:d=0}=J(t,e)||{};if(c==null)return{};const u=xe(d),h={x:i,y:s},f=Gt(n),g=Yt(f),m=await r.getDimensions(c),b=f==="y",p=b?"top":"left",y=b?"bottom":"right",x=b?"clientHeight":"clientWidth",E=o.reference[g]+o.reference[f]-h[f]-o.floating[g],v=h[f]-o.reference[f],D=await(r.getOffsetParent==null?void 0:r.getOffsetParent(c));let et=D?D[x]:0;(!et||!await(r.isElement==null?void 0:r.isElement(D)))&&(et=l.floating[x]||o.floating[g]);const Lt=E/2-v/2,it=et/2-m[g]/2-1,K=ot(u[p],it),Ot=ot(u[y],it),st=K,Tt=et-m[g]-Ot,k=et/2-m[g]/2+Lt,bt=Kt(st,k,Tt),_=!a.arrow&&At(n)!=null&&k!==bt&&o.reference[g]/2-(k<st?K:Ot)-m[g]/2<0,H=_?k<st?k-st:k-Tt:0;return{[f]:h[f]+H,data:{[f]:bt,centerOffset:k-bt-H,..._&&{alignmentOffset:H}},reset:_}}}),Ai=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var i,s;const{placement:n,middlewareData:o,rects:r,initialPlacement:l,platform:a,elements:c}=e,{mainAxis:d=!0,crossAxis:u=!0,fallbackPlacements:h,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:m=!0,...b}=J(t,e);if((i=o.arrow)!=null&&i.alignmentOffset)return{};const p=W(n),y=Z(l),x=W(l)===l,E=await(a.isRTL==null?void 0:a.isRTL(c.floating)),v=h||(x||!m?[It(l)]:yi(l)),D=g!=="none";!h&&D&&v.push(...vi(l,m,g,E));const et=[l,...v],Lt=await Se(e,b),it=[];let K=((s=o.flip)==null?void 0:s.overflows)||[];if(d&&it.push(Lt[p]),u){const k=bi(n,r,E);it.push(Lt[k[0]],Lt[k[1]])}if(K=[...K,{placement:n,overflows:it}],!it.every(k=>k<=0)){var Ot,st;const k=(((Ot=o.flip)==null?void 0:Ot.index)||0)+1,bt=et[k];if(bt)return{data:{index:k,overflows:K},reset:{placement:bt}};let _=(st=K.filter(H=>H.overflows[0]<=0).sort((H,X)=>H.overflows[1]-X.overflows[1])[0])==null?void 0:st.placement;if(!_)switch(f){case"bestFit":{var Tt;const H=(Tt=K.filter(X=>{if(D){const Y=Z(X.placement);return Y===y||Y==="y"}return!0}).map(X=>[X.placement,X.overflows.filter(Y=>Y>0).reduce((Y,is)=>Y+is,0)]).sort((X,Y)=>X[1]-Y[1])[0])==null?void 0:Tt[0];H&&(_=H);break}case"initialPlacement":_=l;break}if(n!==_)return{reset:{placement:_}}}return{}}}};async function $i(t,e){const{placement:i,platform:s,elements:n}=t,o=await(s.isRTL==null?void 0:s.isRTL(n.floating)),r=W(i),l=At(i),a=Z(i)==="y",c=["left","top"].includes(r)?-1:1,d=o&&a?-1:1,u=J(e,t);let{mainAxis:h,crossAxis:f,alignmentAxis:g}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return l&&typeof g=="number"&&(f=l==="end"?g*-1:g),a?{x:f*d,y:h*c}:{x:h*c,y:f*d}}const ki=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var i,s;const{x:n,y:o,placement:r,middlewareData:l}=e,a=await $i(e,t);return r===((i=l.offset)==null?void 0:i.placement)&&(s=l.arrow)!=null&&s.alignmentOffset?{}:{x:n+a.x,y:o+a.y,data:{...a,placement:r}}}}},Li=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:i,y:s,placement:n}=e,{mainAxis:o=!0,crossAxis:r=!1,limiter:l={fn:b=>{let{x:p,y}=b;return{x:p,y}}},...a}=J(t,e),c={x:i,y:s},d=await Se(e,a),u=Z(W(n)),h=Xt(u);let f=c[h],g=c[u];if(o){const b=h==="y"?"top":"left",p=h==="y"?"bottom":"right",y=f+d[b],x=f-d[p];f=Kt(y,f,x)}if(r){const b=u==="y"?"top":"left",p=u==="y"?"bottom":"right",y=g+d[b],x=g-d[p];g=Kt(y,g,x)}const m=l.fn({...e,[h]:f,[u]:g});return{...m,data:{x:m.x-i,y:m.y-s,enabled:{[h]:o,[u]:r}}}}}},Oi=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:i,y:s,placement:n,rects:o,middlewareData:r}=e,{offset:l=0,mainAxis:a=!0,crossAxis:c=!0}=J(t,e),d={x:i,y:s},u=Z(n),h=Xt(u);let f=d[h],g=d[u];const m=J(l,e),b=typeof m=="number"?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(a){const x=h==="y"?"height":"width",E=o.reference[h]-o.floating[x]+b.mainAxis,v=o.reference[h]+o.reference[x]-b.mainAxis;f<E?f=E:f>v&&(f=v)}if(c){var p,y;const x=h==="y"?"width":"height",E=["top","left"].includes(W(n)),v=o.reference[u]-o.floating[x]+(E&&((p=r.offset)==null?void 0:p[u])||0)+(E?0:b.crossAxis),D=o.reference[u]+o.reference[x]+(E?0:((y=r.offset)==null?void 0:y[u])||0)-(E?b.crossAxis:0);g<v?g=v:g>D&&(g=D)}return{[h]:f,[u]:g}}}};function Bt(){return typeof window<"u"}function rt(t){return Ee(t)?(t.nodeName||"").toLowerCase():"#document"}function R(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function B(t){var e;return(e=(Ee(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function Ee(t){return Bt()?t instanceof Node||t instanceof R(t).Node:!1}function I(t){return Bt()?t instanceof Element||t instanceof R(t).Element:!1}function V(t){return Bt()?t instanceof HTMLElement||t instanceof R(t).HTMLElement:!1}function Ce(t){return!Bt()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof R(t).ShadowRoot}function $t(t){const{overflow:e,overflowX:i,overflowY:s,display:n}=N(t);return/auto|scroll|overlay|hidden|clip/.test(e+s+i)&&!["inline","contents"].includes(n)}function Ti(t){return["table","td","th"].includes(rt(t))}function Vt(t){return[":popover-open",":modal"].some(e=>{try{return t.matches(e)}catch{return!1}})}function Zt(t){const e=Qt(),i=I(t)?N(t):t;return i.transform!=="none"||i.perspective!=="none"||(i.containerType?i.containerType!=="normal":!1)||!e&&(i.backdropFilter?i.backdropFilter!=="none":!1)||!e&&(i.filter?i.filter!=="none":!1)||["transform","perspective","filter"].some(s=>(i.willChange||"").includes(s))||["paint","layout","strict","content"].some(s=>(i.contain||"").includes(s))}function Pi(t){let e=U(t);for(;V(e)&&!lt(e);){if(Zt(e))return e;if(Vt(e))return null;e=U(e)}return null}function Qt(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function lt(t){return["html","body","#document"].includes(rt(t))}function N(t){return R(t).getComputedStyle(t)}function Ht(t){return I(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function U(t){if(rt(t)==="html")return t;const e=t.assignedSlot||t.parentNode||Ce(t)&&t.host||B(t);return Ce(e)?e.host:e}function Ae(t){const e=U(t);return lt(e)?t.ownerDocument?t.ownerDocument.body:t.body:V(e)&&$t(e)?e:Ae(e)}function kt(t,e,i){var s;e===void 0&&(e=[]),i===void 0&&(i=!0);const n=Ae(t),o=n===((s=t.ownerDocument)==null?void 0:s.body),r=R(n);if(o){const l=qt(r);return e.concat(r,r.visualViewport||[],$t(n)?n:[],l&&i?kt(l):[])}return e.concat(n,kt(n,[],i))}function qt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function $e(t){const e=N(t);let i=parseFloat(e.width)||0,s=parseFloat(e.height)||0;const n=V(t),o=n?t.offsetWidth:i,r=n?t.offsetHeight:s,l=Mt(i)!==o||Mt(s)!==r;return l&&(i=o,s=r),{width:i,height:s,$:l}}function te(t){return I(t)?t:t.contextElement}function at(t){const e=te(t);if(!V(e))return z(1);const i=e.getBoundingClientRect(),{width:s,height:n,$:o}=$e(e);let r=(o?Mt(i.width):i.width)/s,l=(o?Mt(i.height):i.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!l||!Number.isFinite(l))&&(l=1),{x:r,y:l}}const Ri=z(0);function ke(t){const e=R(t);return!Qt()||!e.visualViewport?Ri:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Di(t,e,i){return e===void 0&&(e=!1),!i||e&&i!==R(t)?!1:e}function Q(t,e,i,s){e===void 0&&(e=!1),i===void 0&&(i=!1);const n=t.getBoundingClientRect(),o=te(t);let r=z(1);e&&(s?I(s)&&(r=at(s)):r=at(t));const l=Di(o,i,s)?ke(o):z(0);let a=(n.left+l.x)/r.x,c=(n.top+l.y)/r.y,d=n.width/r.x,u=n.height/r.y;if(o){const h=R(o),f=s&&I(s)?R(s):s;let g=h,m=qt(g);for(;m&&s&&f!==g;){const b=at(m),p=m.getBoundingClientRect(),y=N(m),x=p.left+(m.clientLeft+parseFloat(y.paddingLeft))*b.x,E=p.top+(m.clientTop+parseFloat(y.paddingTop))*b.y;a*=b.x,c*=b.y,d*=b.x,u*=b.y,a+=x,c+=E,g=R(m),m=qt(g)}}return Nt({width:d,height:u,x:a,y:c})}function Mi(t){let{elements:e,rect:i,offsetParent:s,strategy:n}=t;const o=n==="fixed",r=B(s),l=e?Vt(e.floating):!1;if(s===r||l&&o)return i;let a={scrollLeft:0,scrollTop:0},c=z(1);const d=z(0),u=V(s);if((u||!u&&!o)&&((rt(s)!=="body"||$t(r))&&(a=Ht(s)),V(s))){const h=Q(s);c=at(s),d.x=h.x+s.clientLeft,d.y=h.y+s.clientTop}return{width:i.width*c.x,height:i.height*c.y,x:i.x*c.x-a.scrollLeft*c.x+d.x,y:i.y*c.y-a.scrollTop*c.y+d.y}}function Fi(t){return Array.from(t.getClientRects())}function ee(t,e){const i=Ht(t).scrollLeft;return e?e.left+i:Q(B(t)).left+i}function Ii(t){const e=B(t),i=Ht(t),s=t.ownerDocument.body,n=G(e.scrollWidth,e.clientWidth,s.scrollWidth,s.clientWidth),o=G(e.scrollHeight,e.clientHeight,s.scrollHeight,s.clientHeight);let r=-i.scrollLeft+ee(t);const l=-i.scrollTop;return N(s).direction==="rtl"&&(r+=G(e.clientWidth,s.clientWidth)-n),{width:n,height:o,x:r,y:l}}function Ni(t,e){const i=R(t),s=B(t),n=i.visualViewport;let o=s.clientWidth,r=s.clientHeight,l=0,a=0;if(n){o=n.width,r=n.height;const c=Qt();(!c||c&&e==="fixed")&&(l=n.offsetLeft,a=n.offsetTop)}return{width:o,height:r,x:l,y:a}}function Bi(t,e){const i=Q(t,!0,e==="fixed"),s=i.top+t.clientTop,n=i.left+t.clientLeft,o=V(t)?at(t):z(1),r=t.clientWidth*o.x,l=t.clientHeight*o.y,a=n*o.x,c=s*o.y;return{width:r,height:l,x:a,y:c}}function Le(t,e,i){let s;if(e==="viewport")s=Ni(t,i);else if(e==="document")s=Ii(B(t));else if(I(e))s=Bi(e,i);else{const n=ke(t);s={...e,x:e.x-n.x,y:e.y-n.y}}return Nt(s)}function Oe(t,e){const i=U(t);return i===e||!I(i)||lt(i)?!1:N(i).position==="fixed"||Oe(i,e)}function Vi(t,e){const i=e.get(t);if(i)return i;let s=kt(t,[],!1).filter(l=>I(l)&&rt(l)!=="body"),n=null;const o=N(t).position==="fixed";let r=o?U(t):t;for(;I(r)&&!lt(r);){const l=N(r),a=Zt(r);!a&&l.position==="fixed"&&(n=null),(o?!a&&!n:!a&&l.position==="static"&&!!n&&["absolute","fixed"].includes(n.position)||$t(r)&&!a&&Oe(t,r))?s=s.filter(d=>d!==r):n=l,r=U(r)}return e.set(t,s),s}function Hi(t){let{element:e,boundary:i,rootBoundary:s,strategy:n}=t;const r=[...i==="clippingAncestors"?Vt(e)?[]:Vi(e,this._c):[].concat(i),s],l=r[0],a=r.reduce((c,d)=>{const u=Le(e,d,n);return c.top=G(u.top,c.top),c.right=ot(u.right,c.right),c.bottom=ot(u.bottom,c.bottom),c.left=G(u.left,c.left),c},Le(e,l,n));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function _i(t){const{width:e,height:i}=$e(t);return{width:e,height:i}}function zi(t,e,i){const s=V(e),n=B(e),o=i==="fixed",r=Q(t,!0,o,e);let l={scrollLeft:0,scrollTop:0};const a=z(0);if(s||!s&&!o)if((rt(e)!=="body"||$t(n))&&(l=Ht(e)),s){const f=Q(e,!0,o,e);a.x=f.x+e.clientLeft,a.y=f.y+e.clientTop}else n&&(a.x=ee(n));let c=0,d=0;if(n&&!s&&!o){const f=n.getBoundingClientRect();d=f.top+l.scrollTop,c=f.left+l.scrollLeft-ee(n,f)}const u=r.left+l.scrollLeft-a.x-c,h=r.top+l.scrollTop-a.y-d;return{x:u,y:h,width:r.width,height:r.height}}function ie(t){return N(t).position==="static"}function Te(t,e){if(!V(t)||N(t).position==="fixed")return null;if(e)return e(t);let i=t.offsetParent;return B(t)===i&&(i=i.ownerDocument.body),i}function Pe(t,e){const i=R(t);if(Vt(t))return i;if(!V(t)){let n=U(t);for(;n&&!lt(n);){if(I(n)&&!ie(n))return n;n=U(n)}return i}let s=Te(t,e);for(;s&&Ti(s)&&ie(s);)s=Te(s,e);return s&&lt(s)&&ie(s)&&!Zt(s)?i:s||Pi(t)||i}const Wi=async function(t){const e=this.getOffsetParent||Pe,i=this.getDimensions,s=await i(t.floating);return{reference:zi(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:s.width,height:s.height}}};function Ui(t){return N(t).direction==="rtl"}const ji={convertOffsetParentRelativeRectToViewportRelativeRect:Mi,getDocumentElement:B,getClippingRect:Hi,getOffsetParent:Pe,getElementRects:Wi,getClientRects:Fi,getDimensions:_i,getScale:at,isElement:I,isRTL:Ui};function Ki(t,e){let i=null,s;const n=B(t);function o(){var l;clearTimeout(s),(l=i)==null||l.disconnect(),i=null}function r(l,a){l===void 0&&(l=!1),a===void 0&&(a=1),o();const{left:c,top:d,width:u,height:h}=t.getBoundingClientRect();if(l||e(),!u||!h)return;const f=Ft(d),g=Ft(n.clientWidth-(c+u)),m=Ft(n.clientHeight-(d+h)),b=Ft(c),y={rootMargin:-f+"px "+-g+"px "+-m+"px "+-b+"px",threshold:G(0,ot(1,a))||1};let x=!0;function E(v){const D=v[0].intersectionRatio;if(D!==a){if(!x)return r();D?r(!1,D):s=setTimeout(()=>{r(!1,1e-7)},1e3)}x=!1}try{i=new IntersectionObserver(E,{...y,root:n.ownerDocument})}catch{i=new IntersectionObserver(E,y)}i.observe(t)}return r(!0),o}function Xi(t,e,i,s){s===void 0&&(s={});const{ancestorScroll:n=!0,ancestorResize:o=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:a=!1}=s,c=te(t),d=n||o?[...c?kt(c):[],...kt(e)]:[];d.forEach(p=>{n&&p.addEventListener("scroll",i,{passive:!0}),o&&p.addEventListener("resize",i)});const u=c&&l?Ki(c,i):null;let h=-1,f=null;r&&(f=new ResizeObserver(p=>{let[y]=p;y&&y.target===c&&f&&(f.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var x;(x=f)==null||x.observe(e)})),i()}),c&&!a&&f.observe(c),f.observe(e));let g,m=a?Q(t):null;a&&b();function b(){const p=Q(t);m&&(p.x!==m.x||p.y!==m.y||p.width!==m.width||p.height!==m.height)&&i(),m=p,g=requestAnimationFrame(b)}return i(),()=>{var p;d.forEach(y=>{n&&y.removeEventListener("scroll",i),o&&y.removeEventListener("resize",i)}),u==null||u(),(p=f)==null||p.disconnect(),f=null,a&&cancelAnimationFrame(g)}}const Yi=ki,Gi=Li,Ji=Ai,Zi=Ci,Qi=Oi,qi=(t,e,i)=>{const s=new Map,n={platform:ji,...i},o={...n.platform,_c:s};return Ei(t,e,{...n,platform:o})};async function ts(t){const e=pe.call(this,t);e.el.inert=!1,e.el.classList.add(this.settings.stateActive),e.isTooltip||e.trigger.setAttribute("aria-expanded","true"),e.getCustomProps();const i=ai(e),s=e.el.querySelector(i.arrow.element);return i.arrow.element=s||void 0,e.floatingCleanup=Xi(e.trigger,e.el,()=>{qi(e.trigger,e.el,{placement:e.getSetting("placement"),middleware:[Ji(i.flip),Gi({...i.shift,limiter:Qi()}),Yi(i.offset),Zi(i.arrow)]}).then(({x:n,y:o,placement:r,middlewareData:l})=>{if(e.el){if(ge(e.el,n,o),i.arrow.element&&l.arrow){const{x:a,y:c}=l.arrow;ge(i.arrow.element,a,c)}e.el.setAttribute("data-floating-placement",r)}})}),e.state="opened",e.getSetting("event")==="click"&&gi.call(this,e),e}class es extends Rt{constructor(i={}){super({...li,...i});L(this,wt);this.trigger=null,C(this,wt,hi.bind(this))}get active(){return this.get("opened","state")}get activeHover(){return this.collection.find(i=>i.state=="opened"&&i.getSetting("event")=="hover")}async createEntry(i,s){return new mi(this,i,s)}async open(i){return ts.call(this,i)}async close(i){return we.call(this,i)}async afterMount(){document.addEventListener("keydown",w(this,wt),!1)}async beforeUnmount(){this.trigger=null}async afterUnmount(){document.removeEventListener("keydown",w(this,wt),!1)}}wt=new WeakMap,S.Drawer=qe,S.Modal=ri,S.Popover=es,S.core=_e,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})});
10
10
  //# sourceMappingURL=index.umd.cjs.map