vrembem 4.0.0-next.0 → 4.0.0-next.2

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 +1 @@
1
- {"version":3,"file":"index.umd.cjs","sources":["../../core/dist/index.js","../../checkbox/dist/index.js","../../drawer/dist/index.js","../../modal/dist/index.js","../../popover/dist/index.js"],"sourcesContent":["var b = (t, e, n) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + n);\n};\nvar o = (t, e, n) => (b(t, e, \"read from private field\"), n ? n.call(t) : e.get(t)), f = (t, e, n) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, n);\n}, a = (t, e, n, i) => (b(t, e, \"write to private field\"), i ? i.call(t, n) : e.set(t, n), n);\nvar r;\nclass $ {\n constructor(e, n) {\n f(this, r, void 0);\n this.value = e, a(this, r, n), this.mql = null;\n }\n get handler() {\n return o(this, r);\n }\n // Unmount existing handler before setting a new one.\n set handler(e) {\n this.mql && (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", o(this, r)) : this.mql.removeListener(o(this, r))), a(this, r, e);\n }\n mount(e, n) {\n return e && (this.value = e), n && a(this, r, n), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), typeof this.mql.addEventListener == \"function\" ? this.mql.addEventListener(\"change\", o(this, r)) : this.mql.addListener(o(this, r)), o(this, r).call(this, this.mql), this) : this;\n }\n unmount() {\n return this.mql ? (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", o(this, r)) : this.mql.removeListener(o(this, r)), this.value = null, a(this, r, null), this.mql = null, this) : this;\n }\n}\nr = new WeakMap();\nclass T {\n constructor() {\n this.collection = [];\n }\n async register(e) {\n return await this.deregister(e), this.collection.push(e), this.collection;\n }\n async deregister(e) {\n const n = this.collection.findIndex((i) => i === e);\n if (n >= 0) {\n const i = this.collection[n];\n Object.getOwnPropertyNames(i).forEach((l) => {\n delete i[l];\n }), this.collection.splice(n, 1);\n }\n return this.collection;\n }\n async registerCollection(e) {\n return await Promise.all(Array.from(e, (n) => {\n this.register(n);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(e, n = \"id\") {\n return this.collection.find((i) => i[n] === e);\n }\n}\nconst s = {\n inert: \":not([inert]):not([inert] *)\",\n negTabIndex: ':not([tabindex^=\"-\"])',\n disabled: \":not(:disabled)\"\n}, v = [\n `a[href]${s.inert}${s.negTabIndex}`,\n `area[href]${s.inert}${s.negTabIndex}`,\n `input:not([type=\"hidden\"]):not([type=\"radio\"])${s.inert}${s.negTabIndex}${s.disabled}`,\n `input[type=\"radio\"]${s.inert}${s.negTabIndex}${s.disabled}`,\n `select${s.inert}${s.negTabIndex}${s.disabled}`,\n `textarea${s.inert}${s.negTabIndex}${s.disabled}`,\n `button${s.inert}${s.negTabIndex}${s.disabled}`,\n `details${s.inert} > summary:first-of-type${s.negTabIndex}`,\n // Discard until Firefox supports `:has()`\n // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12\n // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,\n `iframe${s.inert}${s.negTabIndex}`,\n `audio[controls]${s.inert}${s.negTabIndex}`,\n `video[controls]${s.inert}${s.negTabIndex}`,\n `[contenteditable]${s.inert}${s.negTabIndex}`,\n `[tabindex]${s.inert}${s.negTabIndex}`\n];\nvar h, d, u;\nclass x {\n constructor(e = null, n = \"[data-focus]\") {\n f(this, h, void 0);\n f(this, d, void 0);\n f(this, u, void 0);\n this.el = e, this.selectorFocus = n, a(this, d, p.bind(this)), a(this, u, g.bind(this));\n }\n get focusable() {\n return o(this, h);\n }\n set focusable(e) {\n a(this, h, e), o(this, h).length ? (document.removeEventListener(\"keydown\", o(this, u)), document.addEventListener(\"keydown\", o(this, d))) : (document.removeEventListener(\"keydown\", o(this, d)), document.addEventListener(\"keydown\", o(this, u)));\n }\n get focusableFirst() {\n return this.focusable[0];\n }\n get focusableLast() {\n return this.focusable[this.focusable.length - 1];\n }\n mount(e, n) {\n e && (this.el = e), n && (this.selectorFocus = n), this.focusable = this.getFocusable(), this.focus();\n }\n unmount() {\n this.el = null, this.focusable = [], document.removeEventListener(\"keydown\", o(this, d)), document.removeEventListener(\"keydown\", o(this, u));\n }\n focus(e = this.el, n = this.selectorFocus) {\n (e.querySelector(n) || e).focus();\n }\n getFocusable(e = this.el) {\n const n = [], i = document.activeElement, l = e.scrollTop;\n return e.querySelectorAll(v.join(\",\")).forEach((m) => {\n m.focus(), document.activeElement === m && n.push(m);\n }), e.scrollTop = l, i.focus(), n;\n }\n}\nh = new WeakMap(), d = new WeakMap(), u = new WeakMap();\nfunction p(t) {\n (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()));\n}\nfunction g(t) {\n (t.key === \"Tab\" || t.keyCode === 9) && t.preventDefault();\n}\nfunction q(t, e) {\n const i = (t.getAttribute(`data-${e}`) || \"\").replace(/'/g, '\"');\n return i ? JSON.parse(i) : {};\n}\nfunction I() {\n return getComputedStyle(document.body).getPropertyValue(\"--vrembem-variable-prefix\").trim();\n}\nfunction C(t, e = !0) {\n const n = localStorage.getItem(t), i = n ? JSON.parse(n) : {};\n return {\n get(l) {\n return l ? i[l] : i;\n },\n set(l, c) {\n return c ? i[l] = c : delete i[l], e && localStorage.setItem(t, JSON.stringify(i)), i;\n }\n };\n}\nfunction O(t, e, n) {\n const i = e.nodeType === Node.COMMENT_NODE, l = e.nodeType === Node.ELEMENT_NODE;\n if (e = i || l ? e : document.querySelector(e), i && (n = \"after\"), !e)\n throw new Error(`Not a valid teleport reference: '${e}'`);\n if (typeof e[n] != \"function\")\n throw new Error(`Not a valid teleport method: '${n}'`);\n let c = null;\n return i || (c = document.createComment(\"teleported #\" + t.id), t.before(c)), e[n](t), i && e.remove(), c;\n}\nconst S = (t, e) => new Promise((n) => {\n e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener(\"transitionend\", function i() {\n t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), n(t), this.removeEventListener(\"transitionend\", i);\n })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), n(t));\n}), F = (t, e) => new Promise((n) => {\n e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener(\"transitionend\", function i() {\n t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), n(t), this.removeEventListener(\"transitionend\", i);\n })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), n(t));\n});\nfunction y(t, e) {\n e && document.querySelectorAll(e).forEach((i) => {\n t ? i.style.overflow = \"hidden\" : i.style.removeProperty(\"overflow\");\n });\n}\nfunction L(t, e) {\n e && document.querySelectorAll(e).forEach((i) => {\n t ? (i.inert = !0, i.setAttribute(\"aria-hidden\", !0)) : (i.inert = null, i.removeAttribute(\"aria-hidden\"));\n });\n}\nfunction k(t, e) {\n L(!!t, e.selectorInert), y(!!t, e.selectorOverflow);\n}\nexport {\n $ as Breakpoint,\n T as Collection,\n x as FocusTrap,\n F as closeTransition,\n q as getConfig,\n I as getPrefix,\n C as localStore,\n S as openTransition,\n O as teleport,\n k as updateGlobalState\n};\n//# sourceMappingURL=index.js.map\n","const i = {\n autoInit: !1,\n stateAttr: \"aria-checked\",\n stateValue: \"mixed\"\n};\nclass r {\n constructor(t) {\n this.defaults = i, this.settings = { ...this.defaults, ...t }, this.__handlerClick = this.handlerClick.bind(this), this.settings.autoInit && this.init();\n }\n init(t = null) {\n t && (this.settings = { ...this.settings, ...t });\n const e = `[${this.settings.stateAttr}=\"${this.settings.stateValue}\"]`, s = document.querySelectorAll(e);\n this.setIndeterminate(s), document.addEventListener(\"click\", this.__handlerClick, !1);\n }\n destroy() {\n document.removeEventListener(\"click\", this.__handlerClick, !1);\n }\n handlerClick(t) {\n const e = `[${this.settings.stateAttr}=\"${this.settings.stateValue}\"]`, s = t.target.closest(e);\n s && (this.removeAriaState(s), this.setIndeterminate(s));\n }\n setAriaState(t, e = this.settings.stateValue) {\n t = t.forEach ? t : [t], t.forEach((s) => {\n s.setAttribute(this.settings.stateAttr, e);\n });\n }\n removeAriaState(t) {\n t = t.forEach ? t : [t], t.forEach((e) => {\n e.removeAttribute(this.settings.stateAttr);\n });\n }\n setIndeterminate(t) {\n t = t.forEach ? t : [t], t.forEach((e) => {\n e.hasAttribute(this.settings.stateAttr) ? e.indeterminate = !0 : e.indeterminate = !1;\n });\n }\n}\nexport {\n r as default\n};\n//# sourceMappingURL=index.js.map\n","var S = (t, e, s) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + s);\n};\nvar p = (t, e, s) => (S(t, e, \"read from private field\"), s ? s.call(t) : e.get(t)), E = (t, e, s) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, s);\n}, $ = (t, e, s, i) => (S(t, e, \"write to private field\"), i ? i.call(t, s) : e.set(t, s), s);\nvar I = (t, e, s) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + s);\n}, l = (t, e, s) => (I(t, e, \"read from private field\"), s ? s.call(t) : e.get(t)), w = (t, e, s) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, s);\n}, h = (t, e, s, i) => (I(t, e, \"write to private field\"), i ? i.call(t, s) : e.set(t, s), s), c;\nclass M {\n constructor(e, s) {\n w(this, c, void 0), this.value = e, h(this, c, s), this.mql = null;\n }\n get handler() {\n return l(this, c);\n }\n // Unmount existing handler before setting a new one.\n set handler(e) {\n this.mql && (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", l(this, c)) : this.mql.removeListener(l(this, c))), h(this, c, e);\n }\n mount(e, s) {\n return e && (this.value = e), s && h(this, c, s), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), typeof this.mql.addEventListener == \"function\" ? this.mql.addEventListener(\"change\", l(this, c)) : this.mql.addListener(l(this, c)), l(this, c).call(this, this.mql), this) : this;\n }\n unmount() {\n return this.mql ? (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", l(this, c)) : this.mql.removeListener(l(this, c)), this.value = null, h(this, c, null), this.mql = null, this) : this;\n }\n}\nc = /* @__PURE__ */ new WeakMap();\nclass P {\n constructor() {\n this.collection = [];\n }\n async register(e) {\n return await this.deregister(e), this.collection.push(e), this.collection;\n }\n async deregister(e) {\n const s = this.collection.findIndex((i) => i === e);\n if (s >= 0) {\n const i = this.collection[s];\n Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n }\n async registerCollection(e) {\n return await Promise.all(Array.from(e, (s) => {\n this.register(s);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(e, s = \"id\") {\n return this.collection.find((i) => i[s] === e);\n }\n}\nconst r = {\n inert: \":not([inert]):not([inert] *)\",\n negTabIndex: ':not([tabindex^=\"-\"])',\n disabled: \":not(:disabled)\"\n}, F = [\n `a[href]${r.inert}${r.negTabIndex}`,\n `area[href]${r.inert}${r.negTabIndex}`,\n `input:not([type=\"hidden\"]):not([type=\"radio\"])${r.inert}${r.negTabIndex}${r.disabled}`,\n `input[type=\"radio\"]${r.inert}${r.negTabIndex}${r.disabled}`,\n `select${r.inert}${r.negTabIndex}${r.disabled}`,\n `textarea${r.inert}${r.negTabIndex}${r.disabled}`,\n `button${r.inert}${r.negTabIndex}${r.disabled}`,\n `details${r.inert} > summary:first-of-type${r.negTabIndex}`,\n // Discard until Firefox supports `:has()`\n // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12\n // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,\n `iframe${r.inert}${r.negTabIndex}`,\n `audio[controls]${r.inert}${r.negTabIndex}`,\n `video[controls]${r.inert}${r.negTabIndex}`,\n `[contenteditable]${r.inert}${r.negTabIndex}`,\n `[tabindex]${r.inert}${r.negTabIndex}`\n];\nvar v, u, g;\nclass B {\n constructor(e = null, s = \"[data-focus]\") {\n w(this, v, void 0), w(this, u, void 0), w(this, g, void 0), this.el = e, this.selectorFocus = s, h(this, u, _.bind(this)), h(this, g, N.bind(this));\n }\n get focusable() {\n return l(this, v);\n }\n set focusable(e) {\n h(this, v, e), l(this, v).length ? (document.removeEventListener(\"keydown\", l(this, g)), document.addEventListener(\"keydown\", l(this, u))) : (document.removeEventListener(\"keydown\", l(this, u)), document.addEventListener(\"keydown\", l(this, g)));\n }\n get focusableFirst() {\n return this.focusable[0];\n }\n get focusableLast() {\n return this.focusable[this.focusable.length - 1];\n }\n mount(e, s) {\n e && (this.el = e), s && (this.selectorFocus = s), this.focusable = this.getFocusable(), this.focus();\n }\n unmount() {\n this.el = null, this.focusable = [], document.removeEventListener(\"keydown\", l(this, u)), document.removeEventListener(\"keydown\", l(this, g));\n }\n focus(e = this.el, s = this.selectorFocus) {\n (e.querySelector(s) || e).focus();\n }\n getFocusable(e = this.el) {\n const s = [], i = document.activeElement, n = e.scrollTop;\n return e.querySelectorAll(F.join(\",\")).forEach((a) => {\n a.focus(), document.activeElement === a && s.push(a);\n }), e.scrollTop = n, i.focus(), s;\n }\n}\nv = /* @__PURE__ */ new WeakMap(), u = /* @__PURE__ */ new WeakMap(), g = /* @__PURE__ */ new WeakMap();\nfunction _(t) {\n (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()));\n}\nfunction N(t) {\n (t.key === \"Tab\" || t.keyCode === 9) && t.preventDefault();\n}\nfunction K(t, e) {\n const s = (t.getAttribute(`data-${e}`) || \"\").replace(/'/g, '\"');\n return s ? JSON.parse(s) : {};\n}\nfunction W() {\n return getComputedStyle(document.body).getPropertyValue(\"--vrembem-variable-prefix\").trim();\n}\nfunction V(t, e = !0) {\n const s = localStorage.getItem(t), i = s ? JSON.parse(s) : {};\n return {\n get(n) {\n return n ? i[n] : i;\n },\n set(n, a) {\n return a ? i[n] = a : delete i[n], e && localStorage.setItem(t, JSON.stringify(i)), i;\n }\n };\n}\nconst J = (t, e) => new Promise((s) => {\n e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener(\"transitionend\", function i() {\n t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), s(t), this.removeEventListener(\"transitionend\", i);\n })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), s(t));\n}), z = (t, e) => new Promise((s) => {\n e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener(\"transitionend\", function i() {\n t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), s(t), this.removeEventListener(\"transitionend\", i);\n })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), s(t));\n});\nfunction G(t, e) {\n e && document.querySelectorAll(e).forEach((s) => {\n t ? s.style.overflow = \"hidden\" : s.style.removeProperty(\"overflow\");\n });\n}\nfunction H(t, e) {\n e && document.querySelectorAll(e).forEach((s) => {\n t ? (s.inert = !0, s.setAttribute(\"aria-hidden\", !0)) : (s.inert = null, s.removeAttribute(\"aria-hidden\"));\n });\n}\nfunction k(t, e) {\n H(!!t, e.selectorInert), G(!!t, e.selectorOverflow);\n}\nconst Q = {\n autoInit: !1,\n // Data attributes\n dataOpen: \"drawer-open\",\n dataClose: \"drawer-close\",\n dataToggle: \"drawer-toggle\",\n dataBreakpoint: \"drawer-breakpoint\",\n dataConfig: \"drawer-config\",\n // Selectors\n selectorDrawer: \".drawer\",\n selectorDialog: \".drawer__dialog\",\n selectorFocus: \"[data-focus]\",\n selectorInert: null,\n selectorOverflow: \"body\",\n // State classes\n stateOpened: \"is-opened\",\n stateOpening: \"is-opening\",\n stateClosing: \"is-closing\",\n stateClosed: \"is-closed\",\n // Classes\n classModal: \"drawer_modal\",\n // Feature toggles\n breakpoints: null,\n customEventPrefix: \"drawer:\",\n eventListeners: !0,\n store: !0,\n storeKey: \"VB:DrawerState\",\n setTabindex: !0,\n transition: !0\n};\nfunction R(t) {\n const e = t.target.closest(`\n [data-${this.settings.dataOpen}],\n [data-${this.settings.dataToggle}],\n [data-${this.settings.dataClose}]\n `);\n if (e) {\n t.preventDefault(), e.matches(`[data-${this.settings.dataToggle}]`) && e.getAttribute(`data-${this.settings.dataToggle}`).trim().split(\" \").forEach((i) => {\n const n = this.get(i);\n n.trigger = e, n.toggle();\n }), e.matches(`[data-${this.settings.dataOpen}]`) && e.getAttribute(`data-${this.settings.dataOpen}`).trim().split(\" \").forEach((i) => {\n const n = this.get(i);\n n.trigger = e, n.open();\n }), e.matches(`[data-${this.settings.dataClose}]`) && e.getAttribute(`data-${this.settings.dataClose}`).trim().split(\" \").forEach((i) => {\n if (i) {\n const n = this.get(i);\n n.trigger = e, n.close();\n } else {\n const n = t.target.closest(this.settings.selectorDrawer);\n n && this.close(n);\n }\n });\n return;\n }\n t.target.matches(this.settings.selectorDrawer) && this.close(t.target.id);\n}\nfunction U(t) {\n if (t.key === \"Escape\") {\n const e = this.activeModal;\n e && this.close(e);\n }\n}\nasync function L(t, e = !0) {\n if (!t)\n return this.collection;\n const s = this.collection.findIndex((i) => i.id === t.id);\n if (s >= 0) {\n const i = this.collection[s];\n e && i.state === \"opened\" && await i.close(!1), this.store.set(i.id), i.unmountBreakpoint(), Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n}\nfunction X(t) {\n const e = W(), s = t.getAttribute(`data-${this.settings.dataBreakpoint}`);\n return this.settings.breakpoints && this.settings.breakpoints[s] ? this.settings.breakpoints[s] : getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${s}`).trim() ? getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${s}`).trim() : s;\n}\nfunction y(t) {\n const e = typeof t == \"string\" ? this.get(t) : this.get(t.id);\n if (e)\n return e;\n throw new Error(`Drawer not found in collection with id of \"${t.id || t}\".`);\n}\nfunction O(t) {\n return typeof t == \"string\" ? t : typeof t.hasAttribute == \"function\" ? t.hasAttribute(`data-${this.settings.dataOpen}`) ? t.getAttribute(`data-${this.settings.dataOpen}`) : t.hasAttribute(`data-${this.settings.dataClose}`) ? t.getAttribute(`data-${this.settings.dataClose}`) || !1 : t.hasAttribute(`data-${this.settings.dataToggle}`) ? t.getAttribute(`data-${this.settings.dataToggle}`) : t.closest(this.settings.selectorDrawer) ? (t = t.closest(this.settings.selectorDrawer), t.id || !1) : !1 : t.id ? t.id : !1;\n}\nfunction Y(t) {\n const e = O.call(this, t);\n if (e) {\n const s = document.querySelector(`#${e}`), i = s ? s.querySelector(this.settings.selectorDialog) : null;\n return !s && !i ? { error: new Error(`No drawer elements found using the ID: \"${e}\".`) } : i ? { drawer: s, dialog: i } : { error: new Error(\"Drawer is missing dialog element.\") };\n } else\n return { error: new Error(\"Could not resolve the drawer ID.\") };\n}\nasync function A(t) {\n this.store.get(t.id) ? this.store.get(t.id) === \"opened\" ? await t.open(!1, !1) : await t.close(!1, !1) : t.el.classList.contains(this.settings.stateOpened) ? t.state = \"opened\" : (t.el.classList.remove(this.settings.stateOpening), t.el.classList.remove(this.settings.stateClosing), t.el.classList.add(this.settings.stateClosed));\n}\nfunction D(t) {\n 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());\n}\nasync function C(t, e, s = !0) {\n const i = y.call(this, t), n = { ...this.settings, ...i.settings };\n return e !== void 0 && (n.transition = e), i.state === \"closed\" && (i.state = \"opening\", await J(i.el, n), i.mode === \"modal\" && k(!0, n), i.state = \"opened\"), s && D.call(this, i), i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"opened\", {\n detail: this,\n bubbles: !0\n })), i;\n}\nasync function b(t, e, s = !0) {\n const i = y.call(this, t), n = { ...this.settings, ...i.settings };\n return e !== void 0 && (n.transition = e), i.state === \"opened\" && (i.state = \"closing\", document.activeElement.blur(), await z(i.el, n), i.mode === \"modal\" && k(!1, n), s && D.call(this, i), i.state = \"closed\", i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"closed\", {\n detail: this,\n bubbles: !0\n }))), i;\n}\nasync function q(t, e, s) {\n const i = y.call(this, t);\n return i.state === \"closed\" ? C.call(this, i, e, s) : b.call(this, i, e, s);\n}\nfunction Z(t) {\n switch (t.mode) {\n case \"inline\":\n return j.call(this, t);\n case \"modal\":\n return tt.call(this, t);\n default:\n throw new Error(`\"${t.mode}\" is not a valid drawer mode.`);\n }\n}\nasync function j(t) {\n return t.el.classList.remove(t.getSetting(\"classModal\")), t.dialog.removeAttribute(\"aria-modal\"), k(!1, { ...this.settings, ...t.settings }), this.focusTrap.unmount(), await A.call(this, t), t.el.dispatchEvent(new CustomEvent(t.getSetting(\"customEventPrefix\") + \"switchMode\", {\n detail: this,\n bubbles: !0\n })), t;\n}\nasync function tt(t) {\n return t.el.classList.add(t.getSetting(\"classModal\")), t.dialog.setAttribute(\"aria-modal\", \"true\"), !this.store.get(t.id) && t.el.classList.contains(t.getSetting(\"stateOpened\")) && this.store.set(t.id, \"opened\"), await b.call(this, t, !1, !1), t.el.dispatchEvent(new CustomEvent(t.getSetting(\"customEventPrefix\") + \"switchMode\", {\n detail: this,\n bubbles: !0\n })), t;\n}\nasync function et(t, e) {\n await L.call(this, t, !1);\n const s = this, i = new M(), n = {\n open(o, d) {\n return C.call(s, this, o, d);\n },\n close(o, d) {\n return b.call(s, this, o, d);\n },\n toggle(o, d) {\n return q.call(s, this, o, d);\n },\n deregister() {\n return L.call(s, this);\n },\n mountBreakpoint() {\n const o = this.breakpoint, d = this.handleBreakpoint.bind(this);\n return i.mount(o, d), this;\n },\n unmountBreakpoint() {\n return i.unmount(), this;\n },\n handleBreakpoint(o) {\n return this.mode = o.matches ? \"inline\" : \"modal\", this;\n },\n getSetting(o) {\n return o in this.settings ? this.settings[o] : s.settings[o];\n }\n }, a = {\n id: t.id,\n el: t,\n dialog: e,\n trigger: null,\n settings: K(t, this.settings.dataConfig),\n get breakpoint() {\n return X.call(s, t);\n },\n get state() {\n return T;\n },\n set state(o) {\n T = o, (o === \"opened\" || o === \"closed\") && this.mode === \"inline\" && s.store.set(this.id, this.state);\n },\n get mode() {\n return x;\n },\n set mode(o) {\n x = o, Z.call(s, this);\n },\n ...n\n };\n let T = t.classList.contains(a.getSetting(\"stateOpened\")) ? \"opened\" : \"closed\", x = t.classList.contains(a.getSetting(\"classModal\")) ? \"modal\" : \"inline\";\n return a.mode === \"modal\" ? a.dialog.setAttribute(\"aria-modal\", \"true\") : a.dialog.removeAttribute(\"aria-modal\"), a.getSetting(\"setTabindex\") && a.dialog.setAttribute(\"tabindex\", \"-1\"), this.collection.push(a), a.breakpoint ? a.mountBreakpoint() : await A.call(this, a), a;\n}\nvar f, m;\nclass it extends P {\n constructor(s) {\n super();\n E(this, f, void 0);\n E(this, m, void 0);\n this.defaults = Q, this.settings = { ...this.defaults, ...s }, this.focusTrap = new B(), this.store = V(this.settings.storeKey, this.settings.store), $(this, f, R.bind(this)), $(this, m, U.bind(this)), this.settings.autoInit && this.init();\n }\n get activeModal() {\n return this.collection.find((s) => s.state === \"opened\" && s.mode === \"modal\");\n }\n async init(s = null) {\n s && (this.settings = { ...this.settings, ...s });\n const i = document.querySelectorAll(this.settings.selectorDrawer);\n return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(), this;\n }\n async destroy() {\n return await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(), this;\n }\n initEventListeners() {\n document.addEventListener(\"click\", p(this, f), !1), document.addEventListener(\"keydown\", p(this, m), !1);\n }\n destroyEventListeners() {\n document.removeEventListener(\"click\", p(this, f), !1), document.removeEventListener(\"keydown\", p(this, m), !1);\n }\n register(s) {\n const i = Y.call(this, s);\n return i.error ? Promise.reject(i.error) : et.call(this, i.drawer, i.dialog);\n }\n deregister(s) {\n const i = this.get(O.call(this, s));\n return L.call(this, i);\n }\n open(s, i, n) {\n return C.call(this, s, i, n);\n }\n close(s, i, n) {\n return b.call(this, s, i, n);\n }\n toggle(s, i, n) {\n return q.call(this, s, i, n);\n }\n}\nf = new WeakMap(), m = new WeakMap();\nexport {\n it as default\n};\n//# sourceMappingURL=index.js.map\n","var I = (t, e, s) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + s);\n};\nvar f = (t, e, s) => (I(t, e, \"read from private field\"), s ? s.call(t) : e.get(t)), v = (t, e, s) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, s);\n}, b = (t, e, s, i) => (I(t, e, \"write to private field\"), i ? i.call(t, s) : e.set(t, s), s);\nvar k = (t, e, s) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + s);\n}, o = (t, e, s) => (k(t, e, \"read from private field\"), s ? s.call(t) : e.get(t)), y = (t, e, s) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, s);\n}, E = (t, e, s, i) => (k(t, e, \"write to private field\"), i ? i.call(t, s) : e.set(t, s), s);\nclass A {\n constructor() {\n this.collection = [];\n }\n async register(e) {\n return await this.deregister(e), this.collection.push(e), this.collection;\n }\n async deregister(e) {\n const s = this.collection.findIndex((i) => i === e);\n if (s >= 0) {\n const i = this.collection[s];\n Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n }\n async registerCollection(e) {\n return await Promise.all(Array.from(e, (s) => {\n this.register(s);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(e, s = \"id\") {\n return this.collection.find((i) => i[s] === e);\n }\n}\nconst l = {\n inert: \":not([inert]):not([inert] *)\",\n negTabIndex: ':not([tabindex^=\"-\"])',\n disabled: \":not(:disabled)\"\n}, S = [\n `a[href]${l.inert}${l.negTabIndex}`,\n `area[href]${l.inert}${l.negTabIndex}`,\n `input:not([type=\"hidden\"]):not([type=\"radio\"])${l.inert}${l.negTabIndex}${l.disabled}`,\n `input[type=\"radio\"]${l.inert}${l.negTabIndex}${l.disabled}`,\n `select${l.inert}${l.negTabIndex}${l.disabled}`,\n `textarea${l.inert}${l.negTabIndex}${l.disabled}`,\n `button${l.inert}${l.negTabIndex}${l.disabled}`,\n `details${l.inert} > summary:first-of-type${l.negTabIndex}`,\n // Discard until Firefox supports `:has()`\n // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12\n // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,\n `iframe${l.inert}${l.negTabIndex}`,\n `audio[controls]${l.inert}${l.negTabIndex}`,\n `video[controls]${l.inert}${l.negTabIndex}`,\n `[contenteditable]${l.inert}${l.negTabIndex}`,\n `[tabindex]${l.inert}${l.negTabIndex}`\n];\nvar g, c, d;\nclass M {\n constructor(e = null, s = \"[data-focus]\") {\n y(this, g, void 0), y(this, c, void 0), y(this, d, void 0), this.el = e, this.selectorFocus = s, E(this, c, R.bind(this)), E(this, d, N.bind(this));\n }\n get focusable() {\n return o(this, g);\n }\n set focusable(e) {\n E(this, g, e), o(this, g).length ? (document.removeEventListener(\"keydown\", o(this, d)), document.addEventListener(\"keydown\", o(this, c))) : (document.removeEventListener(\"keydown\", o(this, c)), document.addEventListener(\"keydown\", o(this, d)));\n }\n get focusableFirst() {\n return this.focusable[0];\n }\n get focusableLast() {\n return this.focusable[this.focusable.length - 1];\n }\n mount(e, s) {\n e && (this.el = e), s && (this.selectorFocus = s), this.focusable = this.getFocusable(), this.focus();\n }\n unmount() {\n this.el = null, this.focusable = [], document.removeEventListener(\"keydown\", o(this, c)), document.removeEventListener(\"keydown\", o(this, d));\n }\n focus(e = this.el, s = this.selectorFocus) {\n (e.querySelector(s) || e).focus();\n }\n getFocusable(e = this.el) {\n const s = [], i = document.activeElement, n = e.scrollTop;\n return e.querySelectorAll(S.join(\",\")).forEach((r) => {\n r.focus(), document.activeElement === r && s.push(r);\n }), e.scrollTop = n, i.focus(), s;\n }\n}\ng = /* @__PURE__ */ new WeakMap(), c = /* @__PURE__ */ new WeakMap(), d = /* @__PURE__ */ new WeakMap();\nfunction R(t) {\n (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()));\n}\nfunction N(t) {\n (t.key === \"Tab\" || t.keyCode === 9) && t.preventDefault();\n}\nfunction P(t, e) {\n const s = (t.getAttribute(`data-${e}`) || \"\").replace(/'/g, '\"');\n return s ? JSON.parse(s) : {};\n}\nfunction T(t, e, s) {\n const i = e.nodeType === Node.COMMENT_NODE, n = e.nodeType === Node.ELEMENT_NODE;\n if (e = i || n ? e : document.querySelector(e), i && (s = \"after\"), !e)\n throw new Error(`Not a valid teleport reference: '${e}'`);\n if (typeof e[s] != \"function\")\n throw new Error(`Not a valid teleport method: '${s}'`);\n let r = null;\n return i || (r = document.createComment(\"teleported #\" + t.id), t.before(r)), e[s](t), i && e.remove(), r;\n}\nconst D = (t, e) => new Promise((s) => {\n e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener(\"transitionend\", function i() {\n t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), s(t), this.removeEventListener(\"transitionend\", i);\n })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), s(t));\n}), F = (t, e) => new Promise((s) => {\n e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener(\"transitionend\", function i() {\n t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), s(t), this.removeEventListener(\"transitionend\", i);\n })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), s(t));\n});\nfunction q(t, e) {\n e && document.querySelectorAll(e).forEach((s) => {\n t ? s.style.overflow = \"hidden\" : s.style.removeProperty(\"overflow\");\n });\n}\nfunction z(t, e) {\n e && document.querySelectorAll(e).forEach((s) => {\n t ? (s.inert = !0, s.setAttribute(\"aria-hidden\", !0)) : (s.inert = null, s.removeAttribute(\"aria-hidden\"));\n });\n}\nfunction W(t, e) {\n z(!!t, e.selectorInert), q(!!t, e.selectorOverflow);\n}\nconst _ = {\n autoInit: !1,\n // Data attributes\n dataOpen: \"modal-open\",\n dataClose: \"modal-close\",\n dataReplace: \"modal-replace\",\n dataConfig: \"modal-config\",\n // Selectors\n selectorModal: \".modal\",\n selectorDialog: \".modal__dialog\",\n selectorRequired: '[role=\"alertdialog\"]',\n selectorFocus: \"[data-focus]\",\n selectorInert: null,\n selectorOverflow: \"body\",\n // State classes\n stateOpened: \"is-opened\",\n stateOpening: \"is-opening\",\n stateClosing: \"is-closing\",\n stateClosed: \"is-closed\",\n // Feature settings\n customEventPrefix: \"modal:\",\n eventListeners: !0,\n teleport: null,\n teleportMethod: \"append\",\n setTabindex: !0,\n transition: !0\n};\nfunction L(t) {\n const e = typeof t == \"string\" ? this.get(t) : this.get(t.id);\n if (e)\n return e;\n throw new Error(`Modal not found in collection with id of \"${t.id || t}\".`);\n}\nfunction p(t) {\n return typeof t == \"string\" ? t : typeof t.hasAttribute == \"function\" ? t.hasAttribute(`data-${this.settings.dataOpen}`) ? t.getAttribute(`data-${this.settings.dataOpen}`) : t.hasAttribute(`data-${this.settings.dataClose}`) ? t.getAttribute(`data-${this.settings.dataClose}`) || !1 : t.hasAttribute(`data-${this.settings.dataReplace}`) ? t.getAttribute(`data-${this.settings.dataReplace}`) : t.closest(this.settings.selectorModal) ? (t = t.closest(this.settings.selectorModal), t.id || !1) : !1 : t.id ? t.id : !1;\n}\nfunction G(t) {\n const e = p.call(this, t);\n if (e) {\n const s = document.querySelector(`#${e}`), i = s ? s.querySelector(this.settings.selectorDialog) : null;\n return !s && !i ? { error: new Error(`No modal elements found using the ID: \"${e}\".`) } : i ? { modal: s, dialog: i } : { error: new Error(\"Modal is missing dialog element.\") };\n } else\n return { error: new Error(\"Could not resolve the modal ID.\") };\n}\nfunction m() {\n this.active ? this.focusTrap.mount(this.active.dialog, this.settings.selectorFocus) : (this.trigger && (this.trigger.focus(), this.trigger = null), this.focusTrap.unmount());\n}\nasync function K(t) {\n let e = t.target.closest(\n `[data-${this.settings.dataOpen}], [data-${this.settings.dataReplace}]`\n );\n if (e) {\n t.preventDefault(), t.target.closest(this.settings.selectorModal) || (this.trigger = e);\n const i = this.get(p.call(this, e));\n return e.matches(`[data-${this.settings.dataOpen}]`) ? i.open() : i.replace();\n }\n if (e = t.target.closest(`[data-${this.settings.dataClose}]`), e) {\n t.preventDefault();\n const s = e.getAttribute(`data-${this.settings.dataClose}`);\n return s === \"*\" ? this.closeAll() : this.close(s);\n }\n if (t.target.matches(this.settings.selectorModal) && !t.target.querySelector(this.settings.selectorRequired))\n return this.close(p.call(this, t.target));\n}\nfunction J(t) {\n if (t.key === \"Escape\" && this.active && !this.active.dialog.matches(this.settings.selectorRequired))\n return this.close();\n}\nasync function w(t, e = !0) {\n if (!t)\n return this.collection;\n const s = this.collection.findIndex((i) => i.id === t.id);\n if (s >= 0) {\n const i = this.collection[s];\n e && i.state === \"opened\" ? await i.close(!1) : this.stack.remove(i), i.getSetting(\"teleport\") && i.teleportReturn(), Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n}\nasync function x(t, e, s = !0) {\n const i = L.call(this, t), n = { ...this.settings, ...i.settings };\n return e !== void 0 && (n.transition = e), this.stack.moveToTop(i), i.state === \"closed\" && (i.state = \"opening\", this.stack.add(i), await D(i.el, n), i.state = \"opened\"), s && m.call(this), i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"opened\", {\n detail: this,\n bubbles: !0\n })), i;\n}\nasync function C(t, e, s = !0) {\n const i = t ? L.call(this, t) : this.active;\n if (i && i.state === \"opened\") {\n i.state = \"closing\";\n const n = { ...this.settings, ...i.settings };\n e !== void 0 && (n.transition = e), document.activeElement.blur(), await F(i.el, n), this.stack.remove(i), s && m.call(this), i.state = \"closed\", i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"closed\", {\n detail: this,\n bubbles: !0\n }));\n }\n return i;\n}\nasync function $(t, e) {\n const s = [];\n return await Promise.all(this.stack.value.map(async (i) => {\n t && t === i.id ? Promise.resolve() : s.push(await C.call(this, i, e, !1)), i.trigger = null;\n })), s;\n}\nasync function O(t, e, s = !0) {\n const i = L.call(this, t);\n let n, r;\n return i.state === \"opened\" ? (n = i, r = await $.call(this, i.id, e)) : (n = x.call(this, i, e, !1), r = $.call(this, !1, e), await Promise.all([n, r])), s && m.call(this), { opened: n, closed: r };\n}\nasync function B(t, e) {\n await w.call(this, t, !1);\n const s = this, i = {\n open(r, a) {\n return x.call(s, this, r, a);\n },\n close(r, a) {\n return C.call(s, this, r, a);\n },\n replace(r, a) {\n return O.call(s, this, r, a);\n },\n deregister() {\n return w.call(s, this);\n },\n teleport(r = this.getSetting(\"teleport\"), a = this.getSetting(\"teleportMethod\")) {\n return this.returnRef ? (console.error(\"Element has already been teleported:\", this.el), !1) : (this.returnRef = T(this.el, r, a), this.el);\n },\n teleportReturn() {\n return this.returnRef ? (this.returnRef = T(this.el, this.returnRef), this.el) : (console.error(\"No return reference found:\", this.el), !1);\n },\n getSetting(r) {\n return r in this.settings ? this.settings[r] : s.settings[r];\n }\n }, n = {\n id: t.id,\n state: \"closed\",\n el: t,\n dialog: e,\n returnRef: null,\n settings: P(t, this.settings.dataConfig),\n ...i\n };\n return n.dialog.setAttribute(\"aria-modal\", \"true\"), n.dialog.hasAttribute(\"role\") || n.dialog.setAttribute(\"role\", \"dialog\"), n.getSetting(\"setTabindex\") && n.dialog.setAttribute(\"tabindex\", \"-1\"), n.getSetting(\"teleport\") && n.teleport(), this.collection.push(n), n.el.classList.contains(this.settings.stateOpened) ? await n.open(!1) : (n.el.classList.remove(this.settings.stateOpening), n.el.classList.remove(this.settings.stateClosing), n.el.classList.add(this.settings.stateClosed)), n;\n}\nfunction H(t) {\n const e = [];\n return {\n get value() {\n return [...e];\n },\n get top() {\n return e[e.length - 1];\n },\n updateIndex() {\n e.forEach((s, i) => {\n s.el.style.zIndex = null;\n const n = getComputedStyle(s.el)[\"z-index\"];\n s.el.style.zIndex = parseInt(n) + i + 1;\n });\n },\n updateGlobalState() {\n W(this.top, t), this.updateIndex();\n },\n add(s) {\n s.el.style.zIndex = null;\n const i = getComputedStyle(s.el)[\"z-index\"];\n s.el.style.zIndex = parseInt(i) + e.length + 1, e.push(s), this.updateGlobalState();\n },\n remove(s) {\n const i = e.findIndex((n) => n.id === s.id);\n i >= 0 && (s.el.style.zIndex = null, e.splice(i, 1), this.updateGlobalState());\n },\n moveToTop(s) {\n const i = e.findIndex((n) => n.id === s.id);\n i >= 0 && (e.splice(i, 1), this.add(s));\n }\n };\n}\nvar u, h;\nclass U extends A {\n constructor(s) {\n super();\n v(this, u, void 0);\n v(this, h, void 0);\n this.defaults = _, this.settings = { ...this.defaults, ...s }, this.trigger = null, this.focusTrap = new M(), this.stack = H(this.settings), b(this, u, K.bind(this)), b(this, h, J.bind(this)), this.settings.autoInit && this.init();\n }\n get active() {\n return this.stack.top;\n }\n async init(s) {\n s && (this.settings = { ...this.settings, ...s });\n const i = document.querySelectorAll(this.settings.selectorModal);\n return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(), this;\n }\n async destroy() {\n return this.trigger = null, await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(), this;\n }\n initEventListeners() {\n document.addEventListener(\"click\", f(this, u), !1), document.addEventListener(\"keydown\", f(this, h), !1);\n }\n destroyEventListeners() {\n document.removeEventListener(\"click\", f(this, u), !1), document.removeEventListener(\"keydown\", f(this, h), !1);\n }\n register(s) {\n const i = G.call(this, s);\n return i.error ? Promise.reject(i.error) : B.call(this, i.modal, i.dialog);\n }\n deregister(s) {\n const i = this.get(p.call(this, s));\n return w.call(this, i);\n }\n open(s, i, n) {\n return x.call(this, s, i, n);\n }\n close(s, i, n) {\n return C.call(this, s, i, n);\n }\n replace(s, i, n) {\n return O.call(this, s, i, n);\n }\n async closeAll(s = !1, i, n = !0) {\n const r = await $.call(this, s, i);\n return n && m.call(this), r;\n }\n}\nu = new WeakMap(), h = new WeakMap();\nexport {\n U as default\n};\n//# sourceMappingURL=index.js.map\n","var Ue = (e, t, r) => {\n if (!t.has(e))\n throw TypeError(\"Cannot \" + r);\n};\nvar Ae = (e, t, r) => (Ue(e, t, \"read from private field\"), r ? r.call(e) : t.get(e)), _e = (e, t, r) => {\n if (t.has(e))\n throw TypeError(\"Cannot add the same private member more than once\");\n t instanceof WeakSet ? t.add(e) : t.set(e, r);\n}, Ke = (e, t, r, i) => (Ue(e, t, \"write to private field\"), i ? i.call(e, r) : t.set(e, r), r);\nclass Ct {\n constructor() {\n this.collection = [];\n }\n async register(t) {\n return await this.deregister(t), this.collection.push(t), this.collection;\n }\n async deregister(t) {\n const r = this.collection.findIndex((i) => i === t);\n if (r >= 0) {\n const i = this.collection[r];\n Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(r, 1);\n }\n return this.collection;\n }\n async registerCollection(t) {\n return await Promise.all(Array.from(t, (r) => {\n this.register(r);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(t, r = \"id\") {\n return this.collection.find((i) => i[r] === t);\n }\n}\nfunction kt() {\n return getComputedStyle(document.body).getPropertyValue(\"--vrembem-variable-prefix\").trim();\n}\nconst Dt = {\n autoInit: !1,\n // Selectors\n selectorPopover: \".popover\",\n selectorArrow: \".popover__arrow\",\n // State classes\n stateActive: \"is-active\",\n // Feature settings\n eventListeners: !0,\n eventType: \"click\",\n placement: \"bottom\"\n};\nfunction ot(e, t) {\n const r = getComputedStyle(e), i = {\n placement: t.placement,\n event: t.eventType,\n offset: 0,\n \"overflow-padding\": 0,\n \"flip-padding\": 0,\n \"arrow-element\": t.selectorArrow,\n \"arrow-padding\": 0\n };\n for (const n in i) {\n const o = kt(), l = r.getPropertyValue(`--${o}popover-${n}`).trim();\n l && (i[n] = l);\n }\n return i;\n}\nfunction Pe(e) {\n let t;\n const r = typeof e == \"string\" ? e.trim().split(\" \") : [e];\n switch (r.forEach(function(i, n) {\n r[n] = parseInt(i, 10);\n }), r.length) {\n case 1:\n t = r[0];\n break;\n case 2:\n t = {\n top: r[0],\n right: r[1],\n bottom: r[0],\n left: r[1]\n };\n break;\n case 3:\n t = {\n top: r[0],\n right: r[1],\n bottom: r[2],\n left: r[1]\n };\n break;\n case 4:\n t = {\n top: r[0],\n right: r[1],\n bottom: r[2],\n left: r[3]\n };\n break;\n default:\n t = !1;\n break;\n }\n return t;\n}\nfunction Rt(e) {\n return [{\n name: \"offset\",\n options: {\n offset: [0, parseInt(e.offset, 10)]\n }\n }, {\n name: \"preventOverflow\",\n options: {\n padding: Pe(e[\"overflow-padding\"])\n }\n }, {\n name: \"flip\",\n options: {\n padding: Pe(e[\"flip-padding\"])\n }\n }, {\n name: \"arrow\",\n options: {\n element: e[\"arrow-element\"],\n padding: Pe(e[\"arrow-padding\"])\n }\n }];\n}\nfunction at(e) {\n const t = typeof e == \"string\" ? this.get(e) : this.get(e.id);\n if (t)\n return t;\n throw new Error(`Popover not found in collection with id of \"${e}\".`);\n}\nfunction st(e) {\n return typeof e == \"string\" ? e : typeof e.hasAttribute == \"function\" ? e.closest(this.settings.selectorPopover) ? (e = e.closest(this.settings.selectorPopover), e.id) : e.hasAttribute(\"aria-controls\") ? e.getAttribute(\"aria-controls\") : e.hasAttribute(\"aria-describedby\") ? e.getAttribute(\"aria-describedby\") : !1 : e.id ? e.id : !1;\n}\nfunction Bt(e) {\n const t = st.call(this, e);\n if (t) {\n const r = document.querySelector(`#${t}`), i = document.querySelector(`[aria-controls=\"${t}\"]`) || document.querySelector(`[aria-describedby=\"${t}\"]`);\n return !i && !r ? { error: new Error(`No popover elements found using the ID: \"${t}\".`) } : i ? r ? { popover: r, trigger: i } : { error: new Error(\"No popover associated with the provided popover trigger.\") } : { error: new Error(\"No popover trigger associated with the provided popover.\") };\n } else\n return { error: new Error(\"Could not resolve the popover ID.\") };\n}\nasync function ke(e) {\n const t = e ? at.call(this, e) : await ct.call(this);\n return t && t.state === \"opened\" && (t.el.classList.remove(this.settings.stateActive), t.trigger.hasAttribute(\"aria-controls\") && t.trigger.setAttribute(\"aria-expanded\", \"false\"), t.popper.setOptions({\n modifiers: [{ name: \"eventListeners\", enabled: !1 }]\n }), t.state = \"closed\", t.trigger === this.trigger && (this.trigger = null)), t;\n}\nasync function ct() {\n const e = [];\n return await Promise.all(this.collection.map(async (t) => {\n t.state === \"opened\" && e.push(await ke.call(this, t));\n })), e;\n}\nfunction lt(e) {\n e.state == \"opened\" && setTimeout(() => {\n const t = e.el.closest(\":hover\") === e.el || e.trigger.closest(\":hover\") === e.trigger, r = document.activeElement.closest(\n `#${e.id}, [aria-controls=\"${e.id}\"], [aria-describedby=\"${e.id}\"]`\n );\n return !t && !r && e.close(), e;\n }, 1);\n}\nfunction Tt(e) {\n e.state === \"opened\" ? e.close() : (this.trigger = e.trigger, e.open(), ft.call(this, e));\n}\nfunction St(e) {\n switch (e.key) {\n case \"Escape\":\n this.trigger && this.trigger.focus(), ct.call(this);\n return;\n case \"Tab\":\n this.collection.forEach((t) => {\n lt.call(this, t);\n });\n return;\n default:\n return;\n }\n}\nfunction ft(e) {\n const t = this;\n document.addEventListener(\"click\", function r(i) {\n i.target.closest(\n `#${e.id}, [aria-controls=\"${e.id}\"], [aria-describedby=\"${e.id}\"]`\n ) ? e.el && !e.el.classList.contains(t.settings.stateActive) && this.removeEventListener(\"click\", r) : (e.el && e.el.classList.contains(t.settings.stateActive) && e.close(), this.removeEventListener(\"click\", r));\n });\n}\nvar k = \"top\", S = \"bottom\", M = \"right\", D = \"left\", De = \"auto\", le = [k, S, M, D], Q = \"start\", se = \"end\", Mt = \"clippingParents\", ut = \"viewport\", ne = \"popper\", Wt = \"reference\", Ge = /* @__PURE__ */ le.reduce(function(e, t) {\n return e.concat([t + \"-\" + Q, t + \"-\" + se]);\n}, []), pt = /* @__PURE__ */ [].concat(le, [De]).reduce(function(e, t) {\n return e.concat([t, t + \"-\" + Q, t + \"-\" + se]);\n}, []), jt = \"beforeRead\", Ht = \"read\", Nt = \"afterRead\", It = \"beforeMain\", Vt = \"main\", Ft = \"afterMain\", qt = \"beforeWrite\", Xt = \"write\", Yt = \"afterWrite\", zt = [jt, Ht, Nt, It, Vt, Ft, qt, Xt, Yt];\nfunction N(e) {\n return e ? (e.nodeName || \"\").toLowerCase() : null;\n}\nfunction B(e) {\n if (e == null)\n return window;\n if (e.toString() !== \"[object Window]\") {\n var t = e.ownerDocument;\n return t && t.defaultView || window;\n }\n return e;\n}\nfunction K(e) {\n var t = B(e).Element;\n return e instanceof t || e instanceof Element;\n}\nfunction T(e) {\n var t = B(e).HTMLElement;\n return e instanceof t || e instanceof HTMLElement;\n}\nfunction Re(e) {\n if (typeof ShadowRoot > \"u\")\n return !1;\n var t = B(e).ShadowRoot;\n return e instanceof t || e instanceof ShadowRoot;\n}\nfunction Ut(e) {\n var t = e.state;\n Object.keys(t.elements).forEach(function(r) {\n var i = t.styles[r] || {}, n = t.attributes[r] || {}, o = t.elements[r];\n !T(o) || !N(o) || (Object.assign(o.style, i), Object.keys(n).forEach(function(l) {\n var s = n[l];\n s === !1 ? o.removeAttribute(l) : o.setAttribute(l, s === !0 ? \"\" : s);\n }));\n });\n}\nfunction _t(e) {\n var t = e.state, r = {\n popper: {\n position: t.options.strategy,\n left: \"0\",\n top: \"0\",\n margin: \"0\"\n },\n arrow: {\n position: \"absolute\"\n },\n reference: {}\n };\n return Object.assign(t.elements.popper.style, r.popper), t.styles = r, t.elements.arrow && Object.assign(t.elements.arrow.style, r.arrow), function() {\n Object.keys(t.elements).forEach(function(i) {\n var n = t.elements[i], o = t.attributes[i] || {}, l = Object.keys(t.styles.hasOwnProperty(i) ? t.styles[i] : r[i]), s = l.reduce(function(a, f) {\n return a[f] = \"\", a;\n }, {});\n !T(n) || !N(n) || (Object.assign(n.style, s), Object.keys(o).forEach(function(a) {\n n.removeAttribute(a);\n }));\n });\n };\n}\nconst Kt = {\n name: \"applyStyles\",\n enabled: !0,\n phase: \"write\",\n fn: Ut,\n effect: _t,\n requires: [\"computeStyles\"]\n};\nfunction H(e) {\n return e.split(\"-\")[0];\n}\nvar _ = Math.max, ye = Math.min, Z = Math.round;\nfunction Le() {\n var e = navigator.userAgentData;\n return e != null && e.brands && Array.isArray(e.brands) ? e.brands.map(function(t) {\n return t.brand + \"/\" + t.version;\n }).join(\" \") : navigator.userAgent;\n}\nfunction dt() {\n return !/^((?!chrome|android).)*safari/i.test(Le());\n}\nfunction ee(e, t, r) {\n t === void 0 && (t = !1), r === void 0 && (r = !1);\n var i = e.getBoundingClientRect(), n = 1, o = 1;\n t && T(e) && (n = e.offsetWidth > 0 && Z(i.width) / e.offsetWidth || 1, o = e.offsetHeight > 0 && Z(i.height) / e.offsetHeight || 1);\n var l = K(e) ? B(e) : window, s = l.visualViewport, a = !dt() && r, f = (i.left + (a && s ? s.offsetLeft : 0)) / n, c = (i.top + (a && s ? s.offsetTop : 0)) / o, h = i.width / n, y = i.height / o;\n return {\n width: h,\n height: y,\n top: c,\n right: f + h,\n bottom: c + y,\n left: f,\n x: f,\n y: c\n };\n}\nfunction Be(e) {\n var t = ee(e), r = e.offsetWidth, i = e.offsetHeight;\n return Math.abs(t.width - r) <= 1 && (r = t.width), Math.abs(t.height - i) <= 1 && (i = t.height), {\n x: e.offsetLeft,\n y: e.offsetTop,\n width: r,\n height: i\n };\n}\nfunction vt(e, t) {\n var r = t.getRootNode && t.getRootNode();\n if (e.contains(t))\n return !0;\n if (r && Re(r)) {\n var i = t;\n do {\n if (i && e.isSameNode(i))\n return !0;\n i = i.parentNode || i.host;\n } while (i);\n }\n return !1;\n}\nfunction I(e) {\n return B(e).getComputedStyle(e);\n}\nfunction Gt(e) {\n return [\"table\", \"td\", \"th\"].indexOf(N(e)) >= 0;\n}\nfunction F(e) {\n return ((K(e) ? e.ownerDocument : (\n // $FlowFixMe[prop-missing]\n e.document\n )) || window.document).documentElement;\n}\nfunction we(e) {\n return N(e) === \"html\" ? e : (\n // this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n e.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n e.parentNode || // DOM Element detected\n (Re(e) ? e.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n F(e)\n );\n}\nfunction Je(e) {\n return !T(e) || // https://github.com/popperjs/popper-core/issues/837\n I(e).position === \"fixed\" ? null : e.offsetParent;\n}\nfunction Jt(e) {\n var t = /firefox/i.test(Le()), r = /Trident/i.test(Le());\n if (r && T(e)) {\n var i = I(e);\n if (i.position === \"fixed\")\n return null;\n }\n var n = we(e);\n for (Re(n) && (n = n.host); T(n) && [\"html\", \"body\"].indexOf(N(n)) < 0; ) {\n var o = I(n);\n if (o.transform !== \"none\" || o.perspective !== \"none\" || o.contain === \"paint\" || [\"transform\", \"perspective\"].indexOf(o.willChange) !== -1 || t && o.willChange === \"filter\" || t && o.filter && o.filter !== \"none\")\n return n;\n n = n.parentNode;\n }\n return null;\n}\nfunction fe(e) {\n for (var t = B(e), r = Je(e); r && Gt(r) && I(r).position === \"static\"; )\n r = Je(r);\n return r && (N(r) === \"html\" || N(r) === \"body\" && I(r).position === \"static\") ? t : r || Jt(e) || t;\n}\nfunction Te(e) {\n return [\"top\", \"bottom\"].indexOf(e) >= 0 ? \"x\" : \"y\";\n}\nfunction oe(e, t, r) {\n return _(e, ye(t, r));\n}\nfunction Qt(e, t, r) {\n var i = oe(e, t, r);\n return i > r ? r : i;\n}\nfunction ht() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}\nfunction gt(e) {\n return Object.assign({}, ht(), e);\n}\nfunction mt(e, t) {\n return t.reduce(function(r, i) {\n return r[i] = e, r;\n }, {});\n}\nvar Zt = function(t, r) {\n return t = typeof t == \"function\" ? t(Object.assign({}, r.rects, {\n placement: r.placement\n })) : t, gt(typeof t != \"number\" ? t : mt(t, le));\n};\nfunction er(e) {\n var t, r = e.state, i = e.name, n = e.options, o = r.elements.arrow, l = r.modifiersData.popperOffsets, s = H(r.placement), a = Te(s), f = [D, M].indexOf(s) >= 0, c = f ? \"height\" : \"width\";\n if (!(!o || !l)) {\n var h = Zt(n.padding, r), y = Be(o), u = a === \"y\" ? k : D, b = a === \"y\" ? S : M, v = r.rects.reference[c] + r.rects.reference[a] - l[a] - r.rects.popper[c], d = l[a] - r.rects.reference[a], w = fe(o), O = w ? a === \"y\" ? w.clientHeight || 0 : w.clientWidth || 0 : 0, E = v / 2 - d / 2, p = h[u], g = O - y[c] - h[b], m = O / 2 - y[c] / 2 + E, x = oe(p, m, g), L = a;\n r.modifiersData[i] = (t = {}, t[L] = x, t.centerOffset = x - m, t);\n }\n}\nfunction tr(e) {\n var t = e.state, r = e.options, i = r.element, n = i === void 0 ? \"[data-popper-arrow]\" : i;\n n != null && (typeof n == \"string\" && (n = t.elements.popper.querySelector(n), !n) || vt(t.elements.popper, n) && (t.elements.arrow = n));\n}\nconst rr = {\n name: \"arrow\",\n enabled: !0,\n phase: \"main\",\n fn: er,\n effect: tr,\n requires: [\"popperOffsets\"],\n requiresIfExists: [\"preventOverflow\"]\n};\nfunction te(e) {\n return e.split(\"-\")[1];\n}\nvar ir = {\n top: \"auto\",\n right: \"auto\",\n bottom: \"auto\",\n left: \"auto\"\n};\nfunction nr(e, t) {\n var r = e.x, i = e.y, n = t.devicePixelRatio || 1;\n return {\n x: Z(r * n) / n || 0,\n y: Z(i * n) / n || 0\n };\n}\nfunction Qe(e) {\n var t, r = e.popper, i = e.popperRect, n = e.placement, o = e.variation, l = e.offsets, s = e.position, a = e.gpuAcceleration, f = e.adaptive, c = e.roundOffsets, h = e.isFixed, y = l.x, u = y === void 0 ? 0 : y, b = l.y, v = b === void 0 ? 0 : b, d = typeof c == \"function\" ? c({\n x: u,\n y: v\n }) : {\n x: u,\n y: v\n };\n u = d.x, v = d.y;\n var w = l.hasOwnProperty(\"x\"), O = l.hasOwnProperty(\"y\"), E = D, p = k, g = window;\n if (f) {\n var m = fe(r), x = \"clientHeight\", L = \"clientWidth\";\n if (m === B(r) && (m = F(r), I(m).position !== \"static\" && s === \"absolute\" && (x = \"scrollHeight\", L = \"scrollWidth\")), m = m, n === k || (n === D || n === M) && o === se) {\n p = S;\n var P = h && m === g && g.visualViewport ? g.visualViewport.height : (\n // $FlowFixMe[prop-missing]\n m[x]\n );\n v -= P - i.height, v *= a ? 1 : -1;\n }\n if (n === D || (n === k || n === S) && o === se) {\n E = M;\n var A = h && m === g && g.visualViewport ? g.visualViewport.width : (\n // $FlowFixMe[prop-missing]\n m[L]\n );\n u -= A - i.width, u *= a ? 1 : -1;\n }\n }\n var $ = Object.assign({\n position: s\n }, f && ir), W = c === !0 ? nr({\n x: u,\n y: v\n }, B(r)) : {\n x: u,\n y: v\n };\n if (u = W.x, v = W.y, a) {\n var C;\n return Object.assign({}, $, (C = {}, C[p] = O ? \"0\" : \"\", C[E] = w ? \"0\" : \"\", C.transform = (g.devicePixelRatio || 1) <= 1 ? \"translate(\" + u + \"px, \" + v + \"px)\" : \"translate3d(\" + u + \"px, \" + v + \"px, 0)\", C));\n }\n return Object.assign({}, $, (t = {}, t[p] = O ? v + \"px\" : \"\", t[E] = w ? u + \"px\" : \"\", t.transform = \"\", t));\n}\nfunction or(e) {\n var t = e.state, r = e.options, i = r.gpuAcceleration, n = i === void 0 ? !0 : i, o = r.adaptive, l = o === void 0 ? !0 : o, s = r.roundOffsets, a = s === void 0 ? !0 : s, f = {\n placement: H(t.placement),\n variation: te(t.placement),\n popper: t.elements.popper,\n popperRect: t.rects.popper,\n gpuAcceleration: n,\n isFixed: t.options.strategy === \"fixed\"\n };\n t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, Qe(Object.assign({}, f, {\n offsets: t.modifiersData.popperOffsets,\n position: t.options.strategy,\n adaptive: l,\n roundOffsets: a\n })))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, Qe(Object.assign({}, f, {\n offsets: t.modifiersData.arrow,\n position: \"absolute\",\n adaptive: !1,\n roundOffsets: a\n })))), t.attributes.popper = Object.assign({}, t.attributes.popper, {\n \"data-popper-placement\": t.placement\n });\n}\nconst ar = {\n name: \"computeStyles\",\n enabled: !0,\n phase: \"beforeWrite\",\n fn: or,\n data: {}\n};\nvar ge = {\n passive: !0\n};\nfunction sr(e) {\n var t = e.state, r = e.instance, i = e.options, n = i.scroll, o = n === void 0 ? !0 : n, l = i.resize, s = l === void 0 ? !0 : l, a = B(t.elements.popper), f = [].concat(t.scrollParents.reference, t.scrollParents.popper);\n return o && f.forEach(function(c) {\n c.addEventListener(\"scroll\", r.update, ge);\n }), s && a.addEventListener(\"resize\", r.update, ge), function() {\n o && f.forEach(function(c) {\n c.removeEventListener(\"scroll\", r.update, ge);\n }), s && a.removeEventListener(\"resize\", r.update, ge);\n };\n}\nconst cr = {\n name: \"eventListeners\",\n enabled: !0,\n phase: \"write\",\n fn: function() {\n },\n effect: sr,\n data: {}\n};\nvar lr = {\n left: \"right\",\n right: \"left\",\n bottom: \"top\",\n top: \"bottom\"\n};\nfunction me(e) {\n return e.replace(/left|right|bottom|top/g, function(t) {\n return lr[t];\n });\n}\nvar fr = {\n start: \"end\",\n end: \"start\"\n};\nfunction Ze(e) {\n return e.replace(/start|end/g, function(t) {\n return fr[t];\n });\n}\nfunction Se(e) {\n var t = B(e), r = t.pageXOffset, i = t.pageYOffset;\n return {\n scrollLeft: r,\n scrollTop: i\n };\n}\nfunction Me(e) {\n return ee(F(e)).left + Se(e).scrollLeft;\n}\nfunction ur(e, t) {\n var r = B(e), i = F(e), n = r.visualViewport, o = i.clientWidth, l = i.clientHeight, s = 0, a = 0;\n if (n) {\n o = n.width, l = n.height;\n var f = dt();\n (f || !f && t === \"fixed\") && (s = n.offsetLeft, a = n.offsetTop);\n }\n return {\n width: o,\n height: l,\n x: s + Me(e),\n y: a\n };\n}\nfunction pr(e) {\n var t, r = F(e), i = Se(e), n = (t = e.ownerDocument) == null ? void 0 : t.body, o = _(r.scrollWidth, r.clientWidth, n ? n.scrollWidth : 0, n ? n.clientWidth : 0), l = _(r.scrollHeight, r.clientHeight, n ? n.scrollHeight : 0, n ? n.clientHeight : 0), s = -i.scrollLeft + Me(e), a = -i.scrollTop;\n return I(n || r).direction === \"rtl\" && (s += _(r.clientWidth, n ? n.clientWidth : 0) - o), {\n width: o,\n height: l,\n x: s,\n y: a\n };\n}\nfunction We(e) {\n var t = I(e), r = t.overflow, i = t.overflowX, n = t.overflowY;\n return /auto|scroll|overlay|hidden/.test(r + n + i);\n}\nfunction yt(e) {\n return [\"html\", \"body\", \"#document\"].indexOf(N(e)) >= 0 ? e.ownerDocument.body : T(e) && We(e) ? e : yt(we(e));\n}\nfunction ae(e, t) {\n var r;\n t === void 0 && (t = []);\n var i = yt(e), n = i === ((r = e.ownerDocument) == null ? void 0 : r.body), o = B(i), l = n ? [o].concat(o.visualViewport || [], We(i) ? i : []) : i, s = t.concat(l);\n return n ? s : (\n // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n s.concat(ae(we(l)))\n );\n}\nfunction $e(e) {\n return Object.assign({}, e, {\n left: e.x,\n top: e.y,\n right: e.x + e.width,\n bottom: e.y + e.height\n });\n}\nfunction dr(e, t) {\n var r = ee(e, !1, t === \"fixed\");\n return r.top = r.top + e.clientTop, r.left = r.left + e.clientLeft, r.bottom = r.top + e.clientHeight, r.right = r.left + e.clientWidth, r.width = e.clientWidth, r.height = e.clientHeight, r.x = r.left, r.y = r.top, r;\n}\nfunction et(e, t, r) {\n return t === ut ? $e(ur(e, r)) : K(t) ? dr(t, r) : $e(pr(F(e)));\n}\nfunction vr(e) {\n var t = ae(we(e)), r = [\"absolute\", \"fixed\"].indexOf(I(e).position) >= 0, i = r && T(e) ? fe(e) : e;\n return K(i) ? t.filter(function(n) {\n return K(n) && vt(n, i) && N(n) !== \"body\";\n }) : [];\n}\nfunction hr(e, t, r, i) {\n var n = t === \"clippingParents\" ? vr(e) : [].concat(t), o = [].concat(n, [r]), l = o[0], s = o.reduce(function(a, f) {\n var c = et(e, f, i);\n return a.top = _(c.top, a.top), a.right = ye(c.right, a.right), a.bottom = ye(c.bottom, a.bottom), a.left = _(c.left, a.left), a;\n }, et(e, l, i));\n return s.width = s.right - s.left, s.height = s.bottom - s.top, s.x = s.left, s.y = s.top, s;\n}\nfunction wt(e) {\n var t = e.reference, r = e.element, i = e.placement, n = i ? H(i) : null, o = i ? te(i) : null, l = t.x + t.width / 2 - r.width / 2, s = t.y + t.height / 2 - r.height / 2, a;\n switch (n) {\n case k:\n a = {\n x: l,\n y: t.y - r.height\n };\n break;\n case S:\n a = {\n x: l,\n y: t.y + t.height\n };\n break;\n case M:\n a = {\n x: t.x + t.width,\n y: s\n };\n break;\n case D:\n a = {\n x: t.x - r.width,\n y: s\n };\n break;\n default:\n a = {\n x: t.x,\n y: t.y\n };\n }\n var f = n ? Te(n) : null;\n if (f != null) {\n var c = f === \"y\" ? \"height\" : \"width\";\n switch (o) {\n case Q:\n a[f] = a[f] - (t[c] / 2 - r[c] / 2);\n break;\n case se:\n a[f] = a[f] + (t[c] / 2 - r[c] / 2);\n break;\n }\n }\n return a;\n}\nfunction ce(e, t) {\n t === void 0 && (t = {});\n var r = t, i = r.placement, n = i === void 0 ? e.placement : i, o = r.strategy, l = o === void 0 ? e.strategy : o, s = r.boundary, a = s === void 0 ? Mt : s, f = r.rootBoundary, c = f === void 0 ? ut : f, h = r.elementContext, y = h === void 0 ? ne : h, u = r.altBoundary, b = u === void 0 ? !1 : u, v = r.padding, d = v === void 0 ? 0 : v, w = gt(typeof d != \"number\" ? d : mt(d, le)), O = y === ne ? Wt : ne, E = e.rects.popper, p = e.elements[b ? O : y], g = hr(K(p) ? p : p.contextElement || F(e.elements.popper), a, c, l), m = ee(e.elements.reference), x = wt({\n reference: m,\n element: E,\n strategy: \"absolute\",\n placement: n\n }), L = $e(Object.assign({}, E, x)), P = y === ne ? L : m, A = {\n top: g.top - P.top + w.top,\n bottom: P.bottom - g.bottom + w.bottom,\n left: g.left - P.left + w.left,\n right: P.right - g.right + w.right\n }, $ = e.modifiersData.offset;\n if (y === ne && $) {\n var W = $[n];\n Object.keys(A).forEach(function(C) {\n var q = [M, S].indexOf(C) >= 0 ? 1 : -1, X = [k, S].indexOf(C) >= 0 ? \"y\" : \"x\";\n A[C] += W[X] * q;\n });\n }\n return A;\n}\nfunction gr(e, t) {\n t === void 0 && (t = {});\n var r = t, i = r.placement, n = r.boundary, o = r.rootBoundary, l = r.padding, s = r.flipVariations, a = r.allowedAutoPlacements, f = a === void 0 ? pt : a, c = te(i), h = c ? s ? Ge : Ge.filter(function(b) {\n return te(b) === c;\n }) : le, y = h.filter(function(b) {\n return f.indexOf(b) >= 0;\n });\n y.length === 0 && (y = h);\n var u = y.reduce(function(b, v) {\n return b[v] = ce(e, {\n placement: v,\n boundary: n,\n rootBoundary: o,\n padding: l\n })[H(v)], b;\n }, {});\n return Object.keys(u).sort(function(b, v) {\n return u[b] - u[v];\n });\n}\nfunction mr(e) {\n if (H(e) === De)\n return [];\n var t = me(e);\n return [Ze(e), t, Ze(t)];\n}\nfunction yr(e) {\n var t = e.state, r = e.options, i = e.name;\n if (!t.modifiersData[i]._skip) {\n for (var n = r.mainAxis, o = n === void 0 ? !0 : n, l = r.altAxis, s = l === void 0 ? !0 : l, a = r.fallbackPlacements, f = r.padding, c = r.boundary, h = r.rootBoundary, y = r.altBoundary, u = r.flipVariations, b = u === void 0 ? !0 : u, v = r.allowedAutoPlacements, d = t.options.placement, w = H(d), O = w === d, E = a || (O || !b ? [me(d)] : mr(d)), p = [d].concat(E).reduce(function(G, V) {\n return G.concat(H(V) === De ? gr(t, {\n placement: V,\n boundary: c,\n rootBoundary: h,\n padding: f,\n flipVariations: b,\n allowedAutoPlacements: v\n }) : V);\n }, []), g = t.rects.reference, m = t.rects.popper, x = /* @__PURE__ */ new Map(), L = !0, P = p[0], A = 0; A < p.length; A++) {\n var $ = p[A], W = H($), C = te($) === Q, q = [k, S].indexOf(W) >= 0, X = q ? \"width\" : \"height\", R = ce(t, {\n placement: $,\n boundary: c,\n rootBoundary: h,\n altBoundary: y,\n padding: f\n }), j = q ? C ? M : D : C ? S : k;\n g[X] > m[X] && (j = me(j));\n var ue = me(j), Y = [];\n if (o && Y.push(R[W] <= 0), s && Y.push(R[j] <= 0, R[ue] <= 0), Y.every(function(G) {\n return G;\n })) {\n P = $, L = !1;\n break;\n }\n x.set($, Y);\n }\n if (L)\n for (var pe = b ? 3 : 1, be = function(V) {\n var ie = p.find(function(ve) {\n var z = x.get(ve);\n if (z)\n return z.slice(0, V).every(function(xe) {\n return xe;\n });\n });\n if (ie)\n return P = ie, \"break\";\n }, re = pe; re > 0; re--) {\n var de = be(re);\n if (de === \"break\")\n break;\n }\n t.placement !== P && (t.modifiersData[i]._skip = !0, t.placement = P, t.reset = !0);\n }\n}\nconst wr = {\n name: \"flip\",\n enabled: !0,\n phase: \"main\",\n fn: yr,\n requiresIfExists: [\"offset\"],\n data: {\n _skip: !1\n }\n};\nfunction tt(e, t, r) {\n return r === void 0 && (r = {\n x: 0,\n y: 0\n }), {\n top: e.top - t.height - r.y,\n right: e.right - t.width + r.x,\n bottom: e.bottom - t.height + r.y,\n left: e.left - t.width - r.x\n };\n}\nfunction rt(e) {\n return [k, M, S, D].some(function(t) {\n return e[t] >= 0;\n });\n}\nfunction br(e) {\n var t = e.state, r = e.name, i = t.rects.reference, n = t.rects.popper, o = t.modifiersData.preventOverflow, l = ce(t, {\n elementContext: \"reference\"\n }), s = ce(t, {\n altBoundary: !0\n }), a = tt(l, i), f = tt(s, n, o), c = rt(a), h = rt(f);\n t.modifiersData[r] = {\n referenceClippingOffsets: a,\n popperEscapeOffsets: f,\n isReferenceHidden: c,\n hasPopperEscaped: h\n }, t.attributes.popper = Object.assign({}, t.attributes.popper, {\n \"data-popper-reference-hidden\": c,\n \"data-popper-escaped\": h\n });\n}\nconst xr = {\n name: \"hide\",\n enabled: !0,\n phase: \"main\",\n requiresIfExists: [\"preventOverflow\"],\n fn: br\n};\nfunction Or(e, t, r) {\n var i = H(e), n = [D, k].indexOf(i) >= 0 ? -1 : 1, o = typeof r == \"function\" ? r(Object.assign({}, t, {\n placement: e\n })) : r, l = o[0], s = o[1];\n return l = l || 0, s = (s || 0) * n, [D, M].indexOf(i) >= 0 ? {\n x: s,\n y: l\n } : {\n x: l,\n y: s\n };\n}\nfunction Er(e) {\n var t = e.state, r = e.options, i = e.name, n = r.offset, o = n === void 0 ? [0, 0] : n, l = pt.reduce(function(c, h) {\n return c[h] = Or(h, t.rects, o), c;\n }, {}), s = l[t.placement], a = s.x, f = s.y;\n t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a, t.modifiersData.popperOffsets.y += f), t.modifiersData[i] = l;\n}\nconst Ar = {\n name: \"offset\",\n enabled: !0,\n phase: \"main\",\n requires: [\"popperOffsets\"],\n fn: Er\n};\nfunction Pr(e) {\n var t = e.state, r = e.name;\n t.modifiersData[r] = wt({\n reference: t.rects.reference,\n element: t.rects.popper,\n strategy: \"absolute\",\n placement: t.placement\n });\n}\nconst Lr = {\n name: \"popperOffsets\",\n enabled: !0,\n phase: \"read\",\n fn: Pr,\n data: {}\n};\nfunction $r(e) {\n return e === \"x\" ? \"y\" : \"x\";\n}\nfunction Cr(e) {\n var t = e.state, r = e.options, i = e.name, n = r.mainAxis, o = n === void 0 ? !0 : n, l = r.altAxis, s = l === void 0 ? !1 : l, a = r.boundary, f = r.rootBoundary, c = r.altBoundary, h = r.padding, y = r.tether, u = y === void 0 ? !0 : y, b = r.tetherOffset, v = b === void 0 ? 0 : b, d = ce(t, {\n boundary: a,\n rootBoundary: f,\n padding: h,\n altBoundary: c\n }), w = H(t.placement), O = te(t.placement), E = !O, p = Te(w), g = $r(p), m = t.modifiersData.popperOffsets, x = t.rects.reference, L = t.rects.popper, P = typeof v == \"function\" ? v(Object.assign({}, t.rects, {\n placement: t.placement\n })) : v, A = typeof P == \"number\" ? {\n mainAxis: P,\n altAxis: P\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, P), $ = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, W = {\n x: 0,\n y: 0\n };\n if (m) {\n if (o) {\n var C, q = p === \"y\" ? k : D, X = p === \"y\" ? S : M, R = p === \"y\" ? \"height\" : \"width\", j = m[p], ue = j + d[q], Y = j - d[X], pe = u ? -L[R] / 2 : 0, be = O === Q ? x[R] : L[R], re = O === Q ? -L[R] : -x[R], de = t.elements.arrow, G = u && de ? Be(de) : {\n width: 0,\n height: 0\n }, V = t.modifiersData[\"arrow#persistent\"] ? t.modifiersData[\"arrow#persistent\"].padding : ht(), ie = V[q], ve = V[X], z = oe(0, x[R], G[R]), xe = E ? x[R] / 2 - pe - z - ie - A.mainAxis : be - z - ie - A.mainAxis, Ot = E ? -x[R] / 2 + pe + z + ve + A.mainAxis : re + z + ve + A.mainAxis, Oe = t.elements.arrow && fe(t.elements.arrow), Et = Oe ? p === \"y\" ? Oe.clientTop || 0 : Oe.clientLeft || 0 : 0, He = (C = $ == null ? void 0 : $[p]) != null ? C : 0, At = j + xe - He - Et, Pt = j + Ot - He, Ne = oe(u ? ye(ue, At) : ue, j, u ? _(Y, Pt) : Y);\n m[p] = Ne, W[p] = Ne - j;\n }\n if (s) {\n var Ie, Lt = p === \"x\" ? k : D, $t = p === \"x\" ? S : M, U = m[g], he = g === \"y\" ? \"height\" : \"width\", Ve = U + d[Lt], Fe = U - d[$t], Ee = [k, D].indexOf(w) !== -1, qe = (Ie = $ == null ? void 0 : $[g]) != null ? Ie : 0, Xe = Ee ? Ve : U - x[he] - L[he] - qe + A.altAxis, Ye = Ee ? U + x[he] + L[he] - qe - A.altAxis : Fe, ze = u && Ee ? Qt(Xe, U, Ye) : oe(u ? Xe : Ve, U, u ? Ye : Fe);\n m[g] = ze, W[g] = ze - U;\n }\n t.modifiersData[i] = W;\n }\n}\nconst kr = {\n name: \"preventOverflow\",\n enabled: !0,\n phase: \"main\",\n fn: Cr,\n requiresIfExists: [\"offset\"]\n};\nfunction Dr(e) {\n return {\n scrollLeft: e.scrollLeft,\n scrollTop: e.scrollTop\n };\n}\nfunction Rr(e) {\n return e === B(e) || !T(e) ? Se(e) : Dr(e);\n}\nfunction Br(e) {\n var t = e.getBoundingClientRect(), r = Z(t.width) / e.offsetWidth || 1, i = Z(t.height) / e.offsetHeight || 1;\n return r !== 1 || i !== 1;\n}\nfunction Tr(e, t, r) {\n r === void 0 && (r = !1);\n var i = T(t), n = T(t) && Br(t), o = F(t), l = ee(e, n, r), s = {\n scrollLeft: 0,\n scrollTop: 0\n }, a = {\n x: 0,\n y: 0\n };\n return (i || !i && !r) && ((N(t) !== \"body\" || // https://github.com/popperjs/popper-core/issues/1078\n We(o)) && (s = Rr(t)), T(t) ? (a = ee(t, !0), a.x += t.clientLeft, a.y += t.clientTop) : o && (a.x = Me(o))), {\n x: l.left + s.scrollLeft - a.x,\n y: l.top + s.scrollTop - a.y,\n width: l.width,\n height: l.height\n };\n}\nfunction Sr(e) {\n var t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), i = [];\n e.forEach(function(o) {\n t.set(o.name, o);\n });\n function n(o) {\n r.add(o.name);\n var l = [].concat(o.requires || [], o.requiresIfExists || []);\n l.forEach(function(s) {\n if (!r.has(s)) {\n var a = t.get(s);\n a && n(a);\n }\n }), i.push(o);\n }\n return e.forEach(function(o) {\n r.has(o.name) || n(o);\n }), i;\n}\nfunction Mr(e) {\n var t = Sr(e);\n return zt.reduce(function(r, i) {\n return r.concat(t.filter(function(n) {\n return n.phase === i;\n }));\n }, []);\n}\nfunction Wr(e) {\n var t;\n return function() {\n return t || (t = new Promise(function(r) {\n Promise.resolve().then(function() {\n t = void 0, r(e());\n });\n })), t;\n };\n}\nfunction jr(e) {\n var t = e.reduce(function(r, i) {\n var n = r[i.name];\n return r[i.name] = n ? Object.assign({}, n, i, {\n options: Object.assign({}, n.options, i.options),\n data: Object.assign({}, n.data, i.data)\n }) : i, r;\n }, {});\n return Object.keys(t).map(function(r) {\n return t[r];\n });\n}\nvar it = {\n placement: \"bottom\",\n modifiers: [],\n strategy: \"absolute\"\n};\nfunction nt() {\n for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++)\n t[r] = arguments[r];\n return !t.some(function(i) {\n return !(i && typeof i.getBoundingClientRect == \"function\");\n });\n}\nfunction Hr(e) {\n e === void 0 && (e = {});\n var t = e, r = t.defaultModifiers, i = r === void 0 ? [] : r, n = t.defaultOptions, o = n === void 0 ? it : n;\n return function(s, a, f) {\n f === void 0 && (f = o);\n var c = {\n placement: \"bottom\",\n orderedModifiers: [],\n options: Object.assign({}, it, o),\n modifiersData: {},\n elements: {\n reference: s,\n popper: a\n },\n attributes: {},\n styles: {}\n }, h = [], y = !1, u = {\n state: c,\n setOptions: function(w) {\n var O = typeof w == \"function\" ? w(c.options) : w;\n v(), c.options = Object.assign({}, o, c.options, O), c.scrollParents = {\n reference: K(s) ? ae(s) : s.contextElement ? ae(s.contextElement) : [],\n popper: ae(a)\n };\n var E = Mr(jr([].concat(i, c.options.modifiers)));\n return c.orderedModifiers = E.filter(function(p) {\n return p.enabled;\n }), b(), u.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function() {\n if (!y) {\n var w = c.elements, O = w.reference, E = w.popper;\n if (nt(O, E)) {\n c.rects = {\n reference: Tr(O, fe(E), c.options.strategy === \"fixed\"),\n popper: Be(E)\n }, c.reset = !1, c.placement = c.options.placement, c.orderedModifiers.forEach(function(A) {\n return c.modifiersData[A.name] = Object.assign({}, A.data);\n });\n for (var p = 0; p < c.orderedModifiers.length; p++) {\n if (c.reset === !0) {\n c.reset = !1, p = -1;\n continue;\n }\n var g = c.orderedModifiers[p], m = g.fn, x = g.options, L = x === void 0 ? {} : x, P = g.name;\n typeof m == \"function\" && (c = m({\n state: c,\n options: L,\n name: P,\n instance: u\n }) || c);\n }\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: Wr(function() {\n return new Promise(function(d) {\n u.forceUpdate(), d(c);\n });\n }),\n destroy: function() {\n v(), y = !0;\n }\n };\n if (!nt(s, a))\n return u;\n u.setOptions(f).then(function(d) {\n !y && f.onFirstUpdate && f.onFirstUpdate(d);\n });\n function b() {\n c.orderedModifiers.forEach(function(d) {\n var w = d.name, O = d.options, E = O === void 0 ? {} : O, p = d.effect;\n if (typeof p == \"function\") {\n var g = p({\n state: c,\n name: w,\n instance: u,\n options: E\n }), m = function() {\n };\n h.push(g || m);\n }\n });\n }\n function v() {\n h.forEach(function(d) {\n return d();\n }), h = [];\n }\n return u;\n };\n}\nvar Nr = [cr, Lr, ar, Kt, Ar, wr, kr, rr, xr], Ir = /* @__PURE__ */ Hr({\n defaultModifiers: Nr\n});\nasync function Ce(e) {\n if (!e)\n return this.collection;\n const t = this.collection.findIndex((r) => r.id === e.id);\n if (t >= 0) {\n const r = this.collection[t];\n r.state === \"opened\" && r.close(), r.popper.destroy(), bt(r), Object.getOwnPropertyNames(r).forEach((i) => {\n delete r[i];\n }), this.collection.splice(t, 1);\n }\n return this.collection;\n}\nfunction bt(e) {\n return e.__eventListeners && (e.__eventListeners.forEach((t) => {\n t.el.forEach((r) => {\n t.type.forEach((i) => {\n e[r].removeEventListener(i, t.listener, !1);\n });\n });\n }), delete e.__eventListeners), e;\n}\nasync function je(e) {\n const t = at.call(this, e);\n return t.el.classList.add(this.settings.stateActive), t.trigger.hasAttribute(\"aria-controls\") && t.trigger.setAttribute(\"aria-expanded\", \"true\"), t.config = ot(t.el, this.settings), t.popper.setOptions({\n placement: t.config.placement,\n modifiers: [\n { name: \"eventListeners\", enabled: !0 },\n ...Rt(t.config)\n ]\n }), t.popper.update(), t.state = \"opened\", t;\n}\nasync function Vr(e, t) {\n Ce.call(this, e);\n const r = this, i = {\n open() {\n return je.call(r, this);\n },\n close() {\n return ke.call(r, this);\n },\n deregister() {\n return Ce.call(r, this);\n }\n }, n = {\n id: e.id,\n state: \"closed\",\n el: e,\n trigger: t,\n popper: Ir(t, e),\n config: ot(e, this.settings),\n ...i\n };\n return n.trigger.hasAttribute(\"aria-controls\") && n.trigger.setAttribute(\"aria-expanded\", \"false\"), xt.call(this, n), this.collection.push(n), n.el.classList.contains(this.settings.stateActive) && (await n.open(), ft.call(this, n)), n;\n}\nfunction xt(e) {\n return e.__eventListeners || (e.config.event === \"hover\" ? (e.__eventListeners = [{\n el: [\"trigger\"],\n type: [\"mouseenter\", \"focus\"],\n listener: je.bind(this, e)\n }, {\n el: [\"el\", \"trigger\"],\n type: [\"mouseleave\", \"focusout\"],\n listener: lt.bind(this, e)\n }], e.__eventListeners.forEach((r) => {\n r.el.forEach((i) => {\n r.type.forEach((n) => {\n e[i].addEventListener(n, r.listener, !1);\n });\n });\n })) : (e.__eventListeners = [{\n el: [\"trigger\"],\n type: [\"click\"],\n listener: Tt.bind(this, e)\n }], e.__eventListeners.forEach((r) => {\n r.el.forEach((i) => {\n r.type.forEach((n) => {\n e[i].addEventListener(n, r.listener, !1);\n });\n });\n }))), e;\n}\nvar J;\nclass qr extends Ct {\n constructor(r) {\n super();\n _e(this, J, void 0);\n this.defaults = Dt, this.settings = { ...this.defaults, ...r }, this.trigger = null, Ke(this, J, St.bind(this)), this.settings.autoInit && this.init();\n }\n async init(r) {\n r && (this.settings = { ...this.settings, ...r });\n const i = document.querySelectorAll(this.settings.selectorPopover);\n return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(!1), this;\n }\n async destroy() {\n return this.trigger = null, await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(!1), this;\n }\n initEventListeners(r = !0) {\n r && this.collection.forEach((i) => {\n xt.call(this, i);\n }), document.addEventListener(\"keydown\", Ae(this, J), !1);\n }\n destroyEventListeners(r = !0) {\n r && this.collection.forEach((i) => {\n bt(i);\n }), document.removeEventListener(\"keydown\", Ae(this, J), !1);\n }\n register(r) {\n const i = Bt.call(this, r);\n return i.error ? Promise.reject(i.error) : Vr.call(this, i.popover, i.trigger);\n }\n deregister(r) {\n const i = this.get(st.call(this, r));\n return Ce.call(this, i);\n }\n open(r) {\n return je.call(this, r);\n }\n close(r) {\n return ke.call(this, r);\n }\n}\nJ = new WeakMap();\nexport {\n qr as default\n};\n//# sourceMappingURL=index.js.map\n"],"names":["b","o","f","i","r","l","v","h","d","u","p","g","m","q","I","C","c","O","S","F","y","L","k","s","E","$","w","_","N","a","K","W","J","z","G","H","Q","R","U","A","D","Z","tt","et","M","T","x","P","B","X","V","j","Y"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.cjs","sources":["../../core/dist/index.js","../../checkbox/dist/index.js","../../drawer/dist/index.js","../../modal/dist/index.js","../../popover/dist/index.js"],"sourcesContent":["var b = (t, e, n) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + n);\n};\nvar o = (t, e, n) => (b(t, e, \"read from private field\"), n ? n.call(t) : e.get(t)), h = (t, e, n) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, n);\n}, a = (t, e, n, i) => (b(t, e, \"write to private field\"), i ? i.call(t, n) : e.set(t, n), n);\nvar l;\nclass $ {\n constructor(e, n) {\n h(this, l, void 0);\n this.value = e, a(this, l, n), this.mql = null;\n }\n get handler() {\n return o(this, l);\n }\n // Unmount existing handler before setting a new one.\n set handler(e) {\n this.mql && (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", o(this, l)) : this.mql.removeListener(o(this, l))), a(this, l, e);\n }\n mount(e, n) {\n return e && (this.value = e), n && a(this, l, n), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), typeof this.mql.addEventListener == \"function\" ? this.mql.addEventListener(\"change\", o(this, l)) : this.mql.addListener(o(this, l)), o(this, l).call(this, this.mql), this) : this;\n }\n unmount() {\n return this.mql ? (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", o(this, l)) : this.mql.removeListener(o(this, l)), this.value = null, a(this, l, null), this.mql = null, this) : this;\n }\n}\nl = new WeakMap();\nclass T {\n constructor() {\n this.collection = [];\n }\n async register(e) {\n return await this.deregister(e), this.collection.push(e), this.collection;\n }\n async deregister(e) {\n const n = this.collection.findIndex((i) => i === e);\n if (n >= 0) {\n const i = this.collection[n];\n Object.getOwnPropertyNames(i).forEach((r) => {\n delete i[r];\n }), this.collection.splice(n, 1);\n }\n return this.collection;\n }\n async registerCollection(e) {\n return await Promise.all(Array.from(e, (n) => {\n this.register(n);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(e, n = \"id\") {\n return this.collection.find((i) => i[n] === e);\n }\n}\nconst s = {\n inert: \":not([inert]):not([inert] *)\",\n negTabIndex: ':not([tabindex^=\"-\"])',\n disabled: \":not(:disabled)\"\n}, v = [\n `a[href]${s.inert}${s.negTabIndex}`,\n `area[href]${s.inert}${s.negTabIndex}`,\n `input:not([type=\"hidden\"]):not([type=\"radio\"])${s.inert}${s.negTabIndex}${s.disabled}`,\n `input[type=\"radio\"]${s.inert}${s.negTabIndex}${s.disabled}`,\n `select${s.inert}${s.negTabIndex}${s.disabled}`,\n `textarea${s.inert}${s.negTabIndex}${s.disabled}`,\n `button${s.inert}${s.negTabIndex}${s.disabled}`,\n `details${s.inert} > summary:first-of-type${s.negTabIndex}`,\n // Discard until Firefox supports `:has()`\n // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12\n // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,\n `iframe${s.inert}${s.negTabIndex}`,\n `audio[controls]${s.inert}${s.negTabIndex}`,\n `video[controls]${s.inert}${s.negTabIndex}`,\n `[contenteditable]${s.inert}${s.negTabIndex}`,\n `[tabindex]${s.inert}${s.negTabIndex}`\n];\nvar f, d, u;\nclass x {\n constructor(e = null, n = \"[data-focus]\") {\n h(this, f, void 0);\n h(this, d, void 0);\n h(this, u, void 0);\n this.el = e, this.selectorFocus = n, a(this, d, g.bind(this)), a(this, u, p.bind(this));\n }\n get focusable() {\n return o(this, f);\n }\n set focusable(e) {\n a(this, f, e), o(this, f).length ? (document.removeEventListener(\"keydown\", o(this, u)), document.addEventListener(\"keydown\", o(this, d))) : (document.removeEventListener(\"keydown\", o(this, d)), document.addEventListener(\"keydown\", o(this, u)));\n }\n get focusableFirst() {\n return this.focusable[0];\n }\n get focusableLast() {\n return this.focusable[this.focusable.length - 1];\n }\n mount(e, n) {\n e && (this.el = e), n && (this.selectorFocus = n), this.focusable = this.getFocusable(), this.focus();\n }\n unmount() {\n this.el = null, this.focusable = [], document.removeEventListener(\"keydown\", o(this, d)), document.removeEventListener(\"keydown\", o(this, u));\n }\n focus(e = this.el, n = this.selectorFocus) {\n (e.querySelector(n) || e).focus();\n }\n getFocusable(e = this.el) {\n const n = [], i = document.activeElement, r = e.scrollTop;\n return e.querySelectorAll(v.join(\",\")).forEach((m) => {\n m.focus(), document.activeElement === m && n.push(m);\n }), e.scrollTop = r, i.focus(), n;\n }\n}\nf = new WeakMap(), d = new WeakMap(), u = new WeakMap();\nfunction g(t) {\n (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()));\n}\nfunction p(t) {\n (t.key === \"Tab\" || t.keyCode === 9) && t.preventDefault();\n}\nfunction q(t, e) {\n const i = (t.getAttribute(`data-${e}`) || \"\").replace(/'/g, '\"');\n return i ? JSON.parse(i) : {};\n}\nfunction I() {\n return getComputedStyle(document.body).getPropertyValue(\"--vrembem-variable-prefix\").trim();\n}\nfunction C(t, e = !0) {\n const n = localStorage.getItem(t), i = n ? JSON.parse(n) : {};\n return {\n get(r) {\n return r ? i[r] : i;\n },\n set(r, c) {\n return c ? i[r] = c : delete i[r], e && localStorage.setItem(t, JSON.stringify(i)), i;\n }\n };\n}\nfunction O(t, e, n) {\n const i = e.nodeType === Node.COMMENT_NODE, r = e.nodeType === Node.ELEMENT_NODE;\n if (e = i || r ? e : document.querySelector(e), i && (n = \"after\"), !e)\n throw new Error(`Not a valid teleport reference: '${e}'`);\n if (typeof e[n] != \"function\")\n throw new Error(`Not a valid teleport method: '${n}'`);\n let c = null;\n return i || (c = document.createComment(\"teleported #\" + t.id), t.before(c)), e[n](t), i && e.remove(), c;\n}\nconst S = (t, e) => new Promise((n) => {\n e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener(\"transitionend\", function i(r) {\n r.target == t && (t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), n(t), this.removeEventListener(\"transitionend\", i));\n })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), n(t));\n}), F = (t, e) => new Promise((n) => {\n e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener(\"transitionend\", function i(r) {\n r.target == t && (t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), n(t), this.removeEventListener(\"transitionend\", i));\n })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), n(t));\n});\nfunction y(t, e) {\n e && document.querySelectorAll(e).forEach((i) => {\n t ? i.style.overflow = \"hidden\" : i.style.removeProperty(\"overflow\");\n });\n}\nfunction L(t, e) {\n e && document.querySelectorAll(e).forEach((i) => {\n t ? (i.inert = !0, i.setAttribute(\"aria-hidden\", !0)) : (i.inert = null, i.removeAttribute(\"aria-hidden\"));\n });\n}\nfunction k(t, e) {\n L(!!t, e.selectorInert), y(!!t, e.selectorOverflow);\n}\nexport {\n $ as Breakpoint,\n T as Collection,\n x as FocusTrap,\n F as closeTransition,\n q as getConfig,\n I as getPrefix,\n C as localStore,\n S as openTransition,\n O as teleport,\n k as updateGlobalState\n};\n//# sourceMappingURL=index.js.map\n","const i = {\n autoInit: !1,\n stateAttr: \"aria-checked\",\n stateValue: \"mixed\"\n};\nclass r {\n constructor(t) {\n this.defaults = i, this.settings = { ...this.defaults, ...t }, this.__handlerClick = this.handlerClick.bind(this), this.settings.autoInit && this.init();\n }\n init(t = null) {\n t && (this.settings = { ...this.settings, ...t });\n const e = `[${this.settings.stateAttr}=\"${this.settings.stateValue}\"]`, s = document.querySelectorAll(e);\n this.setIndeterminate(s), document.addEventListener(\"click\", this.__handlerClick, !1);\n }\n destroy() {\n document.removeEventListener(\"click\", this.__handlerClick, !1);\n }\n handlerClick(t) {\n const e = `[${this.settings.stateAttr}=\"${this.settings.stateValue}\"]`, s = t.target.closest(e);\n s && (this.removeAriaState(s), this.setIndeterminate(s));\n }\n setAriaState(t, e = this.settings.stateValue) {\n t = t.forEach ? t : [t], t.forEach((s) => {\n s.setAttribute(this.settings.stateAttr, e);\n });\n }\n removeAriaState(t) {\n t = t.forEach ? t : [t], t.forEach((e) => {\n e.removeAttribute(this.settings.stateAttr);\n });\n }\n setIndeterminate(t) {\n t = t.forEach ? t : [t], t.forEach((e) => {\n e.hasAttribute(this.settings.stateAttr) ? e.indeterminate = !0 : e.indeterminate = !1;\n });\n }\n}\nexport {\n r as default\n};\n//# sourceMappingURL=index.js.map\n","var S = (t, e, s) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + s);\n};\nvar p = (t, e, s) => (S(t, e, \"read from private field\"), s ? s.call(t) : e.get(t)), E = (t, e, s) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, s);\n}, $ = (t, e, s, i) => (S(t, e, \"write to private field\"), i ? i.call(t, s) : e.set(t, s), s);\nvar I = (t, e, s) => {\n if (!e.has(t))\n throw TypeError(\"Cannot \" + s);\n}, l = (t, e, s) => (I(t, e, \"read from private field\"), s ? s.call(t) : e.get(t)), w = (t, e, s) => {\n if (e.has(t))\n throw TypeError(\"Cannot add the same private member more than once\");\n e instanceof WeakSet ? e.add(t) : e.set(t, s);\n}, h = (t, e, s, i) => (I(t, e, \"write to private field\"), i ? i.call(t, s) : e.set(t, s), s), c;\nclass M {\n constructor(e, s) {\n w(this, c, void 0), this.value = e, h(this, c, s), this.mql = null;\n }\n get handler() {\n return l(this, c);\n }\n // Unmount existing handler before setting a new one.\n set handler(e) {\n this.mql && (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", l(this, c)) : this.mql.removeListener(l(this, c))), h(this, c, e);\n }\n mount(e, s) {\n return e && (this.value = e), s && h(this, c, s), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), typeof this.mql.addEventListener == \"function\" ? this.mql.addEventListener(\"change\", l(this, c)) : this.mql.addListener(l(this, c)), l(this, c).call(this, this.mql), this) : this;\n }\n unmount() {\n return this.mql ? (typeof this.mql.removeEventListener == \"function\" ? this.mql.removeEventListener(\"change\", l(this, c)) : this.mql.removeListener(l(this, c)), this.value = null, h(this, c, null), this.mql = null, this) : this;\n }\n}\nc = /* @__PURE__ */ new WeakMap();\nclass P {\n constructor() {\n this.collection = [];\n }\n async register(e) {\n return await this.deregister(e), this.collection.push(e), this.collection;\n }\n async deregister(e) {\n const s = this.collection.findIndex((i) => i === e);\n if (s >= 0) {\n const i = this.collection[s];\n Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n }\n async registerCollection(e) {\n return await Promise.all(Array.from(e, (s) => {\n this.register(s);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(e, s = \"id\") {\n return this.collection.find((i) => i[s] === e);\n }\n}\nconst r = {\n inert: \":not([inert]):not([inert] *)\",\n negTabIndex: ':not([tabindex^=\"-\"])',\n disabled: \":not(:disabled)\"\n}, F = [\n `a[href]${r.inert}${r.negTabIndex}`,\n `area[href]${r.inert}${r.negTabIndex}`,\n `input:not([type=\"hidden\"]):not([type=\"radio\"])${r.inert}${r.negTabIndex}${r.disabled}`,\n `input[type=\"radio\"]${r.inert}${r.negTabIndex}${r.disabled}`,\n `select${r.inert}${r.negTabIndex}${r.disabled}`,\n `textarea${r.inert}${r.negTabIndex}${r.disabled}`,\n `button${r.inert}${r.negTabIndex}${r.disabled}`,\n `details${r.inert} > summary:first-of-type${r.negTabIndex}`,\n // Discard until Firefox supports `:has()`\n // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12\n // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,\n `iframe${r.inert}${r.negTabIndex}`,\n `audio[controls]${r.inert}${r.negTabIndex}`,\n `video[controls]${r.inert}${r.negTabIndex}`,\n `[contenteditable]${r.inert}${r.negTabIndex}`,\n `[tabindex]${r.inert}${r.negTabIndex}`\n];\nvar v, u, g;\nclass B {\n constructor(e = null, s = \"[data-focus]\") {\n w(this, v, void 0), w(this, u, void 0), w(this, g, void 0), this.el = e, this.selectorFocus = s, h(this, u, _.bind(this)), h(this, g, N.bind(this));\n }\n get focusable() {\n return l(this, v);\n }\n set focusable(e) {\n h(this, v, e), l(this, v).length ? (document.removeEventListener(\"keydown\", l(this, g)), document.addEventListener(\"keydown\", l(this, u))) : (document.removeEventListener(\"keydown\", l(this, u)), document.addEventListener(\"keydown\", l(this, g)));\n }\n get focusableFirst() {\n return this.focusable[0];\n }\n get focusableLast() {\n return this.focusable[this.focusable.length - 1];\n }\n mount(e, s) {\n e && (this.el = e), s && (this.selectorFocus = s), this.focusable = this.getFocusable(), this.focus();\n }\n unmount() {\n this.el = null, this.focusable = [], document.removeEventListener(\"keydown\", l(this, u)), document.removeEventListener(\"keydown\", l(this, g));\n }\n focus(e = this.el, s = this.selectorFocus) {\n (e.querySelector(s) || e).focus();\n }\n getFocusable(e = this.el) {\n const s = [], i = document.activeElement, n = e.scrollTop;\n return e.querySelectorAll(F.join(\",\")).forEach((a) => {\n a.focus(), document.activeElement === a && s.push(a);\n }), e.scrollTop = n, i.focus(), s;\n }\n}\nv = /* @__PURE__ */ new WeakMap(), u = /* @__PURE__ */ new WeakMap(), g = /* @__PURE__ */ new WeakMap();\nfunction _(t) {\n (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()));\n}\nfunction N(t) {\n (t.key === \"Tab\" || t.keyCode === 9) && t.preventDefault();\n}\nfunction K(t, e) {\n const s = (t.getAttribute(`data-${e}`) || \"\").replace(/'/g, '\"');\n return s ? JSON.parse(s) : {};\n}\nfunction W() {\n return getComputedStyle(document.body).getPropertyValue(\"--vrembem-variable-prefix\").trim();\n}\nfunction V(t, e = !0) {\n const s = localStorage.getItem(t), i = s ? JSON.parse(s) : {};\n return {\n get(n) {\n return n ? i[n] : i;\n },\n set(n, a) {\n return a ? i[n] = a : delete i[n], e && localStorage.setItem(t, JSON.stringify(i)), i;\n }\n };\n}\nconst J = (t, e) => new Promise((s) => {\n e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener(\"transitionend\", function i(n) {\n n.target == t && (t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), s(t), this.removeEventListener(\"transitionend\", i));\n })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), s(t));\n}), z = (t, e) => new Promise((s) => {\n e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener(\"transitionend\", function i(n) {\n n.target == t && (t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), s(t), this.removeEventListener(\"transitionend\", i));\n })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), s(t));\n});\nfunction G(t, e) {\n e && document.querySelectorAll(e).forEach((s) => {\n t ? s.style.overflow = \"hidden\" : s.style.removeProperty(\"overflow\");\n });\n}\nfunction H(t, e) {\n e && document.querySelectorAll(e).forEach((s) => {\n t ? (s.inert = !0, s.setAttribute(\"aria-hidden\", !0)) : (s.inert = null, s.removeAttribute(\"aria-hidden\"));\n });\n}\nfunction k(t, e) {\n H(!!t, e.selectorInert), G(!!t, e.selectorOverflow);\n}\nconst Q = {\n autoInit: !1,\n // Data attributes\n dataOpen: \"drawer-open\",\n dataClose: \"drawer-close\",\n dataToggle: \"drawer-toggle\",\n dataBreakpoint: \"drawer-breakpoint\",\n dataConfig: \"drawer-config\",\n // Selectors\n selectorDrawer: \".drawer\",\n selectorDialog: \".drawer__dialog\",\n selectorFocus: \"[data-focus]\",\n selectorInert: null,\n selectorOverflow: \"body\",\n // State classes\n stateOpened: \"is-opened\",\n stateOpening: \"is-opening\",\n stateClosing: \"is-closing\",\n stateClosed: \"is-closed\",\n // Classes\n classModal: \"drawer_modal\",\n // Feature toggles\n breakpoints: null,\n customEventPrefix: \"drawer:\",\n eventListeners: !0,\n store: !0,\n storeKey: \"VB:DrawerState\",\n setTabindex: !0,\n transition: !0\n};\nfunction R(t) {\n const e = t.target.closest(`\n [data-${this.settings.dataOpen}],\n [data-${this.settings.dataToggle}],\n [data-${this.settings.dataClose}]\n `);\n if (e) {\n t.preventDefault(), e.matches(`[data-${this.settings.dataToggle}]`) && e.getAttribute(`data-${this.settings.dataToggle}`).trim().split(\" \").forEach((i) => {\n const n = this.get(i);\n n.trigger = e, n.toggle();\n }), e.matches(`[data-${this.settings.dataOpen}]`) && e.getAttribute(`data-${this.settings.dataOpen}`).trim().split(\" \").forEach((i) => {\n const n = this.get(i);\n n.trigger = e, n.open();\n }), e.matches(`[data-${this.settings.dataClose}]`) && e.getAttribute(`data-${this.settings.dataClose}`).trim().split(\" \").forEach((i) => {\n if (i) {\n const n = this.get(i);\n n.trigger = e, n.close();\n } else {\n const n = t.target.closest(this.settings.selectorDrawer);\n n && this.close(n);\n }\n });\n return;\n }\n t.target.matches(this.settings.selectorDrawer) && this.close(t.target.id);\n}\nfunction U(t) {\n if (t.key === \"Escape\") {\n const e = this.activeModal;\n e && this.close(e);\n }\n}\nasync function L(t, e = !0) {\n if (!t)\n return this.collection;\n const s = this.collection.findIndex((i) => i.id === t.id);\n if (s >= 0) {\n const i = this.collection[s];\n e && i.state === \"opened\" && await i.close(!1), this.store.set(i.id), i.unmountBreakpoint(), Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n}\nfunction X(t) {\n const e = W(), s = t.getAttribute(`data-${this.settings.dataBreakpoint}`);\n return this.settings.breakpoints && this.settings.breakpoints[s] ? this.settings.breakpoints[s] : getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${s}`).trim() ? getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${s}`).trim() : s;\n}\nfunction y(t) {\n const e = typeof t == \"string\" ? this.get(t) : this.get(t.id);\n if (e)\n return e;\n throw new Error(`Drawer not found in collection with id of \"${t.id || t}\".`);\n}\nfunction O(t) {\n return typeof t == \"string\" ? t : typeof t.hasAttribute == \"function\" ? t.hasAttribute(`data-${this.settings.dataOpen}`) ? t.getAttribute(`data-${this.settings.dataOpen}`) : t.hasAttribute(`data-${this.settings.dataClose}`) ? t.getAttribute(`data-${this.settings.dataClose}`) || !1 : t.hasAttribute(`data-${this.settings.dataToggle}`) ? t.getAttribute(`data-${this.settings.dataToggle}`) : t.closest(this.settings.selectorDrawer) ? (t = t.closest(this.settings.selectorDrawer), t.id || !1) : !1 : t.id ? t.id : !1;\n}\nfunction Y(t) {\n const e = O.call(this, t);\n if (e) {\n const s = document.querySelector(`#${e}`), i = s ? s.querySelector(this.settings.selectorDialog) : null;\n return !s && !i ? { error: new Error(`No drawer elements found using the ID: \"${e}\".`) } : i ? { drawer: s, dialog: i } : { error: new Error(\"Drawer is missing dialog element.\") };\n } else\n return { error: new Error(\"Could not resolve the drawer ID.\") };\n}\nasync function A(t) {\n this.store.get(t.id) ? this.store.get(t.id) === \"opened\" ? await t.open(!1, !1) : await t.close(!1, !1) : t.el.classList.contains(this.settings.stateOpened) ? t.state = \"opened\" : (t.el.classList.remove(this.settings.stateOpening), t.el.classList.remove(this.settings.stateClosing), t.el.classList.add(this.settings.stateClosed));\n}\nfunction D(t) {\n 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());\n}\nasync function C(t, e, s = !0) {\n const i = y.call(this, t), n = { ...this.settings, ...i.settings };\n return e !== void 0 && (n.transition = e), i.state === \"closed\" && (i.state = \"opening\", await J(i.el, n), i.mode === \"modal\" && k(!0, n), i.state = \"opened\"), s && D.call(this, i), i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"opened\", {\n detail: this,\n bubbles: !0\n })), i;\n}\nasync function b(t, e, s = !0) {\n const i = y.call(this, t), n = { ...this.settings, ...i.settings };\n return e !== void 0 && (n.transition = e), i.state === \"opened\" && (i.state = \"closing\", document.activeElement.blur(), await z(i.el, n), i.mode === \"modal\" && k(!1, n), s && D.call(this, i), i.state = \"closed\", i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"closed\", {\n detail: this,\n bubbles: !0\n }))), i;\n}\nasync function q(t, e, s) {\n const i = y.call(this, t);\n return i.state === \"closed\" ? C.call(this, i, e, s) : b.call(this, i, e, s);\n}\nfunction Z(t) {\n switch (t.mode) {\n case \"inline\":\n return j.call(this, t);\n case \"modal\":\n return tt.call(this, t);\n default:\n throw new Error(`\"${t.mode}\" is not a valid drawer mode.`);\n }\n}\nasync function j(t) {\n return t.el.classList.remove(t.getSetting(\"classModal\")), t.dialog.removeAttribute(\"aria-modal\"), k(!1, { ...this.settings, ...t.settings }), this.focusTrap.unmount(), await A.call(this, t), t.el.dispatchEvent(new CustomEvent(t.getSetting(\"customEventPrefix\") + \"switchMode\", {\n detail: this,\n bubbles: !0\n })), t;\n}\nasync function tt(t) {\n return t.el.classList.add(t.getSetting(\"classModal\")), t.dialog.setAttribute(\"aria-modal\", \"true\"), !this.store.get(t.id) && t.el.classList.contains(t.getSetting(\"stateOpened\")) && this.store.set(t.id, \"opened\"), await b.call(this, t, !1, !1), t.el.dispatchEvent(new CustomEvent(t.getSetting(\"customEventPrefix\") + \"switchMode\", {\n detail: this,\n bubbles: !0\n })), t;\n}\nasync function et(t, e) {\n await L.call(this, t, !1);\n const s = this, i = new M(), n = {\n open(o, d) {\n return C.call(s, this, o, d);\n },\n close(o, d) {\n return b.call(s, this, o, d);\n },\n toggle(o, d) {\n return q.call(s, this, o, d);\n },\n deregister() {\n return L.call(s, this);\n },\n mountBreakpoint() {\n const o = this.breakpoint, d = this.handleBreakpoint.bind(this);\n return i.mount(o, d), this;\n },\n unmountBreakpoint() {\n return i.unmount(), this;\n },\n handleBreakpoint(o) {\n return this.mode = o.matches ? \"inline\" : \"modal\", this;\n },\n getSetting(o) {\n return o in this.settings ? this.settings[o] : s.settings[o];\n }\n }, a = {\n id: t.id,\n el: t,\n dialog: e,\n trigger: null,\n settings: K(t, this.settings.dataConfig),\n get breakpoint() {\n return X.call(s, t);\n },\n get state() {\n return T;\n },\n set state(o) {\n T = o, (o === \"opened\" || o === \"closed\") && this.mode === \"inline\" && s.store.set(this.id, this.state);\n },\n get mode() {\n return x;\n },\n set mode(o) {\n x = o, Z.call(s, this);\n },\n ...n\n };\n let T = t.classList.contains(a.getSetting(\"stateOpened\")) ? \"opened\" : \"closed\", x = t.classList.contains(a.getSetting(\"classModal\")) ? \"modal\" : \"inline\";\n return a.mode === \"modal\" ? a.dialog.setAttribute(\"aria-modal\", \"true\") : a.dialog.removeAttribute(\"aria-modal\"), a.getSetting(\"setTabindex\") && a.dialog.setAttribute(\"tabindex\", \"-1\"), this.collection.push(a), a.breakpoint ? a.mountBreakpoint() : await A.call(this, a), a;\n}\nvar f, m;\nclass it extends P {\n constructor(s) {\n super();\n E(this, f, void 0);\n E(this, m, void 0);\n this.defaults = Q, this.settings = { ...this.defaults, ...s }, this.focusTrap = new B(), this.store = V(this.settings.storeKey, this.settings.store), $(this, f, R.bind(this)), $(this, m, U.bind(this)), this.settings.autoInit && this.init();\n }\n get activeModal() {\n return this.collection.find((s) => s.state === \"opened\" && s.mode === \"modal\");\n }\n async init(s = null) {\n s && (this.settings = { ...this.settings, ...s });\n const i = document.querySelectorAll(this.settings.selectorDrawer);\n return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(), this;\n }\n async destroy() {\n return await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(), this;\n }\n initEventListeners() {\n document.addEventListener(\"click\", p(this, f), !1), document.addEventListener(\"keydown\", p(this, m), !1);\n }\n destroyEventListeners() {\n document.removeEventListener(\"click\", p(this, f), !1), document.removeEventListener(\"keydown\", p(this, m), !1);\n }\n register(s) {\n const i = Y.call(this, s);\n return i.error ? Promise.reject(i.error) : et.call(this, i.drawer, i.dialog);\n }\n deregister(s) {\n const i = this.get(O.call(this, s));\n return L.call(this, i);\n }\n open(s, i, n) {\n return C.call(this, s, i, n);\n }\n close(s, i, n) {\n return b.call(this, s, i, n);\n }\n toggle(s, i, n) {\n return q.call(this, s, i, n);\n }\n}\nf = new WeakMap(), m = new WeakMap();\nexport {\n it as default\n};\n//# sourceMappingURL=index.js.map\n","var I = (e, t, s) => {\n if (!t.has(e))\n throw TypeError(\"Cannot \" + s);\n};\nvar f = (e, t, s) => (I(e, t, \"read from private field\"), s ? s.call(e) : t.get(e)), v = (e, t, s) => {\n if (t.has(e))\n throw TypeError(\"Cannot add the same private member more than once\");\n t instanceof WeakSet ? t.add(e) : t.set(e, s);\n}, b = (e, t, s, i) => (I(e, t, \"write to private field\"), i ? i.call(e, s) : t.set(e, s), s);\nvar k = (e, t, s) => {\n if (!t.has(e))\n throw TypeError(\"Cannot \" + s);\n}, o = (e, t, s) => (k(e, t, \"read from private field\"), s ? s.call(e) : t.get(e)), y = (e, t, s) => {\n if (t.has(e))\n throw TypeError(\"Cannot add the same private member more than once\");\n t instanceof WeakSet ? t.add(e) : t.set(e, s);\n}, E = (e, t, s, i) => (k(e, t, \"write to private field\"), i ? i.call(e, s) : t.set(e, s), s);\nclass A {\n constructor() {\n this.collection = [];\n }\n async register(t) {\n return await this.deregister(t), this.collection.push(t), this.collection;\n }\n async deregister(t) {\n const s = this.collection.findIndex((i) => i === t);\n if (s >= 0) {\n const i = this.collection[s];\n Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n }\n async registerCollection(t) {\n return await Promise.all(Array.from(t, (s) => {\n this.register(s);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(t, s = \"id\") {\n return this.collection.find((i) => i[s] === t);\n }\n}\nconst r = {\n inert: \":not([inert]):not([inert] *)\",\n negTabIndex: ':not([tabindex^=\"-\"])',\n disabled: \":not(:disabled)\"\n}, S = [\n `a[href]${r.inert}${r.negTabIndex}`,\n `area[href]${r.inert}${r.negTabIndex}`,\n `input:not([type=\"hidden\"]):not([type=\"radio\"])${r.inert}${r.negTabIndex}${r.disabled}`,\n `input[type=\"radio\"]${r.inert}${r.negTabIndex}${r.disabled}`,\n `select${r.inert}${r.negTabIndex}${r.disabled}`,\n `textarea${r.inert}${r.negTabIndex}${r.disabled}`,\n `button${r.inert}${r.negTabIndex}${r.disabled}`,\n `details${r.inert} > summary:first-of-type${r.negTabIndex}`,\n // Discard until Firefox supports `:has()`\n // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12\n // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,\n `iframe${r.inert}${r.negTabIndex}`,\n `audio[controls]${r.inert}${r.negTabIndex}`,\n `video[controls]${r.inert}${r.negTabIndex}`,\n `[contenteditable]${r.inert}${r.negTabIndex}`,\n `[tabindex]${r.inert}${r.negTabIndex}`\n];\nvar g, c, d;\nclass M {\n constructor(t = null, s = \"[data-focus]\") {\n y(this, g, void 0), y(this, c, void 0), y(this, d, void 0), this.el = t, this.selectorFocus = s, E(this, c, R.bind(this)), E(this, d, N.bind(this));\n }\n get focusable() {\n return o(this, g);\n }\n set focusable(t) {\n E(this, g, t), o(this, g).length ? (document.removeEventListener(\"keydown\", o(this, d)), document.addEventListener(\"keydown\", o(this, c))) : (document.removeEventListener(\"keydown\", o(this, c)), document.addEventListener(\"keydown\", o(this, d)));\n }\n get focusableFirst() {\n return this.focusable[0];\n }\n get focusableLast() {\n return this.focusable[this.focusable.length - 1];\n }\n mount(t, s) {\n t && (this.el = t), s && (this.selectorFocus = s), this.focusable = this.getFocusable(), this.focus();\n }\n unmount() {\n this.el = null, this.focusable = [], document.removeEventListener(\"keydown\", o(this, c)), document.removeEventListener(\"keydown\", o(this, d));\n }\n focus(t = this.el, s = this.selectorFocus) {\n (t.querySelector(s) || t).focus();\n }\n getFocusable(t = this.el) {\n const s = [], i = document.activeElement, n = t.scrollTop;\n return t.querySelectorAll(S.join(\",\")).forEach((l) => {\n l.focus(), document.activeElement === l && s.push(l);\n }), t.scrollTop = n, i.focus(), s;\n }\n}\ng = /* @__PURE__ */ new WeakMap(), c = /* @__PURE__ */ new WeakMap(), d = /* @__PURE__ */ new WeakMap();\nfunction R(e) {\n (e.key === \"Tab\" || e.keyCode === 9) && (e.shiftKey ? (document.activeElement === this.focusableFirst || document.activeElement === this.el) && (e.preventDefault(), this.focusableLast.focus()) : (document.activeElement === this.focusableLast || document.activeElement === this.el) && (e.preventDefault(), this.focusableFirst.focus()));\n}\nfunction N(e) {\n (e.key === \"Tab\" || e.keyCode === 9) && e.preventDefault();\n}\nfunction P(e, t) {\n const s = (e.getAttribute(`data-${t}`) || \"\").replace(/'/g, '\"');\n return s ? JSON.parse(s) : {};\n}\nfunction T(e, t, s) {\n const i = t.nodeType === Node.COMMENT_NODE, n = t.nodeType === Node.ELEMENT_NODE;\n if (t = i || n ? t : document.querySelector(t), i && (s = \"after\"), !t)\n throw new Error(`Not a valid teleport reference: '${t}'`);\n if (typeof t[s] != \"function\")\n throw new Error(`Not a valid teleport method: '${s}'`);\n let l = null;\n return i || (l = document.createComment(\"teleported #\" + e.id), e.before(l)), t[s](e), i && t.remove(), l;\n}\nconst D = (e, t) => new Promise((s) => {\n t.transition ? (e.classList.remove(t.stateClosed), e.classList.add(t.stateOpening), e.addEventListener(\"transitionend\", function i(n) {\n n.target == e && (e.classList.add(t.stateOpened), e.classList.remove(t.stateOpening), s(e), this.removeEventListener(\"transitionend\", i));\n })) : (e.classList.add(t.stateOpened), e.classList.remove(t.stateClosed), s(e));\n}), F = (e, t) => new Promise((s) => {\n t.transition ? (e.classList.add(t.stateClosing), e.classList.remove(t.stateOpened), e.addEventListener(\"transitionend\", function i(n) {\n n.target == e && (e.classList.remove(t.stateClosing), e.classList.add(t.stateClosed), s(e), this.removeEventListener(\"transitionend\", i));\n })) : (e.classList.add(t.stateClosed), e.classList.remove(t.stateOpened), s(e));\n});\nfunction q(e, t) {\n t && document.querySelectorAll(t).forEach((s) => {\n e ? s.style.overflow = \"hidden\" : s.style.removeProperty(\"overflow\");\n });\n}\nfunction z(e, t) {\n t && document.querySelectorAll(t).forEach((s) => {\n e ? (s.inert = !0, s.setAttribute(\"aria-hidden\", !0)) : (s.inert = null, s.removeAttribute(\"aria-hidden\"));\n });\n}\nfunction W(e, t) {\n z(!!e, t.selectorInert), q(!!e, t.selectorOverflow);\n}\nconst _ = {\n autoInit: !1,\n // Data attributes\n dataOpen: \"modal-open\",\n dataClose: \"modal-close\",\n dataReplace: \"modal-replace\",\n dataConfig: \"modal-config\",\n // Selectors\n selectorModal: \".modal\",\n selectorDialog: \".modal__dialog\",\n selectorRequired: '[role=\"alertdialog\"]',\n selectorFocus: \"[data-focus]\",\n selectorInert: null,\n selectorOverflow: \"body\",\n // State classes\n stateOpened: \"is-opened\",\n stateOpening: \"is-opening\",\n stateClosing: \"is-closing\",\n stateClosed: \"is-closed\",\n // Feature settings\n customEventPrefix: \"modal:\",\n eventListeners: !0,\n teleport: null,\n teleportMethod: \"append\",\n setTabindex: !0,\n transition: !0\n};\nfunction L(e) {\n const t = typeof e == \"string\" ? this.get(e) : this.get(e.id);\n if (t)\n return t;\n throw new Error(`Modal not found in collection with id of \"${e.id || e}\".`);\n}\nfunction p(e) {\n return typeof e == \"string\" ? e : typeof e.hasAttribute == \"function\" ? e.hasAttribute(`data-${this.settings.dataOpen}`) ? e.getAttribute(`data-${this.settings.dataOpen}`) : e.hasAttribute(`data-${this.settings.dataClose}`) ? e.getAttribute(`data-${this.settings.dataClose}`) || !1 : e.hasAttribute(`data-${this.settings.dataReplace}`) ? e.getAttribute(`data-${this.settings.dataReplace}`) : e.closest(this.settings.selectorModal) ? (e = e.closest(this.settings.selectorModal), e.id || !1) : !1 : e.id ? e.id : !1;\n}\nfunction G(e) {\n const t = p.call(this, e);\n if (t) {\n const s = document.querySelector(`#${t}`), i = s ? s.querySelector(this.settings.selectorDialog) : null;\n return !s && !i ? { error: new Error(`No modal elements found using the ID: \"${t}\".`) } : i ? { modal: s, dialog: i } : { error: new Error(\"Modal is missing dialog element.\") };\n } else\n return { error: new Error(\"Could not resolve the modal ID.\") };\n}\nfunction m() {\n this.active ? this.focusTrap.mount(this.active.dialog, this.settings.selectorFocus) : (this.trigger && (this.trigger.focus(), this.trigger = null), this.focusTrap.unmount());\n}\nasync function K(e) {\n let t = e.target.closest(\n `[data-${this.settings.dataOpen}], [data-${this.settings.dataReplace}]`\n );\n if (t) {\n e.preventDefault(), e.target.closest(this.settings.selectorModal) || (this.trigger = t);\n const i = this.get(p.call(this, t));\n return t.matches(`[data-${this.settings.dataOpen}]`) ? i.open() : i.replace();\n }\n if (t = e.target.closest(`[data-${this.settings.dataClose}]`), t) {\n e.preventDefault();\n const s = t.getAttribute(`data-${this.settings.dataClose}`);\n return s === \"*\" ? this.closeAll() : this.close(s);\n }\n if (e.target.matches(this.settings.selectorModal) && !e.target.querySelector(this.settings.selectorRequired))\n return this.close(p.call(this, e.target));\n}\nfunction J(e) {\n if (e.key === \"Escape\" && this.active && !this.active.dialog.matches(this.settings.selectorRequired))\n return this.close();\n}\nasync function w(e, t = !0) {\n if (!e)\n return this.collection;\n const s = this.collection.findIndex((i) => i.id === e.id);\n if (s >= 0) {\n const i = this.collection[s];\n t && i.state === \"opened\" ? await i.close(!1) : this.stack.remove(i), i.getSetting(\"teleport\") && i.teleportReturn(), Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(s, 1);\n }\n return this.collection;\n}\nasync function x(e, t, s = !0) {\n const i = L.call(this, e), n = { ...this.settings, ...i.settings };\n return t !== void 0 && (n.transition = t), this.stack.moveToTop(i), i.state === \"closed\" && (i.state = \"opening\", this.stack.add(i), await D(i.el, n), i.state = \"opened\"), s && m.call(this), i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"opened\", {\n detail: this,\n bubbles: !0\n })), i;\n}\nasync function C(e, t, s = !0) {\n const i = e ? L.call(this, e) : this.active;\n if (i && i.state === \"opened\") {\n i.state = \"closing\";\n const n = { ...this.settings, ...i.settings };\n t !== void 0 && (n.transition = t), document.activeElement.blur(), await F(i.el, n), this.stack.remove(i), s && m.call(this), i.state = \"closed\", i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + \"closed\", {\n detail: this,\n bubbles: !0\n }));\n }\n return i;\n}\nasync function $(e, t) {\n const s = [];\n return await Promise.all(this.stack.value.map(async (i) => {\n e && e === i.id ? Promise.resolve() : s.push(await C.call(this, i, t, !1)), i.trigger = null;\n })), s;\n}\nasync function O(e, t, s = !0) {\n const i = L.call(this, e);\n let n, l;\n return i.state === \"opened\" ? (n = i, l = await $.call(this, i.id, t)) : (n = x.call(this, i, t, !1), l = $.call(this, !1, t), await Promise.all([n, l])), s && m.call(this), { opened: n, closed: l };\n}\nasync function B(e, t) {\n await w.call(this, e, !1);\n const s = this, i = {\n open(l, a) {\n return x.call(s, this, l, a);\n },\n close(l, a) {\n return C.call(s, this, l, a);\n },\n replace(l, a) {\n return O.call(s, this, l, a);\n },\n deregister() {\n return w.call(s, this);\n },\n teleport(l = this.getSetting(\"teleport\"), a = this.getSetting(\"teleportMethod\")) {\n return this.returnRef ? (console.error(\"Element has already been teleported:\", this.el), !1) : (this.returnRef = T(this.el, l, a), this.el);\n },\n teleportReturn() {\n return this.returnRef ? (this.returnRef = T(this.el, this.returnRef), this.el) : (console.error(\"No return reference found:\", this.el), !1);\n },\n getSetting(l) {\n return l in this.settings ? this.settings[l] : s.settings[l];\n }\n }, n = {\n id: e.id,\n state: \"closed\",\n el: e,\n dialog: t,\n returnRef: null,\n settings: P(e, this.settings.dataConfig),\n ...i\n };\n return n.dialog.setAttribute(\"aria-modal\", \"true\"), n.dialog.hasAttribute(\"role\") || n.dialog.setAttribute(\"role\", \"dialog\"), n.getSetting(\"setTabindex\") && n.dialog.setAttribute(\"tabindex\", \"-1\"), n.getSetting(\"teleport\") && n.teleport(), this.collection.push(n), n.el.classList.contains(this.settings.stateOpened) ? await n.open(!1) : (n.el.classList.remove(this.settings.stateOpening), n.el.classList.remove(this.settings.stateClosing), n.el.classList.add(this.settings.stateClosed)), n;\n}\nfunction H(e) {\n const t = [];\n return {\n get value() {\n return [...t];\n },\n get top() {\n return t[t.length - 1];\n },\n updateIndex() {\n t.forEach((s, i) => {\n s.el.style.zIndex = null;\n const n = getComputedStyle(s.el)[\"z-index\"];\n s.el.style.zIndex = parseInt(n) + i + 1;\n });\n },\n updateGlobalState() {\n W(this.top, e), this.updateIndex();\n },\n add(s) {\n s.el.style.zIndex = null;\n const i = getComputedStyle(s.el)[\"z-index\"];\n s.el.style.zIndex = parseInt(i) + t.length + 1, t.push(s), this.updateGlobalState();\n },\n remove(s) {\n const i = t.findIndex((n) => n.id === s.id);\n i >= 0 && (s.el.style.zIndex = null, t.splice(i, 1), this.updateGlobalState());\n },\n moveToTop(s) {\n const i = t.findIndex((n) => n.id === s.id);\n i >= 0 && (t.splice(i, 1), this.add(s));\n }\n };\n}\nvar u, h;\nclass U extends A {\n constructor(s) {\n super();\n v(this, u, void 0);\n v(this, h, void 0);\n this.defaults = _, this.settings = { ...this.defaults, ...s }, this.trigger = null, this.focusTrap = new M(), this.stack = H(this.settings), b(this, u, K.bind(this)), b(this, h, J.bind(this)), this.settings.autoInit && this.init();\n }\n get active() {\n return this.stack.top;\n }\n async init(s) {\n s && (this.settings = { ...this.settings, ...s });\n const i = document.querySelectorAll(this.settings.selectorModal);\n return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(), this;\n }\n async destroy() {\n return this.trigger = null, await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(), this;\n }\n initEventListeners() {\n document.addEventListener(\"click\", f(this, u), !1), document.addEventListener(\"keydown\", f(this, h), !1);\n }\n destroyEventListeners() {\n document.removeEventListener(\"click\", f(this, u), !1), document.removeEventListener(\"keydown\", f(this, h), !1);\n }\n register(s) {\n const i = G.call(this, s);\n return i.error ? Promise.reject(i.error) : B.call(this, i.modal, i.dialog);\n }\n deregister(s) {\n const i = this.get(p.call(this, s));\n return w.call(this, i);\n }\n open(s, i, n) {\n return x.call(this, s, i, n);\n }\n close(s, i, n) {\n return C.call(this, s, i, n);\n }\n replace(s, i, n) {\n return O.call(this, s, i, n);\n }\n async closeAll(s = !1, i, n = !0) {\n const l = await $.call(this, s, i);\n return n && m.call(this), l;\n }\n}\nu = new WeakMap(), h = new WeakMap();\nexport {\n U as default\n};\n//# sourceMappingURL=index.js.map\n","var Ue = (e, t, r) => {\n if (!t.has(e))\n throw TypeError(\"Cannot \" + r);\n};\nvar Ae = (e, t, r) => (Ue(e, t, \"read from private field\"), r ? r.call(e) : t.get(e)), _e = (e, t, r) => {\n if (t.has(e))\n throw TypeError(\"Cannot add the same private member more than once\");\n t instanceof WeakSet ? t.add(e) : t.set(e, r);\n}, Ke = (e, t, r, i) => (Ue(e, t, \"write to private field\"), i ? i.call(e, r) : t.set(e, r), r);\nclass Ct {\n constructor() {\n this.collection = [];\n }\n async register(t) {\n return await this.deregister(t), this.collection.push(t), this.collection;\n }\n async deregister(t) {\n const r = this.collection.findIndex((i) => i === t);\n if (r >= 0) {\n const i = this.collection[r];\n Object.getOwnPropertyNames(i).forEach((n) => {\n delete i[n];\n }), this.collection.splice(r, 1);\n }\n return this.collection;\n }\n async registerCollection(t) {\n return await Promise.all(Array.from(t, (r) => {\n this.register(r);\n })), this.collection;\n }\n async deregisterCollection() {\n for (; this.collection.length > 0; )\n await this.deregister(this.collection[0]);\n return this.collection;\n }\n get(t, r = \"id\") {\n return this.collection.find((i) => i[r] === t);\n }\n}\nfunction kt() {\n return getComputedStyle(document.body).getPropertyValue(\"--vrembem-variable-prefix\").trim();\n}\nconst Dt = {\n autoInit: !1,\n // Selectors\n selectorPopover: \".popover\",\n selectorArrow: \".popover__arrow\",\n // State classes\n stateActive: \"is-active\",\n // Feature settings\n eventListeners: !0,\n eventType: \"click\",\n placement: \"bottom\"\n};\nfunction ot(e, t) {\n const r = getComputedStyle(e), i = {\n placement: t.placement,\n event: t.eventType,\n offset: 0,\n \"overflow-padding\": 0,\n \"flip-padding\": 0,\n \"arrow-element\": t.selectorArrow,\n \"arrow-padding\": 0\n };\n for (const n in i) {\n const o = kt(), l = r.getPropertyValue(`--${o}popover-${n}`).trim();\n l && (i[n] = l);\n }\n return i;\n}\nfunction Pe(e) {\n let t;\n const r = typeof e == \"string\" ? e.trim().split(\" \") : [e];\n switch (r.forEach(function(i, n) {\n r[n] = parseInt(i, 10);\n }), r.length) {\n case 1:\n t = r[0];\n break;\n case 2:\n t = {\n top: r[0],\n right: r[1],\n bottom: r[0],\n left: r[1]\n };\n break;\n case 3:\n t = {\n top: r[0],\n right: r[1],\n bottom: r[2],\n left: r[1]\n };\n break;\n case 4:\n t = {\n top: r[0],\n right: r[1],\n bottom: r[2],\n left: r[3]\n };\n break;\n default:\n t = !1;\n break;\n }\n return t;\n}\nfunction Rt(e) {\n return [{\n name: \"offset\",\n options: {\n offset: [0, parseInt(e.offset, 10)]\n }\n }, {\n name: \"preventOverflow\",\n options: {\n padding: Pe(e[\"overflow-padding\"])\n }\n }, {\n name: \"flip\",\n options: {\n padding: Pe(e[\"flip-padding\"])\n }\n }, {\n name: \"arrow\",\n options: {\n element: e[\"arrow-element\"],\n padding: Pe(e[\"arrow-padding\"])\n }\n }];\n}\nfunction at(e) {\n const t = typeof e == \"string\" ? this.get(e) : this.get(e.id);\n if (t)\n return t;\n throw new Error(`Popover not found in collection with id of \"${e}\".`);\n}\nfunction st(e) {\n return typeof e == \"string\" ? e : typeof e.hasAttribute == \"function\" ? e.closest(this.settings.selectorPopover) ? (e = e.closest(this.settings.selectorPopover), e.id) : e.hasAttribute(\"aria-controls\") ? e.getAttribute(\"aria-controls\") : e.hasAttribute(\"aria-describedby\") ? e.getAttribute(\"aria-describedby\") : !1 : e.id ? e.id : !1;\n}\nfunction Bt(e) {\n const t = st.call(this, e);\n if (t) {\n const r = document.querySelector(`#${t}`), i = document.querySelector(`[aria-controls=\"${t}\"]`) || document.querySelector(`[aria-describedby=\"${t}\"]`);\n return !i && !r ? { error: new Error(`No popover elements found using the ID: \"${t}\".`) } : i ? r ? { popover: r, trigger: i } : { error: new Error(\"No popover associated with the provided popover trigger.\") } : { error: new Error(\"No popover trigger associated with the provided popover.\") };\n } else\n return { error: new Error(\"Could not resolve the popover ID.\") };\n}\nasync function ke(e) {\n const t = e ? at.call(this, e) : await ct.call(this);\n return t && t.state === \"opened\" && (t.el.classList.remove(this.settings.stateActive), t.trigger.hasAttribute(\"aria-controls\") && t.trigger.setAttribute(\"aria-expanded\", \"false\"), t.popper.setOptions({\n modifiers: [{ name: \"eventListeners\", enabled: !1 }]\n }), t.state = \"closed\", t.trigger === this.trigger && (this.trigger = null)), t;\n}\nasync function ct() {\n const e = [];\n return await Promise.all(this.collection.map(async (t) => {\n t.state === \"opened\" && e.push(await ke.call(this, t));\n })), e;\n}\nfunction lt(e) {\n e.state == \"opened\" && setTimeout(() => {\n const t = e.el.closest(\":hover\") === e.el || e.trigger.closest(\":hover\") === e.trigger, r = document.activeElement.closest(\n `#${e.id}, [aria-controls=\"${e.id}\"], [aria-describedby=\"${e.id}\"]`\n );\n return !t && !r && e.close(), e;\n }, 1);\n}\nfunction Tt(e) {\n e.state === \"opened\" ? e.close() : (this.trigger = e.trigger, e.open(), ft.call(this, e));\n}\nfunction St(e) {\n switch (e.key) {\n case \"Escape\":\n this.trigger && this.trigger.focus(), ct.call(this);\n return;\n case \"Tab\":\n this.collection.forEach((t) => {\n lt.call(this, t);\n });\n return;\n default:\n return;\n }\n}\nfunction ft(e) {\n const t = this;\n document.addEventListener(\"click\", function r(i) {\n i.target.closest(\n `#${e.id}, [aria-controls=\"${e.id}\"], [aria-describedby=\"${e.id}\"]`\n ) ? e.el && !e.el.classList.contains(t.settings.stateActive) && this.removeEventListener(\"click\", r) : (e.el && e.el.classList.contains(t.settings.stateActive) && e.close(), this.removeEventListener(\"click\", r));\n });\n}\nvar k = \"top\", S = \"bottom\", M = \"right\", D = \"left\", De = \"auto\", le = [k, S, M, D], Q = \"start\", se = \"end\", Mt = \"clippingParents\", ut = \"viewport\", ne = \"popper\", Wt = \"reference\", Ge = /* @__PURE__ */ le.reduce(function(e, t) {\n return e.concat([t + \"-\" + Q, t + \"-\" + se]);\n}, []), pt = /* @__PURE__ */ [].concat(le, [De]).reduce(function(e, t) {\n return e.concat([t, t + \"-\" + Q, t + \"-\" + se]);\n}, []), jt = \"beforeRead\", Ht = \"read\", Nt = \"afterRead\", It = \"beforeMain\", Vt = \"main\", Ft = \"afterMain\", qt = \"beforeWrite\", Xt = \"write\", Yt = \"afterWrite\", zt = [jt, Ht, Nt, It, Vt, Ft, qt, Xt, Yt];\nfunction N(e) {\n return e ? (e.nodeName || \"\").toLowerCase() : null;\n}\nfunction B(e) {\n if (e == null)\n return window;\n if (e.toString() !== \"[object Window]\") {\n var t = e.ownerDocument;\n return t && t.defaultView || window;\n }\n return e;\n}\nfunction K(e) {\n var t = B(e).Element;\n return e instanceof t || e instanceof Element;\n}\nfunction T(e) {\n var t = B(e).HTMLElement;\n return e instanceof t || e instanceof HTMLElement;\n}\nfunction Re(e) {\n if (typeof ShadowRoot > \"u\")\n return !1;\n var t = B(e).ShadowRoot;\n return e instanceof t || e instanceof ShadowRoot;\n}\nfunction Ut(e) {\n var t = e.state;\n Object.keys(t.elements).forEach(function(r) {\n var i = t.styles[r] || {}, n = t.attributes[r] || {}, o = t.elements[r];\n !T(o) || !N(o) || (Object.assign(o.style, i), Object.keys(n).forEach(function(l) {\n var s = n[l];\n s === !1 ? o.removeAttribute(l) : o.setAttribute(l, s === !0 ? \"\" : s);\n }));\n });\n}\nfunction _t(e) {\n var t = e.state, r = {\n popper: {\n position: t.options.strategy,\n left: \"0\",\n top: \"0\",\n margin: \"0\"\n },\n arrow: {\n position: \"absolute\"\n },\n reference: {}\n };\n return Object.assign(t.elements.popper.style, r.popper), t.styles = r, t.elements.arrow && Object.assign(t.elements.arrow.style, r.arrow), function() {\n Object.keys(t.elements).forEach(function(i) {\n var n = t.elements[i], o = t.attributes[i] || {}, l = Object.keys(t.styles.hasOwnProperty(i) ? t.styles[i] : r[i]), s = l.reduce(function(a, f) {\n return a[f] = \"\", a;\n }, {});\n !T(n) || !N(n) || (Object.assign(n.style, s), Object.keys(o).forEach(function(a) {\n n.removeAttribute(a);\n }));\n });\n };\n}\nconst Kt = {\n name: \"applyStyles\",\n enabled: !0,\n phase: \"write\",\n fn: Ut,\n effect: _t,\n requires: [\"computeStyles\"]\n};\nfunction H(e) {\n return e.split(\"-\")[0];\n}\nvar _ = Math.max, ye = Math.min, Z = Math.round;\nfunction Le() {\n var e = navigator.userAgentData;\n return e != null && e.brands && Array.isArray(e.brands) ? e.brands.map(function(t) {\n return t.brand + \"/\" + t.version;\n }).join(\" \") : navigator.userAgent;\n}\nfunction dt() {\n return !/^((?!chrome|android).)*safari/i.test(Le());\n}\nfunction ee(e, t, r) {\n t === void 0 && (t = !1), r === void 0 && (r = !1);\n var i = e.getBoundingClientRect(), n = 1, o = 1;\n t && T(e) && (n = e.offsetWidth > 0 && Z(i.width) / e.offsetWidth || 1, o = e.offsetHeight > 0 && Z(i.height) / e.offsetHeight || 1);\n var l = K(e) ? B(e) : window, s = l.visualViewport, a = !dt() && r, f = (i.left + (a && s ? s.offsetLeft : 0)) / n, c = (i.top + (a && s ? s.offsetTop : 0)) / o, h = i.width / n, y = i.height / o;\n return {\n width: h,\n height: y,\n top: c,\n right: f + h,\n bottom: c + y,\n left: f,\n x: f,\n y: c\n };\n}\nfunction Be(e) {\n var t = ee(e), r = e.offsetWidth, i = e.offsetHeight;\n return Math.abs(t.width - r) <= 1 && (r = t.width), Math.abs(t.height - i) <= 1 && (i = t.height), {\n x: e.offsetLeft,\n y: e.offsetTop,\n width: r,\n height: i\n };\n}\nfunction vt(e, t) {\n var r = t.getRootNode && t.getRootNode();\n if (e.contains(t))\n return !0;\n if (r && Re(r)) {\n var i = t;\n do {\n if (i && e.isSameNode(i))\n return !0;\n i = i.parentNode || i.host;\n } while (i);\n }\n return !1;\n}\nfunction I(e) {\n return B(e).getComputedStyle(e);\n}\nfunction Gt(e) {\n return [\"table\", \"td\", \"th\"].indexOf(N(e)) >= 0;\n}\nfunction F(e) {\n return ((K(e) ? e.ownerDocument : (\n // $FlowFixMe[prop-missing]\n e.document\n )) || window.document).documentElement;\n}\nfunction we(e) {\n return N(e) === \"html\" ? e : (\n // this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n e.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n e.parentNode || // DOM Element detected\n (Re(e) ? e.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n F(e)\n );\n}\nfunction Je(e) {\n return !T(e) || // https://github.com/popperjs/popper-core/issues/837\n I(e).position === \"fixed\" ? null : e.offsetParent;\n}\nfunction Jt(e) {\n var t = /firefox/i.test(Le()), r = /Trident/i.test(Le());\n if (r && T(e)) {\n var i = I(e);\n if (i.position === \"fixed\")\n return null;\n }\n var n = we(e);\n for (Re(n) && (n = n.host); T(n) && [\"html\", \"body\"].indexOf(N(n)) < 0; ) {\n var o = I(n);\n if (o.transform !== \"none\" || o.perspective !== \"none\" || o.contain === \"paint\" || [\"transform\", \"perspective\"].indexOf(o.willChange) !== -1 || t && o.willChange === \"filter\" || t && o.filter && o.filter !== \"none\")\n return n;\n n = n.parentNode;\n }\n return null;\n}\nfunction fe(e) {\n for (var t = B(e), r = Je(e); r && Gt(r) && I(r).position === \"static\"; )\n r = Je(r);\n return r && (N(r) === \"html\" || N(r) === \"body\" && I(r).position === \"static\") ? t : r || Jt(e) || t;\n}\nfunction Te(e) {\n return [\"top\", \"bottom\"].indexOf(e) >= 0 ? \"x\" : \"y\";\n}\nfunction oe(e, t, r) {\n return _(e, ye(t, r));\n}\nfunction Qt(e, t, r) {\n var i = oe(e, t, r);\n return i > r ? r : i;\n}\nfunction ht() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}\nfunction gt(e) {\n return Object.assign({}, ht(), e);\n}\nfunction mt(e, t) {\n return t.reduce(function(r, i) {\n return r[i] = e, r;\n }, {});\n}\nvar Zt = function(t, r) {\n return t = typeof t == \"function\" ? t(Object.assign({}, r.rects, {\n placement: r.placement\n })) : t, gt(typeof t != \"number\" ? t : mt(t, le));\n};\nfunction er(e) {\n var t, r = e.state, i = e.name, n = e.options, o = r.elements.arrow, l = r.modifiersData.popperOffsets, s = H(r.placement), a = Te(s), f = [D, M].indexOf(s) >= 0, c = f ? \"height\" : \"width\";\n if (!(!o || !l)) {\n var h = Zt(n.padding, r), y = Be(o), u = a === \"y\" ? k : D, b = a === \"y\" ? S : M, v = r.rects.reference[c] + r.rects.reference[a] - l[a] - r.rects.popper[c], d = l[a] - r.rects.reference[a], w = fe(o), O = w ? a === \"y\" ? w.clientHeight || 0 : w.clientWidth || 0 : 0, E = v / 2 - d / 2, p = h[u], g = O - y[c] - h[b], m = O / 2 - y[c] / 2 + E, x = oe(p, m, g), L = a;\n r.modifiersData[i] = (t = {}, t[L] = x, t.centerOffset = x - m, t);\n }\n}\nfunction tr(e) {\n var t = e.state, r = e.options, i = r.element, n = i === void 0 ? \"[data-popper-arrow]\" : i;\n n != null && (typeof n == \"string\" && (n = t.elements.popper.querySelector(n), !n) || vt(t.elements.popper, n) && (t.elements.arrow = n));\n}\nconst rr = {\n name: \"arrow\",\n enabled: !0,\n phase: \"main\",\n fn: er,\n effect: tr,\n requires: [\"popperOffsets\"],\n requiresIfExists: [\"preventOverflow\"]\n};\nfunction te(e) {\n return e.split(\"-\")[1];\n}\nvar ir = {\n top: \"auto\",\n right: \"auto\",\n bottom: \"auto\",\n left: \"auto\"\n};\nfunction nr(e, t) {\n var r = e.x, i = e.y, n = t.devicePixelRatio || 1;\n return {\n x: Z(r * n) / n || 0,\n y: Z(i * n) / n || 0\n };\n}\nfunction Qe(e) {\n var t, r = e.popper, i = e.popperRect, n = e.placement, o = e.variation, l = e.offsets, s = e.position, a = e.gpuAcceleration, f = e.adaptive, c = e.roundOffsets, h = e.isFixed, y = l.x, u = y === void 0 ? 0 : y, b = l.y, v = b === void 0 ? 0 : b, d = typeof c == \"function\" ? c({\n x: u,\n y: v\n }) : {\n x: u,\n y: v\n };\n u = d.x, v = d.y;\n var w = l.hasOwnProperty(\"x\"), O = l.hasOwnProperty(\"y\"), E = D, p = k, g = window;\n if (f) {\n var m = fe(r), x = \"clientHeight\", L = \"clientWidth\";\n if (m === B(r) && (m = F(r), I(m).position !== \"static\" && s === \"absolute\" && (x = \"scrollHeight\", L = \"scrollWidth\")), m = m, n === k || (n === D || n === M) && o === se) {\n p = S;\n var P = h && m === g && g.visualViewport ? g.visualViewport.height : (\n // $FlowFixMe[prop-missing]\n m[x]\n );\n v -= P - i.height, v *= a ? 1 : -1;\n }\n if (n === D || (n === k || n === S) && o === se) {\n E = M;\n var A = h && m === g && g.visualViewport ? g.visualViewport.width : (\n // $FlowFixMe[prop-missing]\n m[L]\n );\n u -= A - i.width, u *= a ? 1 : -1;\n }\n }\n var $ = Object.assign({\n position: s\n }, f && ir), W = c === !0 ? nr({\n x: u,\n y: v\n }, B(r)) : {\n x: u,\n y: v\n };\n if (u = W.x, v = W.y, a) {\n var C;\n return Object.assign({}, $, (C = {}, C[p] = O ? \"0\" : \"\", C[E] = w ? \"0\" : \"\", C.transform = (g.devicePixelRatio || 1) <= 1 ? \"translate(\" + u + \"px, \" + v + \"px)\" : \"translate3d(\" + u + \"px, \" + v + \"px, 0)\", C));\n }\n return Object.assign({}, $, (t = {}, t[p] = O ? v + \"px\" : \"\", t[E] = w ? u + \"px\" : \"\", t.transform = \"\", t));\n}\nfunction or(e) {\n var t = e.state, r = e.options, i = r.gpuAcceleration, n = i === void 0 ? !0 : i, o = r.adaptive, l = o === void 0 ? !0 : o, s = r.roundOffsets, a = s === void 0 ? !0 : s, f = {\n placement: H(t.placement),\n variation: te(t.placement),\n popper: t.elements.popper,\n popperRect: t.rects.popper,\n gpuAcceleration: n,\n isFixed: t.options.strategy === \"fixed\"\n };\n t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, Qe(Object.assign({}, f, {\n offsets: t.modifiersData.popperOffsets,\n position: t.options.strategy,\n adaptive: l,\n roundOffsets: a\n })))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, Qe(Object.assign({}, f, {\n offsets: t.modifiersData.arrow,\n position: \"absolute\",\n adaptive: !1,\n roundOffsets: a\n })))), t.attributes.popper = Object.assign({}, t.attributes.popper, {\n \"data-popper-placement\": t.placement\n });\n}\nconst ar = {\n name: \"computeStyles\",\n enabled: !0,\n phase: \"beforeWrite\",\n fn: or,\n data: {}\n};\nvar ge = {\n passive: !0\n};\nfunction sr(e) {\n var t = e.state, r = e.instance, i = e.options, n = i.scroll, o = n === void 0 ? !0 : n, l = i.resize, s = l === void 0 ? !0 : l, a = B(t.elements.popper), f = [].concat(t.scrollParents.reference, t.scrollParents.popper);\n return o && f.forEach(function(c) {\n c.addEventListener(\"scroll\", r.update, ge);\n }), s && a.addEventListener(\"resize\", r.update, ge), function() {\n o && f.forEach(function(c) {\n c.removeEventListener(\"scroll\", r.update, ge);\n }), s && a.removeEventListener(\"resize\", r.update, ge);\n };\n}\nconst cr = {\n name: \"eventListeners\",\n enabled: !0,\n phase: \"write\",\n fn: function() {\n },\n effect: sr,\n data: {}\n};\nvar lr = {\n left: \"right\",\n right: \"left\",\n bottom: \"top\",\n top: \"bottom\"\n};\nfunction me(e) {\n return e.replace(/left|right|bottom|top/g, function(t) {\n return lr[t];\n });\n}\nvar fr = {\n start: \"end\",\n end: \"start\"\n};\nfunction Ze(e) {\n return e.replace(/start|end/g, function(t) {\n return fr[t];\n });\n}\nfunction Se(e) {\n var t = B(e), r = t.pageXOffset, i = t.pageYOffset;\n return {\n scrollLeft: r,\n scrollTop: i\n };\n}\nfunction Me(e) {\n return ee(F(e)).left + Se(e).scrollLeft;\n}\nfunction ur(e, t) {\n var r = B(e), i = F(e), n = r.visualViewport, o = i.clientWidth, l = i.clientHeight, s = 0, a = 0;\n if (n) {\n o = n.width, l = n.height;\n var f = dt();\n (f || !f && t === \"fixed\") && (s = n.offsetLeft, a = n.offsetTop);\n }\n return {\n width: o,\n height: l,\n x: s + Me(e),\n y: a\n };\n}\nfunction pr(e) {\n var t, r = F(e), i = Se(e), n = (t = e.ownerDocument) == null ? void 0 : t.body, o = _(r.scrollWidth, r.clientWidth, n ? n.scrollWidth : 0, n ? n.clientWidth : 0), l = _(r.scrollHeight, r.clientHeight, n ? n.scrollHeight : 0, n ? n.clientHeight : 0), s = -i.scrollLeft + Me(e), a = -i.scrollTop;\n return I(n || r).direction === \"rtl\" && (s += _(r.clientWidth, n ? n.clientWidth : 0) - o), {\n width: o,\n height: l,\n x: s,\n y: a\n };\n}\nfunction We(e) {\n var t = I(e), r = t.overflow, i = t.overflowX, n = t.overflowY;\n return /auto|scroll|overlay|hidden/.test(r + n + i);\n}\nfunction yt(e) {\n return [\"html\", \"body\", \"#document\"].indexOf(N(e)) >= 0 ? e.ownerDocument.body : T(e) && We(e) ? e : yt(we(e));\n}\nfunction ae(e, t) {\n var r;\n t === void 0 && (t = []);\n var i = yt(e), n = i === ((r = e.ownerDocument) == null ? void 0 : r.body), o = B(i), l = n ? [o].concat(o.visualViewport || [], We(i) ? i : []) : i, s = t.concat(l);\n return n ? s : (\n // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n s.concat(ae(we(l)))\n );\n}\nfunction $e(e) {\n return Object.assign({}, e, {\n left: e.x,\n top: e.y,\n right: e.x + e.width,\n bottom: e.y + e.height\n });\n}\nfunction dr(e, t) {\n var r = ee(e, !1, t === \"fixed\");\n return r.top = r.top + e.clientTop, r.left = r.left + e.clientLeft, r.bottom = r.top + e.clientHeight, r.right = r.left + e.clientWidth, r.width = e.clientWidth, r.height = e.clientHeight, r.x = r.left, r.y = r.top, r;\n}\nfunction et(e, t, r) {\n return t === ut ? $e(ur(e, r)) : K(t) ? dr(t, r) : $e(pr(F(e)));\n}\nfunction vr(e) {\n var t = ae(we(e)), r = [\"absolute\", \"fixed\"].indexOf(I(e).position) >= 0, i = r && T(e) ? fe(e) : e;\n return K(i) ? t.filter(function(n) {\n return K(n) && vt(n, i) && N(n) !== \"body\";\n }) : [];\n}\nfunction hr(e, t, r, i) {\n var n = t === \"clippingParents\" ? vr(e) : [].concat(t), o = [].concat(n, [r]), l = o[0], s = o.reduce(function(a, f) {\n var c = et(e, f, i);\n return a.top = _(c.top, a.top), a.right = ye(c.right, a.right), a.bottom = ye(c.bottom, a.bottom), a.left = _(c.left, a.left), a;\n }, et(e, l, i));\n return s.width = s.right - s.left, s.height = s.bottom - s.top, s.x = s.left, s.y = s.top, s;\n}\nfunction wt(e) {\n var t = e.reference, r = e.element, i = e.placement, n = i ? H(i) : null, o = i ? te(i) : null, l = t.x + t.width / 2 - r.width / 2, s = t.y + t.height / 2 - r.height / 2, a;\n switch (n) {\n case k:\n a = {\n x: l,\n y: t.y - r.height\n };\n break;\n case S:\n a = {\n x: l,\n y: t.y + t.height\n };\n break;\n case M:\n a = {\n x: t.x + t.width,\n y: s\n };\n break;\n case D:\n a = {\n x: t.x - r.width,\n y: s\n };\n break;\n default:\n a = {\n x: t.x,\n y: t.y\n };\n }\n var f = n ? Te(n) : null;\n if (f != null) {\n var c = f === \"y\" ? \"height\" : \"width\";\n switch (o) {\n case Q:\n a[f] = a[f] - (t[c] / 2 - r[c] / 2);\n break;\n case se:\n a[f] = a[f] + (t[c] / 2 - r[c] / 2);\n break;\n }\n }\n return a;\n}\nfunction ce(e, t) {\n t === void 0 && (t = {});\n var r = t, i = r.placement, n = i === void 0 ? e.placement : i, o = r.strategy, l = o === void 0 ? e.strategy : o, s = r.boundary, a = s === void 0 ? Mt : s, f = r.rootBoundary, c = f === void 0 ? ut : f, h = r.elementContext, y = h === void 0 ? ne : h, u = r.altBoundary, b = u === void 0 ? !1 : u, v = r.padding, d = v === void 0 ? 0 : v, w = gt(typeof d != \"number\" ? d : mt(d, le)), O = y === ne ? Wt : ne, E = e.rects.popper, p = e.elements[b ? O : y], g = hr(K(p) ? p : p.contextElement || F(e.elements.popper), a, c, l), m = ee(e.elements.reference), x = wt({\n reference: m,\n element: E,\n strategy: \"absolute\",\n placement: n\n }), L = $e(Object.assign({}, E, x)), P = y === ne ? L : m, A = {\n top: g.top - P.top + w.top,\n bottom: P.bottom - g.bottom + w.bottom,\n left: g.left - P.left + w.left,\n right: P.right - g.right + w.right\n }, $ = e.modifiersData.offset;\n if (y === ne && $) {\n var W = $[n];\n Object.keys(A).forEach(function(C) {\n var q = [M, S].indexOf(C) >= 0 ? 1 : -1, X = [k, S].indexOf(C) >= 0 ? \"y\" : \"x\";\n A[C] += W[X] * q;\n });\n }\n return A;\n}\nfunction gr(e, t) {\n t === void 0 && (t = {});\n var r = t, i = r.placement, n = r.boundary, o = r.rootBoundary, l = r.padding, s = r.flipVariations, a = r.allowedAutoPlacements, f = a === void 0 ? pt : a, c = te(i), h = c ? s ? Ge : Ge.filter(function(b) {\n return te(b) === c;\n }) : le, y = h.filter(function(b) {\n return f.indexOf(b) >= 0;\n });\n y.length === 0 && (y = h);\n var u = y.reduce(function(b, v) {\n return b[v] = ce(e, {\n placement: v,\n boundary: n,\n rootBoundary: o,\n padding: l\n })[H(v)], b;\n }, {});\n return Object.keys(u).sort(function(b, v) {\n return u[b] - u[v];\n });\n}\nfunction mr(e) {\n if (H(e) === De)\n return [];\n var t = me(e);\n return [Ze(e), t, Ze(t)];\n}\nfunction yr(e) {\n var t = e.state, r = e.options, i = e.name;\n if (!t.modifiersData[i]._skip) {\n for (var n = r.mainAxis, o = n === void 0 ? !0 : n, l = r.altAxis, s = l === void 0 ? !0 : l, a = r.fallbackPlacements, f = r.padding, c = r.boundary, h = r.rootBoundary, y = r.altBoundary, u = r.flipVariations, b = u === void 0 ? !0 : u, v = r.allowedAutoPlacements, d = t.options.placement, w = H(d), O = w === d, E = a || (O || !b ? [me(d)] : mr(d)), p = [d].concat(E).reduce(function(G, V) {\n return G.concat(H(V) === De ? gr(t, {\n placement: V,\n boundary: c,\n rootBoundary: h,\n padding: f,\n flipVariations: b,\n allowedAutoPlacements: v\n }) : V);\n }, []), g = t.rects.reference, m = t.rects.popper, x = /* @__PURE__ */ new Map(), L = !0, P = p[0], A = 0; A < p.length; A++) {\n var $ = p[A], W = H($), C = te($) === Q, q = [k, S].indexOf(W) >= 0, X = q ? \"width\" : \"height\", R = ce(t, {\n placement: $,\n boundary: c,\n rootBoundary: h,\n altBoundary: y,\n padding: f\n }), j = q ? C ? M : D : C ? S : k;\n g[X] > m[X] && (j = me(j));\n var ue = me(j), Y = [];\n if (o && Y.push(R[W] <= 0), s && Y.push(R[j] <= 0, R[ue] <= 0), Y.every(function(G) {\n return G;\n })) {\n P = $, L = !1;\n break;\n }\n x.set($, Y);\n }\n if (L)\n for (var pe = b ? 3 : 1, be = function(V) {\n var ie = p.find(function(ve) {\n var z = x.get(ve);\n if (z)\n return z.slice(0, V).every(function(xe) {\n return xe;\n });\n });\n if (ie)\n return P = ie, \"break\";\n }, re = pe; re > 0; re--) {\n var de = be(re);\n if (de === \"break\")\n break;\n }\n t.placement !== P && (t.modifiersData[i]._skip = !0, t.placement = P, t.reset = !0);\n }\n}\nconst wr = {\n name: \"flip\",\n enabled: !0,\n phase: \"main\",\n fn: yr,\n requiresIfExists: [\"offset\"],\n data: {\n _skip: !1\n }\n};\nfunction tt(e, t, r) {\n return r === void 0 && (r = {\n x: 0,\n y: 0\n }), {\n top: e.top - t.height - r.y,\n right: e.right - t.width + r.x,\n bottom: e.bottom - t.height + r.y,\n left: e.left - t.width - r.x\n };\n}\nfunction rt(e) {\n return [k, M, S, D].some(function(t) {\n return e[t] >= 0;\n });\n}\nfunction br(e) {\n var t = e.state, r = e.name, i = t.rects.reference, n = t.rects.popper, o = t.modifiersData.preventOverflow, l = ce(t, {\n elementContext: \"reference\"\n }), s = ce(t, {\n altBoundary: !0\n }), a = tt(l, i), f = tt(s, n, o), c = rt(a), h = rt(f);\n t.modifiersData[r] = {\n referenceClippingOffsets: a,\n popperEscapeOffsets: f,\n isReferenceHidden: c,\n hasPopperEscaped: h\n }, t.attributes.popper = Object.assign({}, t.attributes.popper, {\n \"data-popper-reference-hidden\": c,\n \"data-popper-escaped\": h\n });\n}\nconst xr = {\n name: \"hide\",\n enabled: !0,\n phase: \"main\",\n requiresIfExists: [\"preventOverflow\"],\n fn: br\n};\nfunction Or(e, t, r) {\n var i = H(e), n = [D, k].indexOf(i) >= 0 ? -1 : 1, o = typeof r == \"function\" ? r(Object.assign({}, t, {\n placement: e\n })) : r, l = o[0], s = o[1];\n return l = l || 0, s = (s || 0) * n, [D, M].indexOf(i) >= 0 ? {\n x: s,\n y: l\n } : {\n x: l,\n y: s\n };\n}\nfunction Er(e) {\n var t = e.state, r = e.options, i = e.name, n = r.offset, o = n === void 0 ? [0, 0] : n, l = pt.reduce(function(c, h) {\n return c[h] = Or(h, t.rects, o), c;\n }, {}), s = l[t.placement], a = s.x, f = s.y;\n t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a, t.modifiersData.popperOffsets.y += f), t.modifiersData[i] = l;\n}\nconst Ar = {\n name: \"offset\",\n enabled: !0,\n phase: \"main\",\n requires: [\"popperOffsets\"],\n fn: Er\n};\nfunction Pr(e) {\n var t = e.state, r = e.name;\n t.modifiersData[r] = wt({\n reference: t.rects.reference,\n element: t.rects.popper,\n strategy: \"absolute\",\n placement: t.placement\n });\n}\nconst Lr = {\n name: \"popperOffsets\",\n enabled: !0,\n phase: \"read\",\n fn: Pr,\n data: {}\n};\nfunction $r(e) {\n return e === \"x\" ? \"y\" : \"x\";\n}\nfunction Cr(e) {\n var t = e.state, r = e.options, i = e.name, n = r.mainAxis, o = n === void 0 ? !0 : n, l = r.altAxis, s = l === void 0 ? !1 : l, a = r.boundary, f = r.rootBoundary, c = r.altBoundary, h = r.padding, y = r.tether, u = y === void 0 ? !0 : y, b = r.tetherOffset, v = b === void 0 ? 0 : b, d = ce(t, {\n boundary: a,\n rootBoundary: f,\n padding: h,\n altBoundary: c\n }), w = H(t.placement), O = te(t.placement), E = !O, p = Te(w), g = $r(p), m = t.modifiersData.popperOffsets, x = t.rects.reference, L = t.rects.popper, P = typeof v == \"function\" ? v(Object.assign({}, t.rects, {\n placement: t.placement\n })) : v, A = typeof P == \"number\" ? {\n mainAxis: P,\n altAxis: P\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, P), $ = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, W = {\n x: 0,\n y: 0\n };\n if (m) {\n if (o) {\n var C, q = p === \"y\" ? k : D, X = p === \"y\" ? S : M, R = p === \"y\" ? \"height\" : \"width\", j = m[p], ue = j + d[q], Y = j - d[X], pe = u ? -L[R] / 2 : 0, be = O === Q ? x[R] : L[R], re = O === Q ? -L[R] : -x[R], de = t.elements.arrow, G = u && de ? Be(de) : {\n width: 0,\n height: 0\n }, V = t.modifiersData[\"arrow#persistent\"] ? t.modifiersData[\"arrow#persistent\"].padding : ht(), ie = V[q], ve = V[X], z = oe(0, x[R], G[R]), xe = E ? x[R] / 2 - pe - z - ie - A.mainAxis : be - z - ie - A.mainAxis, Ot = E ? -x[R] / 2 + pe + z + ve + A.mainAxis : re + z + ve + A.mainAxis, Oe = t.elements.arrow && fe(t.elements.arrow), Et = Oe ? p === \"y\" ? Oe.clientTop || 0 : Oe.clientLeft || 0 : 0, He = (C = $ == null ? void 0 : $[p]) != null ? C : 0, At = j + xe - He - Et, Pt = j + Ot - He, Ne = oe(u ? ye(ue, At) : ue, j, u ? _(Y, Pt) : Y);\n m[p] = Ne, W[p] = Ne - j;\n }\n if (s) {\n var Ie, Lt = p === \"x\" ? k : D, $t = p === \"x\" ? S : M, U = m[g], he = g === \"y\" ? \"height\" : \"width\", Ve = U + d[Lt], Fe = U - d[$t], Ee = [k, D].indexOf(w) !== -1, qe = (Ie = $ == null ? void 0 : $[g]) != null ? Ie : 0, Xe = Ee ? Ve : U - x[he] - L[he] - qe + A.altAxis, Ye = Ee ? U + x[he] + L[he] - qe - A.altAxis : Fe, ze = u && Ee ? Qt(Xe, U, Ye) : oe(u ? Xe : Ve, U, u ? Ye : Fe);\n m[g] = ze, W[g] = ze - U;\n }\n t.modifiersData[i] = W;\n }\n}\nconst kr = {\n name: \"preventOverflow\",\n enabled: !0,\n phase: \"main\",\n fn: Cr,\n requiresIfExists: [\"offset\"]\n};\nfunction Dr(e) {\n return {\n scrollLeft: e.scrollLeft,\n scrollTop: e.scrollTop\n };\n}\nfunction Rr(e) {\n return e === B(e) || !T(e) ? Se(e) : Dr(e);\n}\nfunction Br(e) {\n var t = e.getBoundingClientRect(), r = Z(t.width) / e.offsetWidth || 1, i = Z(t.height) / e.offsetHeight || 1;\n return r !== 1 || i !== 1;\n}\nfunction Tr(e, t, r) {\n r === void 0 && (r = !1);\n var i = T(t), n = T(t) && Br(t), o = F(t), l = ee(e, n, r), s = {\n scrollLeft: 0,\n scrollTop: 0\n }, a = {\n x: 0,\n y: 0\n };\n return (i || !i && !r) && ((N(t) !== \"body\" || // https://github.com/popperjs/popper-core/issues/1078\n We(o)) && (s = Rr(t)), T(t) ? (a = ee(t, !0), a.x += t.clientLeft, a.y += t.clientTop) : o && (a.x = Me(o))), {\n x: l.left + s.scrollLeft - a.x,\n y: l.top + s.scrollTop - a.y,\n width: l.width,\n height: l.height\n };\n}\nfunction Sr(e) {\n var t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), i = [];\n e.forEach(function(o) {\n t.set(o.name, o);\n });\n function n(o) {\n r.add(o.name);\n var l = [].concat(o.requires || [], o.requiresIfExists || []);\n l.forEach(function(s) {\n if (!r.has(s)) {\n var a = t.get(s);\n a && n(a);\n }\n }), i.push(o);\n }\n return e.forEach(function(o) {\n r.has(o.name) || n(o);\n }), i;\n}\nfunction Mr(e) {\n var t = Sr(e);\n return zt.reduce(function(r, i) {\n return r.concat(t.filter(function(n) {\n return n.phase === i;\n }));\n }, []);\n}\nfunction Wr(e) {\n var t;\n return function() {\n return t || (t = new Promise(function(r) {\n Promise.resolve().then(function() {\n t = void 0, r(e());\n });\n })), t;\n };\n}\nfunction jr(e) {\n var t = e.reduce(function(r, i) {\n var n = r[i.name];\n return r[i.name] = n ? Object.assign({}, n, i, {\n options: Object.assign({}, n.options, i.options),\n data: Object.assign({}, n.data, i.data)\n }) : i, r;\n }, {});\n return Object.keys(t).map(function(r) {\n return t[r];\n });\n}\nvar it = {\n placement: \"bottom\",\n modifiers: [],\n strategy: \"absolute\"\n};\nfunction nt() {\n for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++)\n t[r] = arguments[r];\n return !t.some(function(i) {\n return !(i && typeof i.getBoundingClientRect == \"function\");\n });\n}\nfunction Hr(e) {\n e === void 0 && (e = {});\n var t = e, r = t.defaultModifiers, i = r === void 0 ? [] : r, n = t.defaultOptions, o = n === void 0 ? it : n;\n return function(s, a, f) {\n f === void 0 && (f = o);\n var c = {\n placement: \"bottom\",\n orderedModifiers: [],\n options: Object.assign({}, it, o),\n modifiersData: {},\n elements: {\n reference: s,\n popper: a\n },\n attributes: {},\n styles: {}\n }, h = [], y = !1, u = {\n state: c,\n setOptions: function(w) {\n var O = typeof w == \"function\" ? w(c.options) : w;\n v(), c.options = Object.assign({}, o, c.options, O), c.scrollParents = {\n reference: K(s) ? ae(s) : s.contextElement ? ae(s.contextElement) : [],\n popper: ae(a)\n };\n var E = Mr(jr([].concat(i, c.options.modifiers)));\n return c.orderedModifiers = E.filter(function(p) {\n return p.enabled;\n }), b(), u.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function() {\n if (!y) {\n var w = c.elements, O = w.reference, E = w.popper;\n if (nt(O, E)) {\n c.rects = {\n reference: Tr(O, fe(E), c.options.strategy === \"fixed\"),\n popper: Be(E)\n }, c.reset = !1, c.placement = c.options.placement, c.orderedModifiers.forEach(function(A) {\n return c.modifiersData[A.name] = Object.assign({}, A.data);\n });\n for (var p = 0; p < c.orderedModifiers.length; p++) {\n if (c.reset === !0) {\n c.reset = !1, p = -1;\n continue;\n }\n var g = c.orderedModifiers[p], m = g.fn, x = g.options, L = x === void 0 ? {} : x, P = g.name;\n typeof m == \"function\" && (c = m({\n state: c,\n options: L,\n name: P,\n instance: u\n }) || c);\n }\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: Wr(function() {\n return new Promise(function(d) {\n u.forceUpdate(), d(c);\n });\n }),\n destroy: function() {\n v(), y = !0;\n }\n };\n if (!nt(s, a))\n return u;\n u.setOptions(f).then(function(d) {\n !y && f.onFirstUpdate && f.onFirstUpdate(d);\n });\n function b() {\n c.orderedModifiers.forEach(function(d) {\n var w = d.name, O = d.options, E = O === void 0 ? {} : O, p = d.effect;\n if (typeof p == \"function\") {\n var g = p({\n state: c,\n name: w,\n instance: u,\n options: E\n }), m = function() {\n };\n h.push(g || m);\n }\n });\n }\n function v() {\n h.forEach(function(d) {\n return d();\n }), h = [];\n }\n return u;\n };\n}\nvar Nr = [cr, Lr, ar, Kt, Ar, wr, kr, rr, xr], Ir = /* @__PURE__ */ Hr({\n defaultModifiers: Nr\n});\nasync function Ce(e) {\n if (!e)\n return this.collection;\n const t = this.collection.findIndex((r) => r.id === e.id);\n if (t >= 0) {\n const r = this.collection[t];\n r.state === \"opened\" && r.close(), r.popper.destroy(), bt(r), Object.getOwnPropertyNames(r).forEach((i) => {\n delete r[i];\n }), this.collection.splice(t, 1);\n }\n return this.collection;\n}\nfunction bt(e) {\n return e.__eventListeners && (e.__eventListeners.forEach((t) => {\n t.el.forEach((r) => {\n t.type.forEach((i) => {\n e[r].removeEventListener(i, t.listener, !1);\n });\n });\n }), delete e.__eventListeners), e;\n}\nasync function je(e) {\n const t = at.call(this, e);\n return t.el.classList.add(this.settings.stateActive), t.trigger.hasAttribute(\"aria-controls\") && t.trigger.setAttribute(\"aria-expanded\", \"true\"), t.config = ot(t.el, this.settings), t.popper.setOptions({\n placement: t.config.placement,\n modifiers: [\n { name: \"eventListeners\", enabled: !0 },\n ...Rt(t.config)\n ]\n }), t.popper.update(), t.state = \"opened\", t;\n}\nasync function Vr(e, t) {\n Ce.call(this, e);\n const r = this, i = {\n open() {\n return je.call(r, this);\n },\n close() {\n return ke.call(r, this);\n },\n deregister() {\n return Ce.call(r, this);\n }\n }, n = {\n id: e.id,\n state: \"closed\",\n el: e,\n trigger: t,\n popper: Ir(t, e),\n config: ot(e, this.settings),\n ...i\n };\n return n.trigger.hasAttribute(\"aria-controls\") && n.trigger.setAttribute(\"aria-expanded\", \"false\"), xt.call(this, n), this.collection.push(n), n.el.classList.contains(this.settings.stateActive) && (await n.open(), ft.call(this, n)), n;\n}\nfunction xt(e) {\n return e.__eventListeners || (e.config.event === \"hover\" ? (e.__eventListeners = [{\n el: [\"trigger\"],\n type: [\"mouseenter\", \"focus\"],\n listener: je.bind(this, e)\n }, {\n el: [\"el\", \"trigger\"],\n type: [\"mouseleave\", \"focusout\"],\n listener: lt.bind(this, e)\n }], e.__eventListeners.forEach((r) => {\n r.el.forEach((i) => {\n r.type.forEach((n) => {\n e[i].addEventListener(n, r.listener, !1);\n });\n });\n })) : (e.__eventListeners = [{\n el: [\"trigger\"],\n type: [\"click\"],\n listener: Tt.bind(this, e)\n }], e.__eventListeners.forEach((r) => {\n r.el.forEach((i) => {\n r.type.forEach((n) => {\n e[i].addEventListener(n, r.listener, !1);\n });\n });\n }))), e;\n}\nvar J;\nclass qr extends Ct {\n constructor(r) {\n super();\n _e(this, J, void 0);\n this.defaults = Dt, this.settings = { ...this.defaults, ...r }, this.trigger = null, Ke(this, J, St.bind(this)), this.settings.autoInit && this.init();\n }\n async init(r) {\n r && (this.settings = { ...this.settings, ...r });\n const i = document.querySelectorAll(this.settings.selectorPopover);\n return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(!1), this;\n }\n async destroy() {\n return this.trigger = null, await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(!1), this;\n }\n initEventListeners(r = !0) {\n r && this.collection.forEach((i) => {\n xt.call(this, i);\n }), document.addEventListener(\"keydown\", Ae(this, J), !1);\n }\n destroyEventListeners(r = !0) {\n r && this.collection.forEach((i) => {\n bt(i);\n }), document.removeEventListener(\"keydown\", Ae(this, J), !1);\n }\n register(r) {\n const i = Bt.call(this, r);\n return i.error ? Promise.reject(i.error) : Vr.call(this, i.popover, i.trigger);\n }\n deregister(r) {\n const i = this.get(st.call(this, r));\n return Ce.call(this, i);\n }\n open(r) {\n return je.call(this, r);\n }\n close(r) {\n return ke.call(this, r);\n }\n}\nJ = new WeakMap();\nexport {\n qr as default\n};\n//# sourceMappingURL=index.js.map\n"],"names":["b","o","h","i","l","r","v","f","d","u","g","p","m","q","I","C","c","O","S","F","y","L","k","s","E","$","w","_","N","a","K","W","J","z","G","H","Q","R","U","A","D","Z","tt","et","M","T","x","P","B","X","V","j","Y"],"mappings":"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"}