vrembem 4.0.0-next.3 → 4.0.0-next.4

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.
package/dev/index.umd.cjs CHANGED
@@ -6,33 +6,33 @@
6
6
  if (!e.has(t))
7
7
  throw TypeError("Cannot " + n);
8
8
  };
9
- var o$1 = (t, e, n) => (b$2(t, e, "read from private field"), n ? n.call(t) : e.get(t)), h$2 = (t, e, n) => {
9
+ var r = (t, e, n) => (b$2(t, e, "read from private field"), n ? n.call(t) : e.get(t)), m$2 = (t, e, n) => {
10
10
  if (e.has(t))
11
11
  throw TypeError("Cannot add the same private member more than once");
12
12
  e instanceof WeakSet ? e.add(t) : e.set(t, n);
13
- }, a = (t, e, n, i) => (b$2(t, e, "write to private field"), i ? i.call(t, n) : e.set(t, n), n);
13
+ }, a$1 = (t, e, n, s) => (b$2(t, e, "write to private field"), s ? s.call(t, n) : e.set(t, n), n);
14
14
  var l$1;
15
- let $$2 = class $ {
15
+ let I$3 = class I {
16
16
  constructor(e, n) {
17
- h$2(this, l$1, void 0);
18
- this.value = e, a(this, l$1, n), this.mql = null;
17
+ m$2(this, l$1, void 0);
18
+ this.value = e, a$1(this, l$1, n), this.mql = null;
19
19
  }
20
20
  get handler() {
21
- return o$1(this, l$1);
21
+ return r(this, l$1);
22
22
  }
23
23
  // Unmount existing handler before setting a new one.
24
24
  set handler(e) {
25
- this.mql && (typeof this.mql.removeEventListener == "function" ? this.mql.removeEventListener("change", o$1(this, l$1)) : this.mql.removeListener(o$1(this, l$1))), a(this, l$1, e);
25
+ this.mql && this.mql.removeEventListener("change", r(this, l$1)), a$1(this, l$1, e);
26
26
  }
27
27
  mount(e, n) {
28
- return e && (this.value = e), n && a(this, l$1, n), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), typeof this.mql.addEventListener == "function" ? this.mql.addEventListener("change", o$1(this, l$1)) : this.mql.addListener(o$1(this, l$1)), o$1(this, l$1).call(this, this.mql), this) : this;
28
+ return e && (this.value = e), n && a$1(this, l$1, n), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), this.mql.addEventListener("change", r(this, l$1)), r(this, l$1).call(this, this.mql), this) : this;
29
29
  }
30
30
  unmount() {
31
- return this.mql ? (typeof this.mql.removeEventListener == "function" ? this.mql.removeEventListener("change", o$1(this, l$1)) : this.mql.removeListener(o$1(this, l$1)), this.value = null, a(this, l$1, null), this.mql = null, this) : this;
31
+ return this.mql ? (this.mql.removeEventListener("change", r(this, l$1)), this.value = null, a$1(this, l$1, null), this.mql = null, this) : this;
32
32
  }
33
33
  };
34
34
  l$1 = /* @__PURE__ */ new WeakMap();
35
- let T$2 = class T {
35
+ let L$2 = class L {
36
36
  constructor() {
37
37
  this.collection = [];
38
38
  }
@@ -40,11 +40,11 @@
40
40
  return await this.deregister(e), this.collection.push(e), this.collection;
41
41
  }
42
42
  async deregister(e) {
43
- const n = this.collection.findIndex((i) => i === e);
43
+ const n = this.collection.findIndex((s) => s === e);
44
44
  if (n >= 0) {
45
- const i = this.collection[n];
46
- Object.getOwnPropertyNames(i).forEach((r2) => {
47
- delete i[r2];
45
+ const s = this.collection[n];
46
+ Object.getOwnPropertyNames(s).forEach((o2) => {
47
+ delete s[o2];
48
48
  }), this.collection.splice(n, 1);
49
49
  }
50
50
  return this.collection;
@@ -60,44 +60,44 @@
60
60
  return this.collection;
61
61
  }
62
62
  get(e, n = "id") {
63
- return this.collection.find((i) => i[n] === e);
63
+ return this.collection.find((s) => s[n] === e);
64
64
  }
65
65
  };
66
- const s = {
66
+ const i = {
67
67
  inert: ":not([inert]):not([inert] *)",
68
68
  negTabIndex: ':not([tabindex^="-"])',
69
69
  disabled: ":not(:disabled)"
70
- }, v$2 = [
71
- `a[href]${s.inert}${s.negTabIndex}`,
72
- `area[href]${s.inert}${s.negTabIndex}`,
73
- `input:not([type="hidden"]):not([type="radio"])${s.inert}${s.negTabIndex}${s.disabled}`,
74
- `input[type="radio"]${s.inert}${s.negTabIndex}${s.disabled}`,
75
- `select${s.inert}${s.negTabIndex}${s.disabled}`,
76
- `textarea${s.inert}${s.negTabIndex}${s.disabled}`,
77
- `button${s.inert}${s.negTabIndex}${s.disabled}`,
78
- `details${s.inert} > summary:first-of-type${s.negTabIndex}`,
70
+ }, g$2 = [
71
+ `a[href]${i.inert}${i.negTabIndex}`,
72
+ `area[href]${i.inert}${i.negTabIndex}`,
73
+ `input:not([type="hidden"]):not([type="radio"])${i.inert}${i.negTabIndex}${i.disabled}`,
74
+ `input[type="radio"]${i.inert}${i.negTabIndex}${i.disabled}`,
75
+ `select${i.inert}${i.negTabIndex}${i.disabled}`,
76
+ `textarea${i.inert}${i.negTabIndex}${i.disabled}`,
77
+ `button${i.inert}${i.negTabIndex}${i.disabled}`,
78
+ `details${i.inert} > summary:first-of-type${i.negTabIndex}`,
79
79
  // Discard until Firefox supports `:has()`
80
80
  // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12
81
81
  // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,
82
- `iframe${s.inert}${s.negTabIndex}`,
83
- `audio[controls]${s.inert}${s.negTabIndex}`,
84
- `video[controls]${s.inert}${s.negTabIndex}`,
85
- `[contenteditable]${s.inert}${s.negTabIndex}`,
86
- `[tabindex]${s.inert}${s.negTabIndex}`
82
+ `iframe${i.inert}${i.negTabIndex}`,
83
+ `audio[controls]${i.inert}${i.negTabIndex}`,
84
+ `video[controls]${i.inert}${i.negTabIndex}`,
85
+ `[contenteditable]${i.inert}${i.negTabIndex}`,
86
+ `[tabindex]${i.inert}${i.negTabIndex}`
87
87
  ];
88
- var f$2, d$1, u$2;
89
- let x$1 = class x {
88
+ var f$2, u$2, d$2;
89
+ let S$3 = class S {
90
90
  constructor(e = null, n = "[data-focus]") {
91
- h$2(this, f$2, void 0);
92
- h$2(this, d$1, void 0);
93
- h$2(this, u$2, void 0);
94
- this.el = e, this.selectorFocus = n, a(this, d$1, g$2.bind(this)), a(this, u$2, p$2.bind(this));
91
+ m$2(this, f$2, void 0);
92
+ m$2(this, u$2, void 0);
93
+ m$2(this, d$2, void 0);
94
+ this.el = e, this.selectorFocus = n, a$1(this, u$2, $$2.bind(this)), a$1(this, d$2, y$2.bind(this));
95
95
  }
96
96
  get focusable() {
97
- return o$1(this, f$2);
97
+ return r(this, f$2);
98
98
  }
99
99
  set focusable(e) {
100
- a(this, f$2, e), o$1(this, f$2).length ? (document.removeEventListener("keydown", o$1(this, u$2)), document.addEventListener("keydown", o$1(this, d$1))) : (document.removeEventListener("keydown", o$1(this, d$1)), document.addEventListener("keydown", o$1(this, u$2)));
100
+ a$1(this, f$2, e), r(this, f$2).length ? (document.removeEventListener("keydown", r(this, d$2)), document.addEventListener("keydown", r(this, u$2))) : (document.removeEventListener("keydown", r(this, u$2)), document.addEventListener("keydown", r(this, d$2)));
101
101
  }
102
102
  get focusableFirst() {
103
103
  return this.focusable[0];
@@ -109,143 +109,155 @@
109
109
  e && (this.el = e), n && (this.selectorFocus = n), this.focusable = this.getFocusable(), this.focus();
110
110
  }
111
111
  unmount() {
112
- this.el = null, this.focusable = [], document.removeEventListener("keydown", o$1(this, d$1)), document.removeEventListener("keydown", o$1(this, u$2));
112
+ this.el = null, this.focusable = [], document.removeEventListener("keydown", r(this, u$2)), document.removeEventListener("keydown", r(this, d$2));
113
113
  }
114
114
  focus(e = this.el, n = this.selectorFocus) {
115
115
  (e.querySelector(n) || e).focus();
116
116
  }
117
117
  getFocusable(e = this.el) {
118
- const n = [], i = document.activeElement, r2 = e.scrollTop;
119
- return e.querySelectorAll(v$2.join(",")).forEach((m2) => {
120
- m2.focus(), document.activeElement === m2 && n.push(m2);
121
- }), e.scrollTop = r2, i.focus(), n;
118
+ const n = [], s = document.activeElement, o2 = e.scrollTop;
119
+ return e.querySelectorAll(g$2.join(",")).forEach((h2) => {
120
+ h2.focus(), document.activeElement === h2 && n.push(h2);
121
+ }), e.scrollTop = o2, s.focus(), n;
122
122
  }
123
123
  };
124
- f$2 = /* @__PURE__ */ new WeakMap(), d$1 = /* @__PURE__ */ new WeakMap(), u$2 = /* @__PURE__ */ new WeakMap();
125
- function g$2(t) {
124
+ f$2 = /* @__PURE__ */ new WeakMap(), u$2 = /* @__PURE__ */ new WeakMap(), d$2 = /* @__PURE__ */ new WeakMap();
125
+ function $$2(t) {
126
126
  (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()));
127
127
  }
128
- function p$2(t) {
128
+ function y$2(t) {
129
129
  (t.key === "Tab" || t.keyCode === 9) && t.preventDefault();
130
130
  }
131
- function q$2(t, e) {
132
- const i = (t.getAttribute(`data-${e}`) || "").replace(/'/g, '"');
133
- return i ? JSON.parse(i) : {};
131
+ function v$2() {
132
+ return getComputedStyle(document.body).getPropertyValue("--vrembem-prefix").trim();
133
+ }
134
+ function T$2(t, e = document.body, n = true) {
135
+ if (n) {
136
+ const o2 = v$2();
137
+ o2 && !t.includes(`--${o2}`) && (t = t.replace("--", `--${o2}`));
138
+ }
139
+ const s = getComputedStyle(e).getPropertyValue(t).trim();
140
+ if (s)
141
+ return s;
142
+ throw new Error(`CSS variable "${t}" was not found!`);
134
143
  }
135
- function I$3() {
136
- return getComputedStyle(document.body).getPropertyValue("--vrembem-variable-prefix").trim();
144
+ function q$2(t, e) {
145
+ const s = (t.getAttribute(`data-${e}`) || "").replace(/'/g, '"');
146
+ return s ? JSON.parse(s) : {};
137
147
  }
138
- function C$2(t, e = true) {
139
- const n = localStorage.getItem(t), i = n ? JSON.parse(n) : {};
148
+ function F$3(t, e = true) {
149
+ const n = localStorage.getItem(t), s = n ? JSON.parse(n) : {};
140
150
  return {
141
- get(r2) {
142
- return r2 ? i[r2] : i;
151
+ get(o2) {
152
+ return o2 ? s[o2] : s;
143
153
  },
144
- set(r2, c2) {
145
- return c2 ? i[r2] = c2 : delete i[r2], e && localStorage.setItem(t, JSON.stringify(i)), i;
154
+ set(o2, c2) {
155
+ return c2 ? s[o2] = c2 : delete s[o2], e && localStorage.setItem(t, JSON.stringify(s)), s;
146
156
  }
147
157
  };
148
158
  }
149
- function O$2(t, e, n) {
150
- const i = e.nodeType === Node.COMMENT_NODE, r2 = e.nodeType === Node.ELEMENT_NODE;
151
- if (e = i || r2 ? e : document.querySelector(e), i && (n = "after"), !e)
159
+ function k$3(t, e, n) {
160
+ const s = e.nodeType === Node.COMMENT_NODE, o2 = e.nodeType === Node.ELEMENT_NODE;
161
+ if (e = s || o2 ? e : document.querySelector(e), s && (n = "after"), !e)
152
162
  throw new Error(`Not a valid teleport reference: '${e}'`);
153
163
  if (typeof e[n] != "function")
154
164
  throw new Error(`Not a valid teleport method: '${n}'`);
155
165
  let c2 = null;
156
- return i || (c2 = document.createComment("teleported #" + t.id), t.before(c2)), e[n](t), i && e.remove(), c2;
157
- }
158
- const S$3 = (t, e) => new Promise((n) => {
159
- e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener("transitionend", function i(r2) {
160
- r2.target == t && (t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), n(t), this.removeEventListener("transitionend", i));
161
- })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), n(t));
162
- }), F$3 = (t, e) => new Promise((n) => {
163
- e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener("transitionend", function i(r2) {
164
- r2.target == t && (t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), n(t), this.removeEventListener("transitionend", i));
165
- })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), n(t));
166
- });
167
- function y$2(t, e) {
168
- e && document.querySelectorAll(e).forEach((i) => {
169
- t ? i.style.overflow = "hidden" : i.style.removeProperty("overflow");
166
+ return s || (c2 = document.createComment("teleported #" + t.id), t.before(c2)), e[n](t), s && e.remove(), c2;
167
+ }
168
+ function w$2(t, e, n, s = "--transition-duration") {
169
+ return new Promise((o2) => {
170
+ if (typeof s == "string") {
171
+ const c2 = T$2(s, t), h2 = !!c2.includes("ms");
172
+ s = parseFloat(c2) * (h2 ? 1 : 1e3);
173
+ }
174
+ t.classList.remove(e.finish), t.classList.add(n.start), setTimeout(() => {
175
+ t.classList.add(n.finish), t.classList.remove(n.start), o2(t);
176
+ }, s);
170
177
  });
171
178
  }
172
- function L$2(t, e) {
173
- e && document.querySelectorAll(e).forEach((i) => {
174
- t ? (i.inert = true, i.setAttribute("aria-hidden", true)) : (i.inert = null, i.removeAttribute("aria-hidden"));
179
+ function p$2(t, e) {
180
+ e && document.querySelectorAll(e).forEach((s) => {
181
+ t ? s.style.overflow = "hidden" : s.style.removeProperty("overflow");
175
182
  });
176
183
  }
177
- function k$3(t, e) {
178
- L$2(!!t, e.selectorInert), y$2(!!t, e.selectorOverflow);
184
+ function E$2(t, e) {
185
+ e && document.querySelectorAll(e).forEach((s) => {
186
+ t ? (s.inert = true, s.setAttribute("aria-hidden", true)) : (s.inert = null, s.removeAttribute("aria-hidden"));
187
+ });
188
+ }
189
+ function C$2(t, e) {
190
+ E$2(!!t, e.selectorInert), p$2(!!t, e.selectorOverflow);
179
191
  }
180
192
  const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
181
193
  __proto__: null,
182
- Breakpoint: $$2,
183
- Collection: T$2,
184
- FocusTrap: x$1,
185
- closeTransition: F$3,
194
+ Breakpoint: I$3,
195
+ Collection: L$2,
196
+ FocusTrap: S$3,
197
+ cssVar: T$2,
186
198
  getConfig: q$2,
187
- getPrefix: I$3,
188
- localStore: C$2,
189
- openTransition: S$3,
190
- teleport: O$2,
191
- updateGlobalState: k$3
199
+ getPrefix: v$2,
200
+ localStore: F$3,
201
+ teleport: k$3,
202
+ transition: w$2,
203
+ updateGlobalState: C$2
192
204
  }, Symbol.toStringTag, { value: "Module" }));
193
- var S$2 = (t, e, s2) => {
194
- if (!e.has(t))
195
- throw TypeError("Cannot " + s2);
205
+ var I$2 = (t, s, e) => {
206
+ if (!s.has(t))
207
+ throw TypeError("Cannot " + e);
196
208
  };
197
- var p$1 = (t, e, s2) => (S$2(t, e, "read from private field"), s2 ? s2.call(t) : e.get(t)), E$1 = (t, e, s2) => {
198
- if (e.has(t))
209
+ var b$1 = (t, s, e) => (I$2(t, s, "read from private field"), e ? e.call(t) : s.get(t)), $$1 = (t, s, e) => {
210
+ if (s.has(t))
199
211
  throw TypeError("Cannot add the same private member more than once");
200
- e instanceof WeakSet ? e.add(t) : e.set(t, s2);
201
- }, $$1 = (t, e, s2, i) => (S$2(t, e, "write to private field"), i ? i.call(t, s2) : e.set(t, s2), s2);
202
- var I$2 = (t, e, s2) => {
203
- if (!e.has(t))
204
- throw TypeError("Cannot " + s2);
205
- }, l = (t, e, s2) => (I$2(t, e, "read from private field"), s2 ? s2.call(t) : e.get(t)), w$1 = (t, e, s2) => {
206
- if (e.has(t))
212
+ s instanceof WeakSet ? s.add(t) : s.set(t, e);
213
+ }, S$2 = (t, s, e, i2) => (I$2(t, s, "write to private field"), i2 ? i2.call(t, e) : s.set(t, e), e);
214
+ var O$1 = (t, s, e) => {
215
+ if (!s.has(t))
216
+ throw TypeError("Cannot " + e);
217
+ }, l = (t, s, e) => (O$1(t, s, "read from private field"), e ? e.call(t) : s.get(t)), w$1 = (t, s, e) => {
218
+ if (s.has(t))
207
219
  throw TypeError("Cannot add the same private member more than once");
208
- e instanceof WeakSet ? e.add(t) : e.set(t, s2);
209
- }, h$1 = (t, e, s2, i) => (I$2(t, e, "write to private field"), i ? i.call(t, s2) : e.set(t, s2), s2), c$1;
210
- let M$2 = class M {
211
- constructor(e, s2) {
212
- w$1(this, c$1, void 0), this.value = e, h$1(this, c$1, s2), this.mql = null;
220
+ s instanceof WeakSet ? s.add(t) : s.set(t, e);
221
+ }, u$1 = (t, s, e, i2) => (O$1(t, s, "write to private field"), i2 ? i2.call(t, e) : s.set(t, e), e), d$1;
222
+ let P$1 = class P {
223
+ constructor(s, e) {
224
+ w$1(this, d$1, void 0), this.value = s, u$1(this, d$1, e), this.mql = null;
213
225
  }
214
226
  get handler() {
215
- return l(this, c$1);
227
+ return l(this, d$1);
216
228
  }
217
229
  // Unmount existing handler before setting a new one.
218
- set handler(e) {
219
- this.mql && (typeof this.mql.removeEventListener == "function" ? this.mql.removeEventListener("change", l(this, c$1)) : this.mql.removeListener(l(this, c$1))), h$1(this, c$1, e);
230
+ set handler(s) {
231
+ this.mql && this.mql.removeEventListener("change", l(this, d$1)), u$1(this, d$1, s);
220
232
  }
221
- mount(e, s2) {
222
- return e && (this.value = e), s2 && h$1(this, c$1, s2), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), typeof this.mql.addEventListener == "function" ? this.mql.addEventListener("change", l(this, c$1)) : this.mql.addListener(l(this, c$1)), l(this, c$1).call(this, this.mql), this) : this;
233
+ mount(s, e) {
234
+ return s && (this.value = s), e && u$1(this, d$1, e), this.value ? (this.mql = window.matchMedia(`(min-width: ${this.value})`), this.mql.addEventListener("change", l(this, d$1)), l(this, d$1).call(this, this.mql), this) : this;
223
235
  }
224
236
  unmount() {
225
- return this.mql ? (typeof this.mql.removeEventListener == "function" ? this.mql.removeEventListener("change", l(this, c$1)) : this.mql.removeListener(l(this, c$1)), this.value = null, h$1(this, c$1, null), this.mql = null, this) : this;
237
+ return this.mql ? (this.mql.removeEventListener("change", l(this, d$1)), this.value = null, u$1(this, d$1, null), this.mql = null, this) : this;
226
238
  }
227
239
  };
228
- c$1 = /* @__PURE__ */ new WeakMap();
229
- let P$1 = class P {
240
+ d$1 = /* @__PURE__ */ new WeakMap();
241
+ let A$1 = class A {
230
242
  constructor() {
231
243
  this.collection = [];
232
244
  }
233
- async register(e) {
234
- return await this.deregister(e), this.collection.push(e), this.collection;
245
+ async register(s) {
246
+ return await this.deregister(s), this.collection.push(s), this.collection;
235
247
  }
236
- async deregister(e) {
237
- const s2 = this.collection.findIndex((i) => i === e);
238
- if (s2 >= 0) {
239
- const i = this.collection[s2];
240
- Object.getOwnPropertyNames(i).forEach((n) => {
241
- delete i[n];
242
- }), this.collection.splice(s2, 1);
248
+ async deregister(s) {
249
+ const e = this.collection.findIndex((i2) => i2 === s);
250
+ if (e >= 0) {
251
+ const i2 = this.collection[e];
252
+ Object.getOwnPropertyNames(i2).forEach((n) => {
253
+ delete i2[n];
254
+ }), this.collection.splice(e, 1);
243
255
  }
244
256
  return this.collection;
245
257
  }
246
- async registerCollection(e) {
247
- return await Promise.all(Array.from(e, (s2) => {
248
- this.register(s2);
258
+ async registerCollection(s) {
259
+ return await Promise.all(Array.from(s, (e) => {
260
+ this.register(e);
249
261
  })), this.collection;
250
262
  }
251
263
  async deregisterCollection() {
@@ -253,42 +265,42 @@
253
265
  await this.deregister(this.collection[0]);
254
266
  return this.collection;
255
267
  }
256
- get(e, s2 = "id") {
257
- return this.collection.find((i) => i[s2] === e);
268
+ get(s, e = "id") {
269
+ return this.collection.find((i2) => i2[e] === s);
258
270
  }
259
271
  };
260
- const r$1 = {
272
+ const o$1 = {
261
273
  inert: ":not([inert]):not([inert] *)",
262
274
  negTabIndex: ':not([tabindex^="-"])',
263
275
  disabled: ":not(:disabled)"
264
- }, F$2 = [
265
- `a[href]${r$1.inert}${r$1.negTabIndex}`,
266
- `area[href]${r$1.inert}${r$1.negTabIndex}`,
267
- `input:not([type="hidden"]):not([type="radio"])${r$1.inert}${r$1.negTabIndex}${r$1.disabled}`,
268
- `input[type="radio"]${r$1.inert}${r$1.negTabIndex}${r$1.disabled}`,
269
- `select${r$1.inert}${r$1.negTabIndex}${r$1.disabled}`,
270
- `textarea${r$1.inert}${r$1.negTabIndex}${r$1.disabled}`,
271
- `button${r$1.inert}${r$1.negTabIndex}${r$1.disabled}`,
272
- `details${r$1.inert} > summary:first-of-type${r$1.negTabIndex}`,
276
+ }, B$1 = [
277
+ `a[href]${o$1.inert}${o$1.negTabIndex}`,
278
+ `area[href]${o$1.inert}${o$1.negTabIndex}`,
279
+ `input:not([type="hidden"]):not([type="radio"])${o$1.inert}${o$1.negTabIndex}${o$1.disabled}`,
280
+ `input[type="radio"]${o$1.inert}${o$1.negTabIndex}${o$1.disabled}`,
281
+ `select${o$1.inert}${o$1.negTabIndex}${o$1.disabled}`,
282
+ `textarea${o$1.inert}${o$1.negTabIndex}${o$1.disabled}`,
283
+ `button${o$1.inert}${o$1.negTabIndex}${o$1.disabled}`,
284
+ `details${o$1.inert} > summary:first-of-type${o$1.negTabIndex}`,
273
285
  // Discard until Firefox supports `:has()`
274
286
  // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12
275
287
  // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,
276
- `iframe${r$1.inert}${r$1.negTabIndex}`,
277
- `audio[controls]${r$1.inert}${r$1.negTabIndex}`,
278
- `video[controls]${r$1.inert}${r$1.negTabIndex}`,
279
- `[contenteditable]${r$1.inert}${r$1.negTabIndex}`,
280
- `[tabindex]${r$1.inert}${r$1.negTabIndex}`
288
+ `iframe${o$1.inert}${o$1.negTabIndex}`,
289
+ `audio[controls]${o$1.inert}${o$1.negTabIndex}`,
290
+ `video[controls]${o$1.inert}${o$1.negTabIndex}`,
291
+ `[contenteditable]${o$1.inert}${o$1.negTabIndex}`,
292
+ `[tabindex]${o$1.inert}${o$1.negTabIndex}`
281
293
  ];
282
- var v$1, u$1, g$1;
283
- let B$2 = class B {
284
- constructor(e = null, s2 = "[data-focus]") {
285
- w$1(this, v$1, void 0), w$1(this, u$1, void 0), w$1(this, g$1, void 0), this.el = e, this.selectorFocus = s2, h$1(this, u$1, _$2.bind(this)), h$1(this, g$1, N$2.bind(this));
294
+ var v$1, g$1, f$1;
295
+ let j$2 = class j {
296
+ constructor(s = null, e = "[data-focus]") {
297
+ w$1(this, v$1, void 0), w$1(this, g$1, void 0), w$1(this, f$1, void 0), this.el = s, this.selectorFocus = e, u$1(this, g$1, q$1.bind(this)), u$1(this, f$1, K$2.bind(this));
286
298
  }
287
299
  get focusable() {
288
300
  return l(this, v$1);
289
301
  }
290
- set focusable(e) {
291
- h$1(this, v$1, e), l(this, v$1).length ? (document.removeEventListener("keydown", l(this, g$1)), document.addEventListener("keydown", l(this, u$1))) : (document.removeEventListener("keydown", l(this, u$1)), document.addEventListener("keydown", l(this, g$1)));
302
+ set focusable(s) {
303
+ u$1(this, v$1, s), l(this, v$1).length ? (document.removeEventListener("keydown", l(this, f$1)), document.addEventListener("keydown", l(this, g$1))) : (document.removeEventListener("keydown", l(this, g$1)), document.addEventListener("keydown", l(this, f$1)));
292
304
  }
293
305
  get focusableFirst() {
294
306
  return this.focusable[0];
@@ -296,70 +308,82 @@
296
308
  get focusableLast() {
297
309
  return this.focusable[this.focusable.length - 1];
298
310
  }
299
- mount(e, s2) {
300
- e && (this.el = e), s2 && (this.selectorFocus = s2), this.focusable = this.getFocusable(), this.focus();
311
+ mount(s, e) {
312
+ s && (this.el = s), e && (this.selectorFocus = e), this.focusable = this.getFocusable(), this.focus();
301
313
  }
302
314
  unmount() {
303
- this.el = null, this.focusable = [], document.removeEventListener("keydown", l(this, u$1)), document.removeEventListener("keydown", l(this, g$1));
315
+ this.el = null, this.focusable = [], document.removeEventListener("keydown", l(this, g$1)), document.removeEventListener("keydown", l(this, f$1));
304
316
  }
305
- focus(e = this.el, s2 = this.selectorFocus) {
306
- (e.querySelector(s2) || e).focus();
317
+ focus(s = this.el, e = this.selectorFocus) {
318
+ (s.querySelector(e) || s).focus();
307
319
  }
308
- getFocusable(e = this.el) {
309
- const s2 = [], i = document.activeElement, n = e.scrollTop;
310
- return e.querySelectorAll(F$2.join(",")).forEach((a2) => {
311
- a2.focus(), document.activeElement === a2 && s2.push(a2);
312
- }), e.scrollTop = n, i.focus(), s2;
320
+ getFocusable(s = this.el) {
321
+ const e = [], i2 = document.activeElement, n = s.scrollTop;
322
+ return s.querySelectorAll(B$1.join(",")).forEach((c2) => {
323
+ c2.focus(), document.activeElement === c2 && e.push(c2);
324
+ }), s.scrollTop = n, i2.focus(), e;
313
325
  }
314
326
  };
315
- v$1 = /* @__PURE__ */ new WeakMap(), u$1 = /* @__PURE__ */ new WeakMap(), g$1 = /* @__PURE__ */ new WeakMap();
316
- function _$2(t) {
327
+ v$1 = /* @__PURE__ */ new WeakMap(), g$1 = /* @__PURE__ */ new WeakMap(), f$1 = /* @__PURE__ */ new WeakMap();
328
+ function q$1(t) {
317
329
  (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()));
318
330
  }
319
- function N$2(t) {
331
+ function K$2(t) {
320
332
  (t.key === "Tab" || t.keyCode === 9) && t.preventDefault();
321
333
  }
322
- function K$2(t, e) {
323
- const s2 = (t.getAttribute(`data-${e}`) || "").replace(/'/g, '"');
324
- return s2 ? JSON.parse(s2) : {};
334
+ function y$1() {
335
+ return getComputedStyle(document.body).getPropertyValue("--vrembem-prefix").trim();
336
+ }
337
+ function N$2(t, s = document.body, e = true) {
338
+ if (e) {
339
+ const n = y$1();
340
+ n && !t.includes(`--${n}`) && (t = t.replace("--", `--${n}`));
341
+ }
342
+ const i2 = getComputedStyle(s).getPropertyValue(t).trim();
343
+ if (i2)
344
+ return i2;
345
+ throw new Error(`CSS variable "${t}" was not found!`);
325
346
  }
326
- function W$1() {
327
- return getComputedStyle(document.body).getPropertyValue("--vrembem-variable-prefix").trim();
347
+ function V$1(t, s) {
348
+ const e = (t.getAttribute(`data-${s}`) || "").replace(/'/g, '"');
349
+ return e ? JSON.parse(e) : {};
328
350
  }
329
- function V(t, e = true) {
330
- const s2 = localStorage.getItem(t), i = s2 ? JSON.parse(s2) : {};
351
+ function W$1(t, s = true) {
352
+ const e = localStorage.getItem(t), i2 = e ? JSON.parse(e) : {};
331
353
  return {
332
354
  get(n) {
333
- return n ? i[n] : i;
355
+ return n ? i2[n] : i2;
334
356
  },
335
- set(n, a2) {
336
- return a2 ? i[n] = a2 : delete i[n], e && localStorage.setItem(t, JSON.stringify(i)), i;
357
+ set(n, c2) {
358
+ return c2 ? i2[n] = c2 : delete i2[n], s && localStorage.setItem(t, JSON.stringify(i2)), i2;
337
359
  }
338
360
  };
339
361
  }
340
- const J$2 = (t, e) => new Promise((s2) => {
341
- e.transition ? (t.classList.remove(e.stateClosed), t.classList.add(e.stateOpening), t.addEventListener("transitionend", function i(n) {
342
- n.target == t && (t.classList.add(e.stateOpened), t.classList.remove(e.stateOpening), s2(t), this.removeEventListener("transitionend", i));
343
- })) : (t.classList.add(e.stateOpened), t.classList.remove(e.stateClosed), s2(t));
344
- }), z$1 = (t, e) => new Promise((s2) => {
345
- e.transition ? (t.classList.add(e.stateClosing), t.classList.remove(e.stateOpened), t.addEventListener("transitionend", function i(n) {
346
- n.target == t && (t.classList.remove(e.stateClosing), t.classList.add(e.stateClosed), s2(t), this.removeEventListener("transitionend", i));
347
- })) : (t.classList.add(e.stateClosed), t.classList.remove(e.stateOpened), s2(t));
348
- });
349
- function G$1(t, e) {
350
- e && document.querySelectorAll(e).forEach((s2) => {
351
- t ? s2.style.overflow = "hidden" : s2.style.removeProperty("overflow");
362
+ function M$1(t, s, e, i2 = "--transition-duration") {
363
+ return new Promise((n) => {
364
+ if (typeof i2 == "string") {
365
+ const c2 = N$2(i2, t), r2 = !!c2.includes("ms");
366
+ i2 = parseFloat(c2) * (r2 ? 1 : 1e3);
367
+ }
368
+ t.classList.remove(s.finish), t.classList.add(e.start), setTimeout(() => {
369
+ t.classList.add(e.finish), t.classList.remove(e.start), n(t);
370
+ }, i2);
352
371
  });
353
372
  }
354
- function H$2(t, e) {
355
- e && document.querySelectorAll(e).forEach((s2) => {
356
- t ? (s2.inert = true, s2.setAttribute("aria-hidden", true)) : (s2.inert = null, s2.removeAttribute("aria-hidden"));
373
+ function _$2(t, s) {
374
+ s && document.querySelectorAll(s).forEach((e) => {
375
+ t ? e.style.overflow = "hidden" : e.style.removeProperty("overflow");
357
376
  });
358
377
  }
359
- function k$2(t, e) {
360
- H$2(!!t, e.selectorInert), G$1(!!t, e.selectorOverflow);
378
+ function J$2(t, s) {
379
+ s && document.querySelectorAll(s).forEach((e) => {
380
+ t ? (e.inert = true, e.setAttribute("aria-hidden", true)) : (e.inert = null, e.removeAttribute("aria-hidden"));
381
+ });
361
382
  }
362
- const Q$1 = {
383
+ function k$2(t, s) {
384
+ J$2(!!t, s.selectorInert), _$2(!!t, s.selectorOverflow);
385
+ }
386
+ const z$1 = {
363
387
  autoInit: false,
364
388
  // Data attributes
365
389
  dataOpen: "drawer-open",
@@ -370,6 +394,7 @@
370
394
  // Selectors
371
395
  selectorDrawer: ".drawer",
372
396
  selectorDialog: ".drawer__dialog",
397
+ selectorScreen: ".drawer",
373
398
  selectorFocus: "[data-focus]",
374
399
  selectorInert: null,
375
400
  selectorOverflow: "body",
@@ -387,254 +412,263 @@
387
412
  store: true,
388
413
  storeKey: "VB:DrawerState",
389
414
  setTabindex: true,
390
- transition: true
415
+ transition: true,
416
+ transitionDuration: "--vb-drawer-transition-duration"
391
417
  };
392
- function R$1(t) {
393
- const e = t.target.closest(`
418
+ async function G$1(t) {
419
+ const s = t.target.closest(`
394
420
  [data-${this.settings.dataOpen}],
395
421
  [data-${this.settings.dataToggle}],
396
422
  [data-${this.settings.dataClose}]
397
423
  `);
398
- if (e) {
399
- t.preventDefault(), e.matches(`[data-${this.settings.dataToggle}]`) && e.getAttribute(`data-${this.settings.dataToggle}`).trim().split(" ").forEach((i) => {
400
- const n = this.get(i);
401
- n.trigger = e, n.toggle();
402
- }), e.matches(`[data-${this.settings.dataOpen}]`) && e.getAttribute(`data-${this.settings.dataOpen}`).trim().split(" ").forEach((i) => {
403
- const n = this.get(i);
404
- n.trigger = e, n.open();
405
- }), e.matches(`[data-${this.settings.dataClose}]`) && e.getAttribute(`data-${this.settings.dataClose}`).trim().split(" ").forEach((i) => {
406
- if (i) {
407
- const n = this.get(i);
408
- n.trigger = e, n.close();
424
+ if (s) {
425
+ t.preventDefault(), s.matches(`[data-${this.settings.dataToggle}]`) && s.getAttribute(`data-${this.settings.dataToggle}`).trim().split(" ").forEach((i2) => {
426
+ const n = this.get(i2);
427
+ return n.trigger = s, n.toggle();
428
+ }), s.matches(`[data-${this.settings.dataOpen}]`) && s.getAttribute(`data-${this.settings.dataOpen}`).trim().split(" ").forEach((i2) => {
429
+ const n = this.get(i2);
430
+ return n.trigger = s, n.open();
431
+ }), s.matches(`[data-${this.settings.dataClose}]`) && s.getAttribute(`data-${this.settings.dataClose}`).trim().split(" ").forEach((i2) => {
432
+ if (i2) {
433
+ const n = this.get(i2);
434
+ return n.trigger = s, n.close();
409
435
  } else {
410
436
  const n = t.target.closest(this.settings.selectorDrawer);
411
- n && this.close(n);
437
+ if (n)
438
+ return this.close(n);
412
439
  }
413
440
  });
414
441
  return;
415
442
  }
416
- t.target.matches(this.settings.selectorDrawer) && this.close(t.target.id);
443
+ if (this.activeModal && t.target.matches(this.settings.selectorScreen))
444
+ return this.close(this.activeModal.id);
417
445
  }
418
- function U$1(t) {
419
- if (t.key === "Escape") {
420
- const e = this.activeModal;
421
- e && this.close(e);
422
- }
446
+ function H$1(t) {
447
+ if (t.key === "Escape" && this.activeModal)
448
+ return this.close(this.activeModal);
423
449
  }
424
- async function L$1(t, e = true) {
425
- if (!t)
426
- return this.collection;
427
- const s2 = this.collection.findIndex((i) => i.id === t.id);
428
- if (s2 >= 0) {
429
- const i = this.collection[s2];
430
- e && i.state === "opened" && await i.close(false), this.store.set(i.id), i.unmountBreakpoint(), Object.getOwnPropertyNames(i).forEach((n) => {
431
- delete i[n];
432
- }), this.collection.splice(s2, 1);
450
+ async function L$1(t, s = true) {
451
+ const e = this.collection.findIndex((i2) => i2.id === t.id);
452
+ if (e >= 0) {
453
+ const i2 = this.collection[e];
454
+ s && i2.state === "opened" && await i2.close(false), this.store.set(i2.id), i2.unmountBreakpoint(), Object.getOwnPropertyNames(i2).forEach((n) => {
455
+ delete i2[n];
456
+ }), this.collection.splice(e, 1);
433
457
  }
434
458
  return this.collection;
435
459
  }
436
- function X(t) {
437
- const e = W$1(), s2 = t.getAttribute(`data-${this.settings.dataBreakpoint}`);
438
- return this.settings.breakpoints && this.settings.breakpoints[s2] ? this.settings.breakpoints[s2] : getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${s2}`).trim() ? getComputedStyle(document.body).getPropertyValue(`--${e}breakpoint-${s2}`).trim() : s2;
439
- }
440
- function y$1(t) {
441
- const e = typeof t == "string" ? this.get(t) : this.get(t.id);
442
- if (e)
443
- return e;
444
- throw new Error(`Drawer not found in collection with id of "${t.id || t}".`);
460
+ function Q$1(t) {
461
+ t.store === "opened" ? t.open(false, false) : t.store === "closed" ? t.close(false, false) : t.store === "indeterminate" ? t.state = "indeterminate" : t.el.classList.contains(t.getSetting("stateOpened")) ? t.open(false, false) : t.el.classList.contains(t.getSetting("stateClosed")) ? t.close(false, false) : t.state = "indeterminate";
445
462
  }
446
- function O$1(t) {
447
- 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}`) || false : 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 || false) : false : t.id ? t.id : false;
463
+ async function R$1(t) {
464
+ t.store === "opened" ? await t.open(false, false) : t.store === "closed" ? await t.close(false, false) : t.store === "indeterminate" ? t.state != "indeterminate" && (t.state = "indeterminate") : (t.state != t.inlineState && (t.state = t.inlineState), t.inlineState === "opened" ? await t.open(false, false) : t.inlineState === "closed" && await t.close(false, false));
448
465
  }
449
- function Y(t) {
450
- const e = O$1.call(this, t);
451
- if (e) {
452
- const s2 = document.querySelector(`#${e}`), i = s2 ? s2.querySelector(this.settings.selectorDialog) : null;
453
- return !s2 && !i ? { error: new Error(`No drawer elements found using the ID: "${e}".`) } : i ? { drawer: s2, dialog: i } : { error: new Error("Drawer is missing dialog element.") };
454
- } else
455
- return { error: new Error("Could not resolve the drawer ID.") };
466
+ function U(t) {
467
+ const s = y$1(), e = t.getAttribute(`data-${this.settings.dataBreakpoint}`);
468
+ return this.settings.breakpoints && this.settings.breakpoints[e] ? this.settings.breakpoints[e] : getComputedStyle(document.body).getPropertyValue(`--${s}breakpoint-${e}`).trim() ? getComputedStyle(document.body).getPropertyValue(`--${s}breakpoint-${e}`).trim() : e;
456
469
  }
457
- async function A$1(t) {
458
- this.store.get(t.id) ? this.store.get(t.id) === "opened" ? await t.open(false, false) : await t.close(false, false) : 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));
470
+ function C$1(t) {
471
+ const s = typeof t == "string" ? this.get(t) : this.get(t.id);
472
+ if (s)
473
+ return s;
474
+ throw new Error(`Drawer not found in collection with id of "${t.id || t}".`);
459
475
  }
460
476
  function D$2(t) {
461
477
  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());
462
478
  }
463
- async function C$1(t, e, s2 = true) {
464
- const i = y$1.call(this, t), n = { ...this.settings, ...i.settings };
465
- return e !== void 0 && (n.transition = e), i.state === "closed" && (i.state = "opening", await J$2(i.el, n), i.mode === "modal" && k$2(true, n), i.state = "opened"), s2 && D$2.call(this, i), i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "opened", {
479
+ async function x$1(t, s, e = true) {
480
+ const i2 = C$1.call(this, t), n = { ...this.settings, ...i2.settings };
481
+ return s !== void 0 && (n.transition = s), (i2.state === "closed" || i2.state === "indeterminate") && (i2.state = "opening", n.transition ? await M$1(i2.el, {
482
+ start: n.stateClosing,
483
+ finish: n.stateClosed
484
+ }, {
485
+ start: n.stateOpening,
486
+ finish: n.stateOpened
487
+ }, n.transitionDuration) : (i2.el.classList.add(n.stateOpened), i2.el.classList.remove(n.stateClosed)), i2.state = "opened", i2.mode === "modal" && k$2(true, n), e && D$2.call(this, i2), i2.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "opened", {
466
488
  detail: this,
467
489
  bubbles: true
468
- })), i;
490
+ }))), i2;
469
491
  }
470
- async function b$1(t, e, s2 = true) {
471
- const i = y$1.call(this, t), n = { ...this.settings, ...i.settings };
472
- return e !== void 0 && (n.transition = e), i.state === "opened" && (i.state = "closing", document.activeElement.blur(), await z$1(i.el, n), i.mode === "modal" && k$2(false, n), s2 && D$2.call(this, i), i.state = "closed", i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "closed", {
492
+ async function E$1(t, s, e = true) {
493
+ const i2 = C$1.call(this, t), n = { ...this.settings, ...i2.settings };
494
+ return s !== void 0 && (n.transition = s), (i2.state === "opened" || i2.state === "indeterminate") && (i2.state = "closing", document.activeElement.blur(), n.transition ? await M$1(i2.el, {
495
+ start: n.stateOpening,
496
+ finish: n.stateOpened
497
+ }, {
498
+ start: n.stateClosing,
499
+ finish: n.stateClosed
500
+ }, n.transitionDuration) : (i2.el.classList.add(n.stateClosed), i2.el.classList.remove(n.stateOpened)), i2.state = "closed", i2.mode === "modal" && k$2(false, n), e && D$2.call(this, i2), i2.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "closed", {
473
501
  detail: this,
474
502
  bubbles: true
475
- }))), i;
503
+ }))), i2;
476
504
  }
477
- async function q$1(t, e, s2) {
478
- const i = y$1.call(this, t);
479
- return i.state === "closed" ? C$1.call(this, i, e, s2) : b$1.call(this, i, e, s2);
505
+ async function F$2(t, s, e) {
506
+ const i2 = C$1.call(this, t);
507
+ return i2.state === "closed" ? x$1.call(this, i2, s, e) : E$1.call(this, i2, s, e);
480
508
  }
481
- function Z$1(t) {
509
+ function X(t) {
482
510
  switch (t.mode) {
483
511
  case "inline":
484
- return j.call(this, t);
512
+ return Y.call(this, t);
485
513
  case "modal":
486
- return tt$1.call(this, t);
514
+ return Z$1.call(this, t);
487
515
  default:
488
516
  throw new Error(`"${t.mode}" is not a valid drawer mode.`);
489
517
  }
490
518
  }
491
- async function j(t) {
492
- return t.el.classList.remove(t.getSetting("classModal")), t.dialog.removeAttribute("aria-modal"), k$2(false, { ...this.settings, ...t.settings }), this.focusTrap.unmount(), await A$1.call(this, t), t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix") + "switchMode", {
519
+ async function Y(t) {
520
+ return t.el.classList.remove(t.getSetting("classModal")), t.dialog.removeAttribute("aria-modal"), k$2(false, { ...this.settings, ...t.settings }), this.focusTrap.unmount(), await R$1(t), t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix") + "switchMode", {
493
521
  detail: this,
494
522
  bubbles: true
495
523
  })), t;
496
524
  }
497
- async function tt$1(t) {
498
- 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$1.call(this, t, false, false), t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix") + "switchMode", {
525
+ async function Z$1(t) {
526
+ return t.el.classList.add(t.getSetting("classModal")), t.dialog.setAttribute("aria-modal", "true"), await E$1.call(this, t, false, false), t.el.dispatchEvent(new CustomEvent(t.getSetting("customEventPrefix") + "switchMode", {
499
527
  detail: this,
500
528
  bubbles: true
501
529
  })), t;
502
530
  }
503
- async function et$1(t, e) {
531
+ async function tt$1(t, s = {}) {
504
532
  await L$1.call(this, t, false);
505
- const s2 = this, i = new M$2(), n = {
506
- open(o2, d2) {
507
- return C$1.call(s2, this, o2, d2);
533
+ const e = this, i2 = new P$1();
534
+ let n, c2 = "indeterminate";
535
+ const r2 = {
536
+ id: t.id,
537
+ el: t,
538
+ dialog: null,
539
+ trigger: null,
540
+ settings: { ...V$1(t, this.settings.dataConfig), ...s },
541
+ inlineState: "indeterminate",
542
+ get breakpoint() {
543
+ return U.call(e, t);
508
544
  },
509
- close(o2, d2) {
510
- return b$1.call(s2, this, o2, d2);
545
+ get store() {
546
+ return e.store.get(this.id);
511
547
  },
512
- toggle(o2, d2) {
513
- return q$1.call(s2, this, o2, d2);
548
+ get mode() {
549
+ return n;
514
550
  },
515
- deregister() {
516
- return L$1.call(s2, this);
551
+ set mode(a2) {
552
+ n = a2, X.call(e, this);
517
553
  },
518
- mountBreakpoint() {
519
- const o2 = this.breakpoint, d2 = this.handleBreakpoint.bind(this);
520
- return i.mount(o2, d2), this;
554
+ get state() {
555
+ return c2;
521
556
  },
522
- unmountBreakpoint() {
523
- return i.unmount(), this;
557
+ set state(a2) {
558
+ c2 = a2, this.mode === "inline" && a2 != "opening" && a2 != "closing" && (this.inlineState = a2, this.getSetting("store") && e.store.set(this.id, a2)), a2 === "indeterminate" && (this.el.classList.remove(this.getSetting("stateOpened")), this.el.classList.remove(this.getSetting("stateOpening")), this.el.classList.remove(this.getSetting("stateClosed")), this.el.classList.remove(this.getSetting("stateClosing")));
524
559
  },
525
- handleBreakpoint(o2) {
526
- return this.mode = o2.matches ? "inline" : "modal", this;
560
+ open(a2, h2) {
561
+ return x$1.call(e, this, a2, h2);
527
562
  },
528
- getSetting(o2) {
529
- return o2 in this.settings ? this.settings[o2] : s2.settings[o2];
530
- }
531
- }, a2 = {
532
- id: t.id,
533
- el: t,
534
- dialog: e,
535
- trigger: null,
536
- settings: K$2(t, this.settings.dataConfig),
537
- get breakpoint() {
538
- return X.call(s2, t);
563
+ close(a2, h2) {
564
+ return E$1.call(e, this, a2, h2);
539
565
  },
540
- get state() {
541
- return T2;
566
+ toggle(a2, h2) {
567
+ return F$2.call(e, this, a2, h2);
542
568
  },
543
- set state(o2) {
544
- T2 = o2, (o2 === "opened" || o2 === "closed") && this.mode === "inline" && s2.store.set(this.id, this.state);
569
+ deregister() {
570
+ return L$1.call(e, this);
545
571
  },
546
- get mode() {
547
- return x2;
572
+ mountBreakpoint() {
573
+ const a2 = this.breakpoint, h2 = this.handleBreakpoint.bind(this);
574
+ return i2.mount(a2, h2), this;
575
+ },
576
+ unmountBreakpoint() {
577
+ return i2.unmount(), this;
548
578
  },
549
- set mode(o2) {
550
- x2 = o2, Z$1.call(s2, this);
579
+ handleBreakpoint(a2) {
580
+ const h2 = a2.matches ? "inline" : "modal";
581
+ return this.mode != h2 && (this.mode = h2), this;
551
582
  },
552
- ...n
583
+ getSetting(a2) {
584
+ return a2 in this.settings ? this.settings[a2] : e.settings[a2];
585
+ }
553
586
  };
554
- let T2 = t.classList.contains(a2.getSetting("stateOpened")) ? "opened" : "closed", x2 = t.classList.contains(a2.getSetting("classModal")) ? "modal" : "inline";
555
- return a2.mode === "modal" ? a2.dialog.setAttribute("aria-modal", "true") : a2.dialog.removeAttribute("aria-modal"), a2.getSetting("setTabindex") && a2.dialog.setAttribute("tabindex", "-1"), this.collection.push(a2), a2.breakpoint ? a2.mountBreakpoint() : await A$1.call(this, a2), a2;
587
+ this.collection.push(r2);
588
+ const T2 = t.querySelector(r2.getSetting("selectorDialog"));
589
+ return r2.dialog = T2 || t, r2.getSetting("setTabindex") && r2.dialog.setAttribute("tabindex", "-1"), await Q$1(r2), r2.inlineState = r2.state, r2.mode = t.classList.contains(r2.getSetting("classModal")) ? "modal" : "inline", r2.breakpoint && r2.mountBreakpoint(), r2;
556
590
  }
557
- var f$1, m$1;
558
- let it$1 = class it extends P$1 {
559
- constructor(s2) {
591
+ var m$1, p$1;
592
+ let st$1 = class st extends A$1 {
593
+ constructor(e) {
560
594
  super();
561
- E$1(this, f$1, void 0);
562
- E$1(this, m$1, void 0);
563
- this.defaults = Q$1, this.settings = { ...this.defaults, ...s2 }, this.focusTrap = new B$2(), this.store = V(this.settings.storeKey, this.settings.store), $$1(this, f$1, R$1.bind(this)), $$1(this, m$1, U$1.bind(this)), this.settings.autoInit && this.init();
595
+ $$1(this, m$1, void 0);
596
+ $$1(this, p$1, void 0);
597
+ this.defaults = z$1, this.settings = { ...this.defaults, ...e }, this.focusTrap = new j$2(), this.store = W$1(this.settings.storeKey, this.settings.store), S$2(this, m$1, G$1.bind(this)), S$2(this, p$1, H$1.bind(this)), this.settings.autoInit && this.init();
564
598
  }
565
599
  get activeModal() {
566
- return this.collection.find((s2) => s2.state === "opened" && s2.mode === "modal");
600
+ return this.collection.find((e) => e.state === "opened" && e.mode === "modal");
567
601
  }
568
- async init(s2 = null) {
569
- s2 && (this.settings = { ...this.settings, ...s2 });
570
- const i = document.querySelectorAll(this.settings.selectorDrawer);
571
- return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(), this;
602
+ async init(e = null) {
603
+ e && (this.settings = { ...this.settings, ...e });
604
+ const i2 = document.querySelectorAll(this.settings.selectorDrawer);
605
+ return await this.registerCollection(i2), this.settings.eventListeners && this.initEventListeners(), this;
572
606
  }
573
607
  async destroy() {
574
608
  return await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(), this;
575
609
  }
576
610
  initEventListeners() {
577
- document.addEventListener("click", p$1(this, f$1), false), document.addEventListener("keydown", p$1(this, m$1), false);
611
+ document.addEventListener("click", b$1(this, m$1), false), document.addEventListener("keydown", b$1(this, p$1), false);
578
612
  }
579
613
  destroyEventListeners() {
580
- document.removeEventListener("click", p$1(this, f$1), false), document.removeEventListener("keydown", p$1(this, m$1), false);
614
+ document.removeEventListener("click", b$1(this, m$1), false), document.removeEventListener("keydown", b$1(this, p$1), false);
581
615
  }
582
- register(s2) {
583
- const i = Y.call(this, s2);
584
- return i.error ? Promise.reject(i.error) : et$1.call(this, i.drawer, i.dialog);
616
+ register(e, i2 = {}) {
617
+ let n = typeof e == "string" ? document.getElementById(e) : e;
618
+ return n ? tt$1.call(this, n, i2) : Promise.reject(new Error(`Failed to register; drawer not found with ID of: "${e.id || e}".`));
585
619
  }
586
- deregister(s2) {
587
- const i = this.get(O$1.call(this, s2));
588
- return L$1.call(this, i);
620
+ deregister(e) {
621
+ let i2 = this.get(e.id || e);
622
+ return i2 ? L$1.call(this, i2) : Promise.reject(new Error(`Failed to deregister; drawer does not exist in collection with ID of: "${e.id || e}".`));
589
623
  }
590
- open(s2, i, n) {
591
- return C$1.call(this, s2, i, n);
624
+ open(e, i2, n) {
625
+ return x$1.call(this, e, i2, n);
592
626
  }
593
- close(s2, i, n) {
594
- return b$1.call(this, s2, i, n);
627
+ close(e, i2, n) {
628
+ return E$1.call(this, e, i2, n);
595
629
  }
596
- toggle(s2, i, n) {
597
- return q$1.call(this, s2, i, n);
630
+ toggle(e, i2, n) {
631
+ return F$2.call(this, e, i2, n);
598
632
  }
599
633
  };
600
- f$1 = /* @__PURE__ */ new WeakMap(), m$1 = /* @__PURE__ */ new WeakMap();
601
- var I$1 = (e, t, s2) => {
602
- if (!t.has(e))
603
- throw TypeError("Cannot " + s2);
634
+ m$1 = /* @__PURE__ */ new WeakMap(), p$1 = /* @__PURE__ */ new WeakMap();
635
+ var I$1 = (i2, s, t) => {
636
+ if (!s.has(i2))
637
+ throw TypeError("Cannot " + t);
604
638
  };
605
- var f = (e, t, s2) => (I$1(e, t, "read from private field"), s2 ? s2.call(e) : t.get(e)), v = (e, t, s2) => {
606
- if (t.has(e))
639
+ var f = (i2, s, t) => (I$1(i2, s, "read from private field"), t ? t.call(i2) : s.get(i2)), m = (i2, s, t) => {
640
+ if (s.has(i2))
607
641
  throw TypeError("Cannot add the same private member more than once");
608
- t instanceof WeakSet ? t.add(e) : t.set(e, s2);
609
- }, b = (e, t, s2, i) => (I$1(e, t, "write to private field"), i ? i.call(e, s2) : t.set(e, s2), s2);
610
- var k$1 = (e, t, s2) => {
611
- if (!t.has(e))
612
- throw TypeError("Cannot " + s2);
613
- }, o = (e, t, s2) => (k$1(e, t, "read from private field"), s2 ? s2.call(e) : t.get(e)), y = (e, t, s2) => {
614
- if (t.has(e))
642
+ s instanceof WeakSet ? s.add(i2) : s.set(i2, t);
643
+ }, v = (i2, s, t, e) => (I$1(i2, s, "write to private field"), e ? e.call(i2, t) : s.set(i2, t), t);
644
+ var T$1 = (i2, s, t) => {
645
+ if (!s.has(i2))
646
+ throw TypeError("Cannot " + t);
647
+ }, a = (i2, s, t) => (T$1(i2, s, "read from private field"), t ? t.call(i2) : s.get(i2)), b = (i2, s, t) => {
648
+ if (s.has(i2))
615
649
  throw TypeError("Cannot add the same private member more than once");
616
- t instanceof WeakSet ? t.add(e) : t.set(e, s2);
617
- }, E = (e, t, s2, i) => (k$1(e, t, "write to private field"), i ? i.call(e, s2) : t.set(e, s2), s2);
618
- class A {
650
+ s instanceof WeakSet ? s.add(i2) : s.set(i2, t);
651
+ }, y = (i2, s, t, e) => (T$1(i2, s, "write to private field"), e ? e.call(i2, t) : s.set(i2, t), t);
652
+ class O {
619
653
  constructor() {
620
654
  this.collection = [];
621
655
  }
622
- async register(t) {
623
- return await this.deregister(t), this.collection.push(t), this.collection;
656
+ async register(s) {
657
+ return await this.deregister(s), this.collection.push(s), this.collection;
624
658
  }
625
- async deregister(t) {
626
- const s2 = this.collection.findIndex((i) => i === t);
627
- if (s2 >= 0) {
628
- const i = this.collection[s2];
629
- Object.getOwnPropertyNames(i).forEach((n) => {
630
- delete i[n];
631
- }), this.collection.splice(s2, 1);
659
+ async deregister(s) {
660
+ const t = this.collection.findIndex((e) => e === s);
661
+ if (t >= 0) {
662
+ const e = this.collection[t];
663
+ Object.getOwnPropertyNames(e).forEach((n) => {
664
+ delete e[n];
665
+ }), this.collection.splice(t, 1);
632
666
  }
633
667
  return this.collection;
634
668
  }
635
- async registerCollection(t) {
636
- return await Promise.all(Array.from(t, (s2) => {
637
- this.register(s2);
669
+ async registerCollection(s) {
670
+ return await Promise.all(Array.from(s, (t) => {
671
+ this.register(t);
638
672
  })), this.collection;
639
673
  }
640
674
  async deregisterCollection() {
@@ -642,42 +676,42 @@
642
676
  await this.deregister(this.collection[0]);
643
677
  return this.collection;
644
678
  }
645
- get(t, s2 = "id") {
646
- return this.collection.find((i) => i[s2] === t);
679
+ get(s, t = "id") {
680
+ return this.collection.find((e) => e[t] === s);
647
681
  }
648
682
  }
649
- const r = {
683
+ const o = {
650
684
  inert: ":not([inert]):not([inert] *)",
651
685
  negTabIndex: ':not([tabindex^="-"])',
652
686
  disabled: ":not(:disabled)"
653
- }, S$1 = [
654
- `a[href]${r.inert}${r.negTabIndex}`,
655
- `area[href]${r.inert}${r.negTabIndex}`,
656
- `input:not([type="hidden"]):not([type="radio"])${r.inert}${r.negTabIndex}${r.disabled}`,
657
- `input[type="radio"]${r.inert}${r.negTabIndex}${r.disabled}`,
658
- `select${r.inert}${r.negTabIndex}${r.disabled}`,
659
- `textarea${r.inert}${r.negTabIndex}${r.disabled}`,
660
- `button${r.inert}${r.negTabIndex}${r.disabled}`,
661
- `details${r.inert} > summary:first-of-type${r.negTabIndex}`,
687
+ }, A = [
688
+ `a[href]${o.inert}${o.negTabIndex}`,
689
+ `area[href]${o.inert}${o.negTabIndex}`,
690
+ `input:not([type="hidden"]):not([type="radio"])${o.inert}${o.negTabIndex}${o.disabled}`,
691
+ `input[type="radio"]${o.inert}${o.negTabIndex}${o.disabled}`,
692
+ `select${o.inert}${o.negTabIndex}${o.disabled}`,
693
+ `textarea${o.inert}${o.negTabIndex}${o.disabled}`,
694
+ `button${o.inert}${o.negTabIndex}${o.disabled}`,
695
+ `details${o.inert} > summary:first-of-type${o.negTabIndex}`,
662
696
  // Discard until Firefox supports `:has()`
663
697
  // See: https://github.com/KittyGiraudel/focusable-selectors/issues/12
664
698
  // `details:not(:has(> summary))${not.inert}${not.negTabIndex}`,
665
- `iframe${r.inert}${r.negTabIndex}`,
666
- `audio[controls]${r.inert}${r.negTabIndex}`,
667
- `video[controls]${r.inert}${r.negTabIndex}`,
668
- `[contenteditable]${r.inert}${r.negTabIndex}`,
669
- `[tabindex]${r.inert}${r.negTabIndex}`
699
+ `iframe${o.inert}${o.negTabIndex}`,
700
+ `audio[controls]${o.inert}${o.negTabIndex}`,
701
+ `video[controls]${o.inert}${o.negTabIndex}`,
702
+ `[contenteditable]${o.inert}${o.negTabIndex}`,
703
+ `[tabindex]${o.inert}${o.negTabIndex}`
670
704
  ];
671
705
  var g, c, d;
672
- let M$1 = class M {
673
- constructor(t = null, s2 = "[data-focus]") {
674
- y(this, g, void 0), y(this, c, void 0), y(this, d, void 0), this.el = t, this.selectorFocus = s2, E(this, c, R.bind(this)), E(this, d, N$1.bind(this));
706
+ class M {
707
+ constructor(s = null, t = "[data-focus]") {
708
+ b(this, g, void 0), b(this, c, void 0), b(this, d, void 0), this.el = s, this.selectorFocus = t, y(this, c, P.bind(this)), y(this, d, R.bind(this));
675
709
  }
676
710
  get focusable() {
677
- return o(this, g);
711
+ return a(this, g);
678
712
  }
679
- set focusable(t) {
680
- 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)));
713
+ set focusable(s) {
714
+ y(this, g, s), a(this, g).length ? (document.removeEventListener("keydown", a(this, d)), document.addEventListener("keydown", a(this, c))) : (document.removeEventListener("keydown", a(this, c)), document.addEventListener("keydown", a(this, d)));
681
715
  }
682
716
  get focusableFirst() {
683
717
  return this.focusable[0];
@@ -685,63 +719,78 @@
685
719
  get focusableLast() {
686
720
  return this.focusable[this.focusable.length - 1];
687
721
  }
688
- mount(t, s2) {
689
- t && (this.el = t), s2 && (this.selectorFocus = s2), this.focusable = this.getFocusable(), this.focus();
722
+ mount(s, t) {
723
+ s && (this.el = s), t && (this.selectorFocus = t), this.focusable = this.getFocusable(), this.focus();
690
724
  }
691
725
  unmount() {
692
- this.el = null, this.focusable = [], document.removeEventListener("keydown", o(this, c)), document.removeEventListener("keydown", o(this, d));
726
+ this.el = null, this.focusable = [], document.removeEventListener("keydown", a(this, c)), document.removeEventListener("keydown", a(this, d));
693
727
  }
694
- focus(t = this.el, s2 = this.selectorFocus) {
695
- (t.querySelector(s2) || t).focus();
728
+ focus(s = this.el, t = this.selectorFocus) {
729
+ (s.querySelector(t) || s).focus();
696
730
  }
697
- getFocusable(t = this.el) {
698
- const s2 = [], i = document.activeElement, n = t.scrollTop;
699
- return t.querySelectorAll(S$1.join(",")).forEach((l2) => {
700
- l2.focus(), document.activeElement === l2 && s2.push(l2);
701
- }), t.scrollTop = n, i.focus(), s2;
731
+ getFocusable(s = this.el) {
732
+ const t = [], e = document.activeElement, n = s.scrollTop;
733
+ return s.querySelectorAll(A.join(",")).forEach((r2) => {
734
+ r2.focus(), document.activeElement === r2 && t.push(r2);
735
+ }), s.scrollTop = n, e.focus(), t;
702
736
  }
703
- };
737
+ }
704
738
  g = /* @__PURE__ */ new WeakMap(), c = /* @__PURE__ */ new WeakMap(), d = /* @__PURE__ */ new WeakMap();
705
- function R(e) {
706
- (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()));
707
- }
708
- function N$1(e) {
709
- (e.key === "Tab" || e.keyCode === 9) && e.preventDefault();
710
- }
711
- function P(e, t) {
712
- const s2 = (e.getAttribute(`data-${t}`) || "").replace(/'/g, '"');
713
- return s2 ? JSON.parse(s2) : {};
714
- }
715
- function T$1(e, t, s2) {
716
- const i = t.nodeType === Node.COMMENT_NODE, n = t.nodeType === Node.ELEMENT_NODE;
717
- if (t = i || n ? t : document.querySelector(t), i && (s2 = "after"), !t)
718
- throw new Error(`Not a valid teleport reference: '${t}'`);
719
- if (typeof t[s2] != "function")
720
- throw new Error(`Not a valid teleport method: '${s2}'`);
721
- let l2 = null;
722
- return i || (l2 = document.createComment("teleported #" + e.id), e.before(l2)), t[s2](e), i && t.remove(), l2;
723
- }
724
- const D$1 = (e, t) => new Promise((s2) => {
725
- t.transition ? (e.classList.remove(t.stateClosed), e.classList.add(t.stateOpening), e.addEventListener("transitionend", function i(n) {
726
- n.target == e && (e.classList.add(t.stateOpened), e.classList.remove(t.stateOpening), s2(e), this.removeEventListener("transitionend", i));
727
- })) : (e.classList.add(t.stateOpened), e.classList.remove(t.stateClosed), s2(e));
728
- }), F$1 = (e, t) => new Promise((s2) => {
729
- t.transition ? (e.classList.add(t.stateClosing), e.classList.remove(t.stateOpened), e.addEventListener("transitionend", function i(n) {
730
- n.target == e && (e.classList.remove(t.stateClosing), e.classList.add(t.stateClosed), s2(e), this.removeEventListener("transitionend", i));
731
- })) : (e.classList.add(t.stateClosed), e.classList.remove(t.stateOpened), s2(e));
732
- });
733
- function q(e, t) {
734
- t && document.querySelectorAll(t).forEach((s2) => {
735
- e ? s2.style.overflow = "hidden" : s2.style.removeProperty("overflow");
739
+ function P(i2) {
740
+ (i2.key === "Tab" || i2.keyCode === 9) && (i2.shiftKey ? (document.activeElement === this.focusableFirst || document.activeElement === this.el) && (i2.preventDefault(), this.focusableLast.focus()) : (document.activeElement === this.focusableLast || document.activeElement === this.el) && (i2.preventDefault(), this.focusableFirst.focus()));
741
+ }
742
+ function R(i2) {
743
+ (i2.key === "Tab" || i2.keyCode === 9) && i2.preventDefault();
744
+ }
745
+ function F$1() {
746
+ return getComputedStyle(document.body).getPropertyValue("--vrembem-prefix").trim();
747
+ }
748
+ function D$1(i2, s = document.body, t = true) {
749
+ if (t) {
750
+ const n = F$1();
751
+ n && !i2.includes(`--${n}`) && (i2 = i2.replace("--", `--${n}`));
752
+ }
753
+ const e = getComputedStyle(s).getPropertyValue(i2).trim();
754
+ if (e)
755
+ return e;
756
+ throw new Error(`CSS variable "${i2}" was not found!`);
757
+ }
758
+ function N$1(i2, s) {
759
+ const t = (i2.getAttribute(`data-${s}`) || "").replace(/'/g, '"');
760
+ return t ? JSON.parse(t) : {};
761
+ }
762
+ function L(i2, s, t) {
763
+ const e = s.nodeType === Node.COMMENT_NODE, n = s.nodeType === Node.ELEMENT_NODE;
764
+ if (s = e || n ? s : document.querySelector(s), e && (t = "after"), !s)
765
+ throw new Error(`Not a valid teleport reference: '${s}'`);
766
+ if (typeof s[t] != "function")
767
+ throw new Error(`Not a valid teleport method: '${t}'`);
768
+ let r2 = null;
769
+ return e || (r2 = document.createComment("teleported #" + i2.id), i2.before(r2)), s[t](i2), e && s.remove(), r2;
770
+ }
771
+ function S$1(i2, s, t, e = "--transition-duration") {
772
+ return new Promise((n) => {
773
+ if (typeof e == "string") {
774
+ const r2 = D$1(e, i2), l2 = !!r2.includes("ms");
775
+ e = parseFloat(r2) * (l2 ? 1 : 1e3);
776
+ }
777
+ i2.classList.remove(s.finish), i2.classList.add(t.start), setTimeout(() => {
778
+ i2.classList.add(t.finish), i2.classList.remove(t.start), n(i2);
779
+ }, e);
736
780
  });
737
781
  }
738
- function z(e, t) {
739
- t && document.querySelectorAll(t).forEach((s2) => {
740
- e ? (s2.inert = true, s2.setAttribute("aria-hidden", true)) : (s2.inert = null, s2.removeAttribute("aria-hidden"));
782
+ function z(i2, s) {
783
+ s && document.querySelectorAll(s).forEach((t) => {
784
+ i2 ? t.style.overflow = "hidden" : t.style.removeProperty("overflow");
741
785
  });
742
786
  }
743
- function W(e, t) {
744
- z(!!e, t.selectorInert), q(!!e, t.selectorOverflow);
787
+ function j$1(i2, s) {
788
+ s && document.querySelectorAll(s).forEach((t) => {
789
+ i2 ? (t.inert = true, t.setAttribute("aria-hidden", true)) : (t.inert = null, t.removeAttribute("aria-hidden"));
790
+ });
791
+ }
792
+ function W(i2, s) {
793
+ j$1(!!i2, s.selectorInert), z(!!i2, s.selectorOverflow);
745
794
  }
746
795
  const _$1 = {
747
796
  autoInit: false,
@@ -753,6 +802,7 @@
753
802
  // Selectors
754
803
  selectorModal: ".modal",
755
804
  selectorDialog: ".modal__dialog",
805
+ selectorScreen: ".modal",
756
806
  selectorRequired: '[role="alertdialog"]',
757
807
  selectorFocus: "[data-focus]",
758
808
  selectorInert: null,
@@ -768,175 +818,182 @@
768
818
  teleport: null,
769
819
  teleportMethod: "append",
770
820
  setTabindex: true,
771
- transition: true
821
+ transition: true,
822
+ transitionDuration: "--vb-modal-transition-duration"
772
823
  };
773
- function L(e) {
774
- const t = typeof e == "string" ? this.get(e) : this.get(e.id);
775
- if (t)
776
- return t;
777
- throw new Error(`Modal not found in collection with id of "${e.id || e}".`);
778
- }
779
- function p(e) {
780
- 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}`) || false : 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 || false) : false : e.id ? e.id : false;
781
- }
782
- function G(e) {
783
- const t = p.call(this, e);
784
- if (t) {
785
- const s2 = document.querySelector(`#${t}`), i = s2 ? s2.querySelector(this.settings.selectorDialog) : null;
786
- return !s2 && !i ? { error: new Error(`No modal elements found using the ID: "${t}".`) } : i ? { modal: s2, dialog: i } : { error: new Error("Modal is missing dialog element.") };
787
- } else
788
- return { error: new Error("Could not resolve the modal ID.") };
789
- }
790
- function m() {
791
- this.active ? this.focusTrap.mount(this.active.dialog, this.settings.selectorFocus) : (this.trigger && (this.trigger.focus(), this.trigger = null), this.focusTrap.unmount());
792
- }
793
- async function K$1(e) {
794
- let t = e.target.closest(
795
- `[data-${this.settings.dataOpen}], [data-${this.settings.dataReplace}]`
796
- );
797
- if (t) {
798
- e.preventDefault(), e.target.closest(this.settings.selectorModal) || (this.trigger = t);
799
- const i = this.get(p.call(this, t));
800
- return t.matches(`[data-${this.settings.dataOpen}]`) ? i.open() : i.replace();
801
- }
802
- if (t = e.target.closest(`[data-${this.settings.dataClose}]`), t) {
803
- e.preventDefault();
804
- const s2 = t.getAttribute(`data-${this.settings.dataClose}`);
805
- return s2 === "*" ? this.closeAll() : this.close(s2);
824
+ async function G(i2) {
825
+ const s = i2.target.closest(`
826
+ [data-${this.settings.dataOpen}],
827
+ [data-${this.settings.dataReplace}],
828
+ [data-${this.settings.dataClose}]
829
+ `);
830
+ if (s) {
831
+ if (i2.preventDefault(), s.matches(`[data-${this.settings.dataOpen}]`)) {
832
+ const t = s.getAttribute(`data-${this.settings.dataOpen}`).trim(), e = this.get(t);
833
+ return i2.target.closest(this.settings.selectorModal) || (this.trigger = s), e.open();
834
+ }
835
+ if (s.matches(`[data-${this.settings.dataReplace}]`)) {
836
+ const t = s.getAttribute(`data-${this.settings.dataReplace}`).trim(), e = this.get(t);
837
+ return i2.target.closest(this.settings.selectorModal) || (this.trigger = s), e.replace();
838
+ }
839
+ if (s.matches(`[data-${this.settings.dataClose}]`)) {
840
+ const t = s.getAttribute(`data-${this.settings.dataClose}`).trim();
841
+ return t === "*" ? this.closeAll() : this.close(t);
842
+ }
806
843
  }
807
- if (e.target.matches(this.settings.selectorModal) && !e.target.querySelector(this.settings.selectorRequired))
808
- return this.close(p.call(this, e.target));
844
+ if (this.active && i2.target.matches(this.settings.selectorScreen) && !this.active.required)
845
+ return this.close(this.active.id);
809
846
  }
810
- function J$1(e) {
811
- if (e.key === "Escape" && this.active && !this.active.dialog.matches(this.settings.selectorRequired))
847
+ function K$1(i2) {
848
+ if (i2.key === "Escape" && this.active && !this.active.dialog.matches(this.settings.selectorRequired))
812
849
  return this.close();
813
850
  }
814
- async function w(e, t = true) {
815
- if (!e)
816
- return this.collection;
817
- const s2 = this.collection.findIndex((i) => i.id === e.id);
818
- if (s2 >= 0) {
819
- const i = this.collection[s2];
820
- t && i.state === "opened" ? await i.close(false) : this.stack.remove(i), i.getSetting("teleport") && i.teleportReturn(), Object.getOwnPropertyNames(i).forEach((n) => {
821
- delete i[n];
822
- }), this.collection.splice(s2, 1);
851
+ async function w(i2, s = true) {
852
+ const t = this.collection.findIndex((e) => e.id === i2.id);
853
+ if (t >= 0) {
854
+ const e = this.collection[t];
855
+ s && e.state === "opened" ? await e.close(false) : this.stack.remove(e), e.getSetting("teleport") && e.teleportReturn(), Object.getOwnPropertyNames(e).forEach((n) => {
856
+ delete e[n];
857
+ }), this.collection.splice(t, 1);
823
858
  }
824
859
  return this.collection;
825
860
  }
826
- async function x(e, t, s2 = true) {
827
- const i = L.call(this, e), n = { ...this.settings, ...i.settings };
828
- return t !== void 0 && (n.transition = t), this.stack.moveToTop(i), i.state === "closed" && (i.state = "opening", this.stack.add(i), await D$1(i.el, n), i.state = "opened"), s2 && m.call(this), i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "opened", {
861
+ function $(i2) {
862
+ const s = typeof i2 == "string" ? this.get(i2) : this.get(i2.id);
863
+ if (s)
864
+ return s;
865
+ throw new Error(`Modal not found in collection with id of "${i2.id || i2}".`);
866
+ }
867
+ function p() {
868
+ this.active ? this.focusTrap.mount(this.active.dialog, this.settings.selectorFocus) : (this.trigger && (this.trigger.focus(), this.trigger = null), this.focusTrap.unmount());
869
+ }
870
+ async function x(i2, s, t = true) {
871
+ const e = $.call(this, i2), n = { ...this.settings, ...e.settings };
872
+ return s !== void 0 && (n.transition = s), this.stack.moveToTop(e), e.state === "closed" && (e.state = "opening", this.stack.add(e), n.transition ? await S$1(e.el, {
873
+ start: n.stateClosing,
874
+ finish: n.stateClosed
875
+ }, {
876
+ start: n.stateOpening,
877
+ finish: n.stateOpened
878
+ }, n.transitionDuration) : (e.el.classList.add(n.stateOpened), e.el.classList.remove(n.stateClosed)), e.state = "opened"), t && p.call(this), e.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "opened", {
829
879
  detail: this,
830
880
  bubbles: true
831
- })), i;
832
- }
833
- async function C(e, t, s2 = true) {
834
- const i = e ? L.call(this, e) : this.active;
835
- if (i && i.state === "opened") {
836
- i.state = "closing";
837
- const n = { ...this.settings, ...i.settings };
838
- t !== void 0 && (n.transition = t), document.activeElement.blur(), await F$1(i.el, n), this.stack.remove(i), s2 && m.call(this), i.state = "closed", i.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "closed", {
881
+ })), e;
882
+ }
883
+ async function C(i2, s, t = true) {
884
+ const e = i2 ? $.call(this, i2) : this.active;
885
+ if (e && e.state === "opened") {
886
+ e.state = "closing";
887
+ const n = { ...this.settings, ...e.settings };
888
+ s !== void 0 && (n.transition = s), document.activeElement.blur(), n.transition ? await S$1(e.el, {
889
+ start: n.stateOpening,
890
+ finish: n.stateOpened
891
+ }, {
892
+ start: n.stateClosing,
893
+ finish: n.stateClosed
894
+ }, n.transitionDuration) : (e.el.classList.add(n.stateClosed), e.el.classList.remove(n.stateOpened)), this.stack.remove(e), e.state = "closed", t && p.call(this), e.el.dispatchEvent(new CustomEvent(n.customEventPrefix + "closed", {
839
895
  detail: this,
840
896
  bubbles: true
841
897
  }));
842
898
  }
843
- return i;
899
+ return e;
844
900
  }
845
- async function $(e, t) {
846
- const s2 = [];
847
- return await Promise.all(this.stack.value.map(async (i) => {
848
- e && e === i.id ? Promise.resolve() : s2.push(await C.call(this, i, t, false)), i.trigger = null;
849
- })), s2;
901
+ async function E(i2, s) {
902
+ const t = [];
903
+ return await Promise.all(this.stack.value.map(async (e) => {
904
+ i2 && i2 === e.id ? Promise.resolve() : t.push(await C.call(this, e, s, false)), e.trigger = null;
905
+ })), t;
850
906
  }
851
- async function O(e, t, s2 = true) {
852
- const i = L.call(this, e);
853
- let n, l2;
854
- return i.state === "opened" ? (n = i, l2 = await $.call(this, i.id, t)) : (n = x.call(this, i, t, false), l2 = $.call(this, false, t), await Promise.all([n, l2])), s2 && m.call(this), { opened: n, closed: l2 };
907
+ async function k$1(i2, s, t = true) {
908
+ const e = $.call(this, i2);
909
+ let n, r2;
910
+ return e.state === "opened" ? (n = e, r2 = await E.call(this, e.id, s)) : (r2 = E.call(this, false, s), n = x.call(this, e, s, false), await Promise.all([n, r2])), t && p.call(this), { opened: n, closed: r2 };
855
911
  }
856
- async function B$1(e, t) {
857
- await w.call(this, e, false);
858
- const s2 = this, i = {
859
- open(l2, a2) {
860
- return x.call(s2, this, l2, a2);
912
+ async function V(i2, s = {}) {
913
+ await w.call(this, i2, false);
914
+ const t = this, e = {
915
+ id: i2.id,
916
+ state: "closed",
917
+ el: i2,
918
+ dialog: null,
919
+ get required() {
920
+ return this.dialog.matches(this.getSetting("selectorRequired"));
921
+ },
922
+ returnRef: null,
923
+ settings: { ...N$1(i2, this.settings.dataConfig), ...s },
924
+ open(r2, l2) {
925
+ return x.call(t, this, r2, l2);
861
926
  },
862
- close(l2, a2) {
863
- return C.call(s2, this, l2, a2);
927
+ close(r2, l2) {
928
+ return C.call(t, this, r2, l2);
864
929
  },
865
- replace(l2, a2) {
866
- return O.call(s2, this, l2, a2);
930
+ replace(r2, l2) {
931
+ return k$1.call(t, this, r2, l2);
867
932
  },
868
933
  deregister() {
869
- return w.call(s2, this);
934
+ return w.call(t, this);
870
935
  },
871
- teleport(l2 = this.getSetting("teleport"), a2 = this.getSetting("teleportMethod")) {
872
- return this.returnRef ? (console.error("Element has already been teleported:", this.el), false) : (this.returnRef = T$1(this.el, l2, a2), this.el);
936
+ teleport(r2 = this.getSetting("teleport"), l2 = this.getSetting("teleportMethod")) {
937
+ return this.returnRef ? (console.error("Element has already been teleported:", this.el), false) : (this.returnRef = L(this.el, r2, l2), this.el);
873
938
  },
874
939
  teleportReturn() {
875
- return this.returnRef ? (this.returnRef = T$1(this.el, this.returnRef), this.el) : (console.error("No return reference found:", this.el), false);
940
+ return this.returnRef ? (this.returnRef = L(this.el, this.returnRef), this.el) : (console.error("No return reference found:", this.el), false);
876
941
  },
877
- getSetting(l2) {
878
- return l2 in this.settings ? this.settings[l2] : s2.settings[l2];
942
+ getSetting(r2) {
943
+ return r2 in this.settings ? this.settings[r2] : t.settings[r2];
879
944
  }
880
- }, n = {
881
- id: e.id,
882
- state: "closed",
883
- el: e,
884
- dialog: t,
885
- returnRef: null,
886
- settings: P(e, this.settings.dataConfig),
887
- ...i
888
- };
889
- 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(false) : (n.el.classList.remove(this.settings.stateOpening), n.el.classList.remove(this.settings.stateClosing), n.el.classList.add(this.settings.stateClosed)), n;
945
+ }, n = i2.querySelector(e.getSetting("selectorDialog"));
946
+ return e.dialog = n || i2, e.dialog.setAttribute("aria-modal", "true"), e.dialog.hasAttribute("role") || e.dialog.setAttribute("role", "dialog"), e.getSetting("setTabindex") && e.dialog.setAttribute("tabindex", "-1"), e.getSetting("teleport") && e.teleport(), this.collection.push(e), e.el.classList.contains(this.settings.stateOpened) ? await e.open(false) : (e.el.classList.remove(this.settings.stateOpening), e.el.classList.remove(this.settings.stateClosing), e.el.classList.add(this.settings.stateClosed)), e;
890
947
  }
891
- function H$1(e) {
892
- const t = [];
948
+ function q(i2) {
949
+ const s = [];
893
950
  return {
894
951
  get value() {
895
- return [...t];
952
+ return [...s];
896
953
  },
897
954
  get top() {
898
- return t[t.length - 1];
955
+ return s[s.length - 1];
899
956
  },
900
957
  updateIndex() {
901
- t.forEach((s2, i) => {
902
- s2.el.style.zIndex = null;
903
- const n = getComputedStyle(s2.el)["z-index"];
904
- s2.el.style.zIndex = parseInt(n) + i + 1;
958
+ s.forEach((t, e) => {
959
+ t.el.style.zIndex = null;
960
+ const n = getComputedStyle(t.el)["z-index"];
961
+ t.el.style.zIndex = parseInt(n) + e + 1;
905
962
  });
906
963
  },
907
964
  updateGlobalState() {
908
- W(this.top, e), this.updateIndex();
965
+ W(this.top, i2), this.updateIndex();
909
966
  },
910
- add(s2) {
911
- s2.el.style.zIndex = null;
912
- const i = getComputedStyle(s2.el)["z-index"];
913
- s2.el.style.zIndex = parseInt(i) + t.length + 1, t.push(s2), this.updateGlobalState();
967
+ add(t) {
968
+ t.el.style.zIndex = null;
969
+ const e = getComputedStyle(t.el)["z-index"];
970
+ t.el.style.zIndex = parseInt(e) + s.length + 1, s.push(t), this.updateGlobalState();
914
971
  },
915
- remove(s2) {
916
- const i = t.findIndex((n) => n.id === s2.id);
917
- i >= 0 && (s2.el.style.zIndex = null, t.splice(i, 1), this.updateGlobalState());
972
+ remove(t) {
973
+ const e = s.findIndex((n) => n.id === t.id);
974
+ e >= 0 && (t.el.style.zIndex = null, s.splice(e, 1), this.updateGlobalState());
918
975
  },
919
- moveToTop(s2) {
920
- const i = t.findIndex((n) => n.id === s2.id);
921
- i >= 0 && (t.splice(i, 1), this.add(s2));
976
+ moveToTop(t) {
977
+ const e = s.findIndex((n) => n.id === t.id);
978
+ e >= 0 && (s.splice(e, 1), this.add(t));
922
979
  }
923
980
  };
924
981
  }
925
982
  var u, h;
926
- class U extends A {
927
- constructor(s2) {
983
+ let J$1 = class J extends O {
984
+ constructor(t) {
928
985
  super();
929
- v(this, u, void 0);
930
- v(this, h, void 0);
931
- this.defaults = _$1, this.settings = { ...this.defaults, ...s2 }, this.trigger = null, this.focusTrap = new M$1(), this.stack = H$1(this.settings), b(this, u, K$1.bind(this)), b(this, h, J$1.bind(this)), this.settings.autoInit && this.init();
986
+ m(this, u, void 0);
987
+ m(this, h, void 0);
988
+ this.defaults = _$1, this.settings = { ...this.defaults, ...t }, this.trigger = null, this.focusTrap = new M(), this.stack = q(this.settings), v(this, u, G.bind(this)), v(this, h, K$1.bind(this)), this.settings.autoInit && this.init();
932
989
  }
933
990
  get active() {
934
991
  return this.stack.top;
935
992
  }
936
- async init(s2) {
937
- s2 && (this.settings = { ...this.settings, ...s2 });
938
- const i = document.querySelectorAll(this.settings.selectorModal);
939
- return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(), this;
993
+ async init(t) {
994
+ t && (this.settings = { ...this.settings, ...t });
995
+ const e = document.querySelectorAll(this.settings.selectorModal);
996
+ return await this.registerCollection(e), this.settings.eventListeners && this.initEventListeners(), this;
940
997
  }
941
998
  async destroy() {
942
999
  return this.trigger = null, await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(), this;
@@ -947,28 +1004,28 @@
947
1004
  destroyEventListeners() {
948
1005
  document.removeEventListener("click", f(this, u), false), document.removeEventListener("keydown", f(this, h), false);
949
1006
  }
950
- register(s2) {
951
- const i = G.call(this, s2);
952
- return i.error ? Promise.reject(i.error) : B$1.call(this, i.modal, i.dialog);
1007
+ register(t, e = {}) {
1008
+ let n = typeof t == "string" ? document.getElementById(t) : t;
1009
+ return n ? V.call(this, n, e) : Promise.reject(new Error(`Failed to register; modal not found with ID of: "${t.id || t}".`));
953
1010
  }
954
- deregister(s2) {
955
- const i = this.get(p.call(this, s2));
956
- return w.call(this, i);
1011
+ deregister(t) {
1012
+ let e = this.get(t.id || t);
1013
+ return e ? w.call(this, e) : Promise.reject(new Error(`Failed to deregister; modal does not exist in collection with ID of: "${t.id || t}".`));
957
1014
  }
958
- open(s2, i, n) {
959
- return x.call(this, s2, i, n);
1015
+ open(t, e, n) {
1016
+ return x.call(this, t, e, n);
960
1017
  }
961
- close(s2, i, n) {
962
- return C.call(this, s2, i, n);
1018
+ close(t, e, n) {
1019
+ return C.call(this, t, e, n);
963
1020
  }
964
- replace(s2, i, n) {
965
- return O.call(this, s2, i, n);
1021
+ replace(t, e, n) {
1022
+ return k$1.call(this, t, e, n);
966
1023
  }
967
- async closeAll(s2 = false, i, n = true) {
968
- const l2 = await $.call(this, s2, i);
969
- return n && m.call(this), l2;
1024
+ async closeAll(t = false, e, n = true) {
1025
+ const r2 = await E.call(this, t, e);
1026
+ return n && p.call(this), r2;
970
1027
  }
971
- }
1028
+ };
972
1029
  u = /* @__PURE__ */ new WeakMap(), h = /* @__PURE__ */ new WeakMap();
973
1030
  var Ue = (e, t, r2) => {
974
1031
  if (!t.has(e))
@@ -978,8 +1035,8 @@
978
1035
  if (t.has(e))
979
1036
  throw TypeError("Cannot add the same private member more than once");
980
1037
  t instanceof WeakSet ? t.add(e) : t.set(e, r2);
981
- }, Ke = (e, t, r2, i) => (Ue(e, t, "write to private field"), i ? i.call(e, r2) : t.set(e, r2), r2);
982
- class Ct {
1038
+ }, Ke = (e, t, r2, i2) => (Ue(e, t, "write to private field"), i2 ? i2.call(e, r2) : t.set(e, r2), r2);
1039
+ class $t {
983
1040
  constructor() {
984
1041
  this.collection = [];
985
1042
  }
@@ -987,11 +1044,11 @@
987
1044
  return await this.deregister(t), this.collection.push(t), this.collection;
988
1045
  }
989
1046
  async deregister(t) {
990
- const r2 = this.collection.findIndex((i) => i === t);
1047
+ const r2 = this.collection.findIndex((i2) => i2 === t);
991
1048
  if (r2 >= 0) {
992
- const i = this.collection[r2];
993
- Object.getOwnPropertyNames(i).forEach((n) => {
994
- delete i[n];
1049
+ const i2 = this.collection[r2];
1050
+ Object.getOwnPropertyNames(i2).forEach((n) => {
1051
+ delete i2[n];
995
1052
  }), this.collection.splice(r2, 1);
996
1053
  }
997
1054
  return this.collection;
@@ -1007,13 +1064,13 @@
1007
1064
  return this.collection;
1008
1065
  }
1009
1066
  get(t, r2 = "id") {
1010
- return this.collection.find((i) => i[r2] === t);
1067
+ return this.collection.find((i2) => i2[r2] === t);
1011
1068
  }
1012
1069
  }
1013
- function kt() {
1014
- return getComputedStyle(document.body).getPropertyValue("--vrembem-variable-prefix").trim();
1070
+ function Ct() {
1071
+ return getComputedStyle(document.body).getPropertyValue("--vrembem-prefix").trim();
1015
1072
  }
1016
- const Dt = {
1073
+ const kt = {
1017
1074
  autoInit: false,
1018
1075
  // Selectors
1019
1076
  selectorPopover: ".popover",
@@ -1026,7 +1083,7 @@
1026
1083
  placement: "bottom"
1027
1084
  };
1028
1085
  function ot(e, t) {
1029
- const r2 = getComputedStyle(e), i = {
1086
+ const r2 = getComputedStyle(e), i2 = {
1030
1087
  placement: t.placement,
1031
1088
  event: t.eventType,
1032
1089
  offset: 0,
@@ -1035,17 +1092,17 @@
1035
1092
  "arrow-element": t.selectorArrow,
1036
1093
  "arrow-padding": 0
1037
1094
  };
1038
- for (const n in i) {
1039
- const o2 = kt(), l2 = r2.getPropertyValue(`--${o2}popover-${n}`).trim();
1040
- l2 && (i[n] = l2);
1095
+ for (const n in i2) {
1096
+ const o2 = Ct(), l2 = r2.getPropertyValue(`--${o2}popover-${n}`).trim();
1097
+ l2 && (i2[n] = l2);
1041
1098
  }
1042
- return i;
1099
+ return i2;
1043
1100
  }
1044
1101
  function Pe(e) {
1045
1102
  let t;
1046
1103
  const r2 = typeof e == "string" ? e.trim().split(" ") : [e];
1047
- switch (r2.forEach(function(i, n) {
1048
- r2[n] = parseInt(i, 10);
1104
+ switch (r2.forEach(function(i2, n) {
1105
+ r2[n] = parseInt(i2, 10);
1049
1106
  }), r2.length) {
1050
1107
  case 1:
1051
1108
  t = r2[0];
@@ -1080,7 +1137,7 @@
1080
1137
  }
1081
1138
  return t;
1082
1139
  }
1083
- function Rt(e) {
1140
+ function Dt(e) {
1084
1141
  return [{
1085
1142
  name: "offset",
1086
1143
  options: {
@@ -1110,30 +1167,30 @@
1110
1167
  return t;
1111
1168
  throw new Error(`Popover not found in collection with id of "${e}".`);
1112
1169
  }
1113
- function st(e) {
1114
- 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") : false : e.id ? e.id : false;
1170
+ function Rt(e) {
1171
+ 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") : false : false;
1115
1172
  }
1116
1173
  function Bt(e) {
1117
- const t = st.call(this, e);
1174
+ const t = Rt.call(this, e);
1118
1175
  if (t) {
1119
- const r2 = document.querySelector(`#${t}`), i = document.querySelector(`[aria-controls="${t}"]`) || document.querySelector(`[aria-describedby="${t}"]`);
1120
- return !i && !r2 ? { error: new Error(`No popover elements found using the ID: "${t}".`) } : i ? r2 ? { popover: r2, trigger: i } : { error: new Error("No popover associated with the provided popover trigger.") } : { error: new Error("No popover trigger associated with the provided popover.") };
1176
+ const r2 = document.querySelector(`#${t}`), i2 = document.querySelector(`[aria-controls="${t}"]`) || document.querySelector(`[aria-describedby="${t}"]`);
1177
+ return !i2 && !r2 ? { error: new Error(`No popover elements found using the ID: "${t}".`) } : i2 ? r2 ? { popover: r2, trigger: i2 } : { error: new Error("No popover associated with the provided popover trigger.") } : { error: new Error("No popover trigger associated with the provided popover.") };
1121
1178
  } else
1122
1179
  return { error: new Error("Could not resolve the popover ID.") };
1123
1180
  }
1124
1181
  async function ke(e) {
1125
- const t = e ? at.call(this, e) : await ct.call(this);
1182
+ const t = e ? at.call(this, e) : await st.call(this);
1126
1183
  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({
1127
1184
  modifiers: [{ name: "eventListeners", enabled: false }]
1128
1185
  }), t.state = "closed", t.trigger === this.trigger && (this.trigger = null)), t;
1129
1186
  }
1130
- async function ct() {
1187
+ async function st() {
1131
1188
  const e = [];
1132
1189
  return await Promise.all(this.collection.map(async (t) => {
1133
1190
  t.state === "opened" && e.push(await ke.call(this, t));
1134
1191
  })), e;
1135
1192
  }
1136
- function lt(e) {
1193
+ function ct(e) {
1137
1194
  e.state == "opened" && setTimeout(() => {
1138
1195
  const t = e.el.closest(":hover") === e.el || e.trigger.closest(":hover") === e.trigger, r2 = document.activeElement.closest(
1139
1196
  `#${e.id}, [aria-controls="${e.id}"], [aria-describedby="${e.id}"]`
@@ -1142,35 +1199,35 @@
1142
1199
  }, 1);
1143
1200
  }
1144
1201
  function Tt(e) {
1145
- e.state === "opened" ? e.close() : (this.trigger = e.trigger, e.open(), ft.call(this, e));
1202
+ e.state === "opened" ? e.close() : (this.trigger = e.trigger, e.open(), lt.call(this, e));
1146
1203
  }
1147
1204
  function St(e) {
1148
1205
  switch (e.key) {
1149
1206
  case "Escape":
1150
- this.trigger && this.trigger.focus(), ct.call(this);
1207
+ this.trigger && this.trigger.focus(), st.call(this);
1151
1208
  return;
1152
1209
  case "Tab":
1153
1210
  this.collection.forEach((t) => {
1154
- lt.call(this, t);
1211
+ ct.call(this, t);
1155
1212
  });
1156
1213
  return;
1157
1214
  default:
1158
1215
  return;
1159
1216
  }
1160
1217
  }
1161
- function ft(e) {
1218
+ function lt(e) {
1162
1219
  const t = this;
1163
- document.addEventListener("click", function r2(i) {
1164
- i.target.closest(
1220
+ document.addEventListener("click", function r2(i2) {
1221
+ i2.target.closest(
1165
1222
  `#${e.id}, [aria-controls="${e.id}"], [aria-describedby="${e.id}"]`
1166
1223
  ) ? e.el && !e.el.classList.contains(t.settings.stateActive) && this.removeEventListener("click", r2) : (e.el && e.el.classList.contains(t.settings.stateActive) && e.close(), this.removeEventListener("click", r2));
1167
1224
  });
1168
1225
  }
1169
- var 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) {
1226
+ var k = "top", S = "bottom", j = "right", D = "left", De = "auto", le = [k, S, j, D], Q = "start", se = "end", jt = "clippingParents", ft = "viewport", ne = "popper", Mt = "reference", Ge = /* @__PURE__ */ le.reduce(function(e, t) {
1170
1227
  return e.concat([t + "-" + Q, t + "-" + se]);
1171
- }, []), pt = /* @__PURE__ */ [].concat(le, [De]).reduce(function(e, t) {
1228
+ }, []), ut = /* @__PURE__ */ [].concat(le, [De]).reduce(function(e, t) {
1172
1229
  return e.concat([t, t + "-" + Q, t + "-" + se]);
1173
- }, []), 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];
1230
+ }, []), Wt = "beforeRead", Ht = "read", Nt = "afterRead", It = "beforeMain", Vt = "main", Ft = "afterMain", Xt = "beforeWrite", Yt = "write", qt = "afterWrite", zt = [Wt, Ht, Nt, It, Vt, Ft, Xt, Yt, qt];
1174
1231
  function N(e) {
1175
1232
  return e ? (e.nodeName || "").toLowerCase() : null;
1176
1233
  }
@@ -1200,10 +1257,10 @@
1200
1257
  function Ut(e) {
1201
1258
  var t = e.state;
1202
1259
  Object.keys(t.elements).forEach(function(r2) {
1203
- var i = t.styles[r2] || {}, n = t.attributes[r2] || {}, o2 = t.elements[r2];
1204
- !T(o2) || !N(o2) || (Object.assign(o2.style, i), Object.keys(n).forEach(function(l2) {
1205
- var s2 = n[l2];
1206
- s2 === false ? o2.removeAttribute(l2) : o2.setAttribute(l2, s2 === true ? "" : s2);
1260
+ var i2 = t.styles[r2] || {}, n = t.attributes[r2] || {}, o2 = t.elements[r2];
1261
+ !T(o2) || !N(o2) || (Object.assign(o2.style, i2), Object.keys(n).forEach(function(l2) {
1262
+ var s = n[l2];
1263
+ s === false ? o2.removeAttribute(l2) : o2.setAttribute(l2, s === true ? "" : s);
1207
1264
  }));
1208
1265
  });
1209
1266
  }
@@ -1221,11 +1278,11 @@
1221
1278
  reference: {}
1222
1279
  };
1223
1280
  return Object.assign(t.elements.popper.style, r2.popper), t.styles = r2, t.elements.arrow && Object.assign(t.elements.arrow.style, r2.arrow), function() {
1224
- Object.keys(t.elements).forEach(function(i) {
1225
- var n = t.elements[i], o2 = t.attributes[i] || {}, l2 = Object.keys(t.styles.hasOwnProperty(i) ? t.styles[i] : r2[i]), s2 = l2.reduce(function(a2, f2) {
1281
+ Object.keys(t.elements).forEach(function(i2) {
1282
+ var n = t.elements[i2], o2 = t.attributes[i2] || {}, l2 = Object.keys(t.styles.hasOwnProperty(i2) ? t.styles[i2] : r2[i2]), s = l2.reduce(function(a2, f2) {
1226
1283
  return a2[f2] = "", a2;
1227
1284
  }, {});
1228
- !T(n) || !N(n) || (Object.assign(n.style, s2), Object.keys(o2).forEach(function(a2) {
1285
+ !T(n) || !N(n) || (Object.assign(n.style, s), Object.keys(o2).forEach(function(a2) {
1229
1286
  n.removeAttribute(a2);
1230
1287
  }));
1231
1288
  });
@@ -1249,14 +1306,14 @@
1249
1306
  return t.brand + "/" + t.version;
1250
1307
  }).join(" ") : navigator.userAgent;
1251
1308
  }
1252
- function dt() {
1309
+ function pt() {
1253
1310
  return !/^((?!chrome|android).)*safari/i.test(Le());
1254
1311
  }
1255
1312
  function ee(e, t, r2) {
1256
1313
  t === void 0 && (t = false), r2 === void 0 && (r2 = false);
1257
- var i = e.getBoundingClientRect(), n = 1, o2 = 1;
1258
- t && T(e) && (n = e.offsetWidth > 0 && Z(i.width) / e.offsetWidth || 1, o2 = e.offsetHeight > 0 && Z(i.height) / e.offsetHeight || 1);
1259
- var l2 = K(e) ? B(e) : window, s2 = l2.visualViewport, a2 = !dt() && r2, f2 = (i.left + (a2 && s2 ? s2.offsetLeft : 0)) / n, c2 = (i.top + (a2 && s2 ? s2.offsetTop : 0)) / o2, h2 = i.width / n, y2 = i.height / o2;
1314
+ var i2 = e.getBoundingClientRect(), n = 1, o2 = 1;
1315
+ t && T(e) && (n = e.offsetWidth > 0 && Z(i2.width) / e.offsetWidth || 1, o2 = e.offsetHeight > 0 && Z(i2.height) / e.offsetHeight || 1);
1316
+ var l2 = K(e) ? B(e) : window, s = l2.visualViewport, a2 = !pt() && r2, f2 = (i2.left + (a2 && s ? s.offsetLeft : 0)) / n, c2 = (i2.top + (a2 && s ? s.offsetTop : 0)) / o2, h2 = i2.width / n, y2 = i2.height / o2;
1260
1317
  return {
1261
1318
  width: h2,
1262
1319
  height: y2,
@@ -1269,25 +1326,25 @@
1269
1326
  };
1270
1327
  }
1271
1328
  function Be(e) {
1272
- var t = ee(e), r2 = e.offsetWidth, i = e.offsetHeight;
1273
- return Math.abs(t.width - r2) <= 1 && (r2 = t.width), Math.abs(t.height - i) <= 1 && (i = t.height), {
1329
+ var t = ee(e), r2 = e.offsetWidth, i2 = e.offsetHeight;
1330
+ return Math.abs(t.width - r2) <= 1 && (r2 = t.width), Math.abs(t.height - i2) <= 1 && (i2 = t.height), {
1274
1331
  x: e.offsetLeft,
1275
1332
  y: e.offsetTop,
1276
1333
  width: r2,
1277
- height: i
1334
+ height: i2
1278
1335
  };
1279
1336
  }
1280
- function vt(e, t) {
1337
+ function dt(e, t) {
1281
1338
  var r2 = t.getRootNode && t.getRootNode();
1282
1339
  if (e.contains(t))
1283
1340
  return true;
1284
1341
  if (r2 && Re(r2)) {
1285
- var i = t;
1342
+ var i2 = t;
1286
1343
  do {
1287
- if (i && e.isSameNode(i))
1344
+ if (i2 && e.isSameNode(i2))
1288
1345
  return true;
1289
- i = i.parentNode || i.host;
1290
- } while (i);
1346
+ i2 = i2.parentNode || i2.host;
1347
+ } while (i2);
1291
1348
  }
1292
1349
  return false;
1293
1350
  }
@@ -1322,8 +1379,8 @@
1322
1379
  function Jt(e) {
1323
1380
  var t = /firefox/i.test(Le()), r2 = /Trident/i.test(Le());
1324
1381
  if (r2 && T(e)) {
1325
- var i = I(e);
1326
- if (i.position === "fixed")
1382
+ var i2 = I(e);
1383
+ if (i2.position === "fixed")
1327
1384
  return null;
1328
1385
  }
1329
1386
  var n = we(e);
@@ -1347,10 +1404,10 @@
1347
1404
  return _(e, ye(t, r2));
1348
1405
  }
1349
1406
  function Qt(e, t, r2) {
1350
- var i = oe(e, t, r2);
1351
- return i > r2 ? r2 : i;
1407
+ var i2 = oe(e, t, r2);
1408
+ return i2 > r2 ? r2 : i2;
1352
1409
  }
1353
- function ht() {
1410
+ function vt() {
1354
1411
  return {
1355
1412
  top: 0,
1356
1413
  right: 0,
@@ -1358,29 +1415,29 @@
1358
1415
  left: 0
1359
1416
  };
1360
1417
  }
1361
- function gt(e) {
1362
- return Object.assign({}, ht(), e);
1418
+ function ht(e) {
1419
+ return Object.assign({}, vt(), e);
1363
1420
  }
1364
- function mt(e, t) {
1365
- return t.reduce(function(r2, i) {
1366
- return r2[i] = e, r2;
1421
+ function gt(e, t) {
1422
+ return t.reduce(function(r2, i2) {
1423
+ return r2[i2] = e, r2;
1367
1424
  }, {});
1368
1425
  }
1369
1426
  var Zt = function(t, r2) {
1370
1427
  return t = typeof t == "function" ? t(Object.assign({}, r2.rects, {
1371
1428
  placement: r2.placement
1372
- })) : t, gt(typeof t != "number" ? t : mt(t, le));
1429
+ })) : t, ht(typeof t != "number" ? t : gt(t, le));
1373
1430
  };
1374
1431
  function er(e) {
1375
- var t, r2 = e.state, i = e.name, n = e.options, o2 = r2.elements.arrow, l2 = r2.modifiersData.popperOffsets, s2 = H(r2.placement), a2 = Te(s2), f2 = [D, M].indexOf(s2) >= 0, c2 = f2 ? "height" : "width";
1432
+ var t, r2 = e.state, i2 = e.name, n = e.options, o2 = r2.elements.arrow, l2 = r2.modifiersData.popperOffsets, s = H(r2.placement), a2 = Te(s), f2 = [D, j].indexOf(s) >= 0, c2 = f2 ? "height" : "width";
1376
1433
  if (!(!o2 || !l2)) {
1377
- var h2 = Zt(n.padding, r2), y2 = Be(o2), u2 = a2 === "y" ? k : D, b2 = a2 === "y" ? S : M, v2 = r2.rects.reference[c2] + r2.rects.reference[a2] - l2[a2] - r2.rects.popper[c2], d2 = l2[a2] - r2.rects.reference[a2], w2 = fe(o2), O2 = w2 ? a2 === "y" ? w2.clientHeight || 0 : w2.clientWidth || 0 : 0, E2 = v2 / 2 - d2 / 2, p2 = h2[u2], g2 = O2 - y2[c2] - h2[b2], m2 = O2 / 2 - y2[c2] / 2 + E2, x2 = oe(p2, m2, g2), L2 = a2;
1378
- r2.modifiersData[i] = (t = {}, t[L2] = x2, t.centerOffset = x2 - m2, t);
1434
+ var h2 = Zt(n.padding, r2), y2 = Be(o2), u2 = a2 === "y" ? k : D, b2 = a2 === "y" ? S : j, v2 = r2.rects.reference[c2] + r2.rects.reference[a2] - l2[a2] - r2.rects.popper[c2], d2 = l2[a2] - r2.rects.reference[a2], w2 = fe(o2), O2 = w2 ? a2 === "y" ? w2.clientHeight || 0 : w2.clientWidth || 0 : 0, E2 = v2 / 2 - d2 / 2, p2 = h2[u2], g2 = O2 - y2[c2] - h2[b2], m2 = O2 / 2 - y2[c2] / 2 + E2, x2 = oe(p2, m2, g2), L2 = a2;
1435
+ r2.modifiersData[i2] = (t = {}, t[L2] = x2, t.centerOffset = x2 - m2, t);
1379
1436
  }
1380
1437
  }
1381
1438
  function tr(e) {
1382
- var t = e.state, r2 = e.options, i = r2.element, n = i === void 0 ? "[data-popper-arrow]" : i;
1383
- n != null && (typeof n == "string" && (n = t.elements.popper.querySelector(n), !n) || vt(t.elements.popper, n) && (t.elements.arrow = n));
1439
+ var t = e.state, r2 = e.options, i2 = r2.element, n = i2 === void 0 ? "[data-popper-arrow]" : i2;
1440
+ n != null && (typeof n == "string" && (n = t.elements.popper.querySelector(n), !n) || dt(t.elements.popper, n) && (t.elements.arrow = n));
1384
1441
  }
1385
1442
  const rr = {
1386
1443
  name: "arrow",
@@ -1401,14 +1458,14 @@
1401
1458
  left: "auto"
1402
1459
  };
1403
1460
  function nr(e, t) {
1404
- var r2 = e.x, i = e.y, n = t.devicePixelRatio || 1;
1461
+ var r2 = e.x, i2 = e.y, n = t.devicePixelRatio || 1;
1405
1462
  return {
1406
1463
  x: Z(r2 * n) / n || 0,
1407
- y: Z(i * n) / n || 0
1464
+ y: Z(i2 * n) / n || 0
1408
1465
  };
1409
1466
  }
1410
1467
  function Qe(e) {
1411
- var t, r2 = e.popper, i = e.popperRect, n = e.placement, o2 = e.variation, l2 = e.offsets, s2 = e.position, a2 = e.gpuAcceleration, f2 = e.adaptive, c2 = e.roundOffsets, h2 = e.isFixed, y2 = l2.x, u2 = y2 === void 0 ? 0 : y2, b2 = l2.y, v2 = b2 === void 0 ? 0 : b2, d2 = typeof c2 == "function" ? c2({
1468
+ var t, r2 = e.popper, i2 = e.popperRect, n = e.placement, o2 = e.variation, l2 = e.offsets, s = e.position, a2 = e.gpuAcceleration, f2 = e.adaptive, c2 = e.roundOffsets, h2 = e.isFixed, y2 = l2.x, u2 = y2 === void 0 ? 0 : y2, b2 = l2.y, v2 = b2 === void 0 ? 0 : b2, d2 = typeof c2 == "function" ? c2({
1412
1469
  x: u2,
1413
1470
  y: v2
1414
1471
  }) : {
@@ -1419,40 +1476,40 @@
1419
1476
  var w2 = l2.hasOwnProperty("x"), O2 = l2.hasOwnProperty("y"), E2 = D, p2 = k, g2 = window;
1420
1477
  if (f2) {
1421
1478
  var m2 = fe(r2), x2 = "clientHeight", L2 = "clientWidth";
1422
- if (m2 === B(r2) && (m2 = F(r2), I(m2).position !== "static" && s2 === "absolute" && (x2 = "scrollHeight", L2 = "scrollWidth")), m2 = m2, n === k || (n === D || n === M) && o2 === se) {
1479
+ if (m2 === B(r2) && (m2 = F(r2), I(m2).position !== "static" && s === "absolute" && (x2 = "scrollHeight", L2 = "scrollWidth")), m2 = m2, n === k || (n === D || n === j) && o2 === se) {
1423
1480
  p2 = S;
1424
1481
  var P2 = h2 && m2 === g2 && g2.visualViewport ? g2.visualViewport.height : (
1425
1482
  // $FlowFixMe[prop-missing]
1426
1483
  m2[x2]
1427
1484
  );
1428
- v2 -= P2 - i.height, v2 *= a2 ? 1 : -1;
1485
+ v2 -= P2 - i2.height, v2 *= a2 ? 1 : -1;
1429
1486
  }
1430
1487
  if (n === D || (n === k || n === S) && o2 === se) {
1431
- E2 = M;
1488
+ E2 = j;
1432
1489
  var A2 = h2 && m2 === g2 && g2.visualViewport ? g2.visualViewport.width : (
1433
1490
  // $FlowFixMe[prop-missing]
1434
1491
  m2[L2]
1435
1492
  );
1436
- u2 -= A2 - i.width, u2 *= a2 ? 1 : -1;
1493
+ u2 -= A2 - i2.width, u2 *= a2 ? 1 : -1;
1437
1494
  }
1438
1495
  }
1439
1496
  var $2 = Object.assign({
1440
- position: s2
1441
- }, f2 && ir), W2 = c2 === true ? nr({
1497
+ position: s
1498
+ }, f2 && ir), M2 = c2 === true ? nr({
1442
1499
  x: u2,
1443
1500
  y: v2
1444
1501
  }, B(r2)) : {
1445
1502
  x: u2,
1446
1503
  y: v2
1447
1504
  };
1448
- if (u2 = W2.x, v2 = W2.y, a2) {
1505
+ if (u2 = M2.x, v2 = M2.y, a2) {
1449
1506
  var C2;
1450
1507
  return Object.assign({}, $2, (C2 = {}, C2[p2] = O2 ? "0" : "", C2[E2] = w2 ? "0" : "", C2.transform = (g2.devicePixelRatio || 1) <= 1 ? "translate(" + u2 + "px, " + v2 + "px)" : "translate3d(" + u2 + "px, " + v2 + "px, 0)", C2));
1451
1508
  }
1452
1509
  return Object.assign({}, $2, (t = {}, t[p2] = O2 ? v2 + "px" : "", t[E2] = w2 ? u2 + "px" : "", t.transform = "", t));
1453
1510
  }
1454
1511
  function or(e) {
1455
- var t = e.state, r2 = e.options, i = r2.gpuAcceleration, n = i === void 0 ? true : i, o2 = r2.adaptive, l2 = o2 === void 0 ? true : o2, s2 = r2.roundOffsets, a2 = s2 === void 0 ? true : s2, f2 = {
1512
+ var t = e.state, r2 = e.options, i2 = r2.gpuAcceleration, n = i2 === void 0 ? true : i2, o2 = r2.adaptive, l2 = o2 === void 0 ? true : o2, s = r2.roundOffsets, a2 = s === void 0 ? true : s, f2 = {
1456
1513
  placement: H(t.placement),
1457
1514
  variation: te(t.placement),
1458
1515
  popper: t.elements.popper,
@@ -1485,13 +1542,13 @@
1485
1542
  passive: true
1486
1543
  };
1487
1544
  function sr(e) {
1488
- var t = e.state, r2 = e.instance, i = e.options, n = i.scroll, o2 = n === void 0 ? true : n, l2 = i.resize, s2 = l2 === void 0 ? true : l2, a2 = B(t.elements.popper), f2 = [].concat(t.scrollParents.reference, t.scrollParents.popper);
1545
+ var t = e.state, r2 = e.instance, i2 = e.options, n = i2.scroll, o2 = n === void 0 ? true : n, l2 = i2.resize, s = l2 === void 0 ? true : l2, a2 = B(t.elements.popper), f2 = [].concat(t.scrollParents.reference, t.scrollParents.popper);
1489
1546
  return o2 && f2.forEach(function(c2) {
1490
1547
  c2.addEventListener("scroll", r2.update, ge);
1491
- }), s2 && a2.addEventListener("resize", r2.update, ge), function() {
1548
+ }), s && a2.addEventListener("resize", r2.update, ge), function() {
1492
1549
  o2 && f2.forEach(function(c2) {
1493
1550
  c2.removeEventListener("scroll", r2.update, ge);
1494
- }), s2 && a2.removeEventListener("resize", r2.update, ge);
1551
+ }), s && a2.removeEventListener("resize", r2.update, ge);
1495
1552
  };
1496
1553
  }
1497
1554
  const cr = {
@@ -1524,52 +1581,52 @@
1524
1581
  });
1525
1582
  }
1526
1583
  function Se(e) {
1527
- var t = B(e), r2 = t.pageXOffset, i = t.pageYOffset;
1584
+ var t = B(e), r2 = t.pageXOffset, i2 = t.pageYOffset;
1528
1585
  return {
1529
1586
  scrollLeft: r2,
1530
- scrollTop: i
1587
+ scrollTop: i2
1531
1588
  };
1532
1589
  }
1533
- function Me(e) {
1590
+ function je(e) {
1534
1591
  return ee(F(e)).left + Se(e).scrollLeft;
1535
1592
  }
1536
1593
  function ur(e, t) {
1537
- var r2 = B(e), i = F(e), n = r2.visualViewport, o2 = i.clientWidth, l2 = i.clientHeight, s2 = 0, a2 = 0;
1594
+ var r2 = B(e), i2 = F(e), n = r2.visualViewport, o2 = i2.clientWidth, l2 = i2.clientHeight, s = 0, a2 = 0;
1538
1595
  if (n) {
1539
1596
  o2 = n.width, l2 = n.height;
1540
- var f2 = dt();
1541
- (f2 || !f2 && t === "fixed") && (s2 = n.offsetLeft, a2 = n.offsetTop);
1597
+ var f2 = pt();
1598
+ (f2 || !f2 && t === "fixed") && (s = n.offsetLeft, a2 = n.offsetTop);
1542
1599
  }
1543
1600
  return {
1544
1601
  width: o2,
1545
1602
  height: l2,
1546
- x: s2 + Me(e),
1603
+ x: s + je(e),
1547
1604
  y: a2
1548
1605
  };
1549
1606
  }
1550
1607
  function pr(e) {
1551
- var t, r2 = F(e), i = Se(e), n = (t = e.ownerDocument) == null ? void 0 : t.body, o2 = _(r2.scrollWidth, r2.clientWidth, n ? n.scrollWidth : 0, n ? n.clientWidth : 0), l2 = _(r2.scrollHeight, r2.clientHeight, n ? n.scrollHeight : 0, n ? n.clientHeight : 0), s2 = -i.scrollLeft + Me(e), a2 = -i.scrollTop;
1552
- return I(n || r2).direction === "rtl" && (s2 += _(r2.clientWidth, n ? n.clientWidth : 0) - o2), {
1608
+ var t, r2 = F(e), i2 = Se(e), n = (t = e.ownerDocument) == null ? void 0 : t.body, o2 = _(r2.scrollWidth, r2.clientWidth, n ? n.scrollWidth : 0, n ? n.clientWidth : 0), l2 = _(r2.scrollHeight, r2.clientHeight, n ? n.scrollHeight : 0, n ? n.clientHeight : 0), s = -i2.scrollLeft + je(e), a2 = -i2.scrollTop;
1609
+ return I(n || r2).direction === "rtl" && (s += _(r2.clientWidth, n ? n.clientWidth : 0) - o2), {
1553
1610
  width: o2,
1554
1611
  height: l2,
1555
- x: s2,
1612
+ x: s,
1556
1613
  y: a2
1557
1614
  };
1558
1615
  }
1559
- function We(e) {
1560
- var t = I(e), r2 = t.overflow, i = t.overflowX, n = t.overflowY;
1561
- return /auto|scroll|overlay|hidden/.test(r2 + n + i);
1616
+ function Me(e) {
1617
+ var t = I(e), r2 = t.overflow, i2 = t.overflowX, n = t.overflowY;
1618
+ return /auto|scroll|overlay|hidden/.test(r2 + n + i2);
1562
1619
  }
1563
- function yt(e) {
1564
- return ["html", "body", "#document"].indexOf(N(e)) >= 0 ? e.ownerDocument.body : T(e) && We(e) ? e : yt(we(e));
1620
+ function mt(e) {
1621
+ return ["html", "body", "#document"].indexOf(N(e)) >= 0 ? e.ownerDocument.body : T(e) && Me(e) ? e : mt(we(e));
1565
1622
  }
1566
1623
  function ae(e, t) {
1567
1624
  var r2;
1568
1625
  t === void 0 && (t = []);
1569
- var i = yt(e), n = i === ((r2 = e.ownerDocument) == null ? void 0 : r2.body), o2 = B(i), l2 = n ? [o2].concat(o2.visualViewport || [], We(i) ? i : []) : i, s2 = t.concat(l2);
1570
- return n ? s2 : (
1626
+ var i2 = mt(e), n = i2 === ((r2 = e.ownerDocument) == null ? void 0 : r2.body), o2 = B(i2), l2 = n ? [o2].concat(o2.visualViewport || [], Me(i2) ? i2 : []) : i2, s = t.concat(l2);
1627
+ return n ? s : (
1571
1628
  // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here
1572
- s2.concat(ae(we(l2)))
1629
+ s.concat(ae(we(l2)))
1573
1630
  );
1574
1631
  }
1575
1632
  function $e(e) {
@@ -1585,23 +1642,23 @@
1585
1642
  return r2.top = r2.top + e.clientTop, r2.left = r2.left + e.clientLeft, r2.bottom = r2.top + e.clientHeight, r2.right = r2.left + e.clientWidth, r2.width = e.clientWidth, r2.height = e.clientHeight, r2.x = r2.left, r2.y = r2.top, r2;
1586
1643
  }
1587
1644
  function et(e, t, r2) {
1588
- return t === ut ? $e(ur(e, r2)) : K(t) ? dr(t, r2) : $e(pr(F(e)));
1645
+ return t === ft ? $e(ur(e, r2)) : K(t) ? dr(t, r2) : $e(pr(F(e)));
1589
1646
  }
1590
1647
  function vr(e) {
1591
- var t = ae(we(e)), r2 = ["absolute", "fixed"].indexOf(I(e).position) >= 0, i = r2 && T(e) ? fe(e) : e;
1592
- return K(i) ? t.filter(function(n) {
1593
- return K(n) && vt(n, i) && N(n) !== "body";
1648
+ var t = ae(we(e)), r2 = ["absolute", "fixed"].indexOf(I(e).position) >= 0, i2 = r2 && T(e) ? fe(e) : e;
1649
+ return K(i2) ? t.filter(function(n) {
1650
+ return K(n) && dt(n, i2) && N(n) !== "body";
1594
1651
  }) : [];
1595
1652
  }
1596
- function hr(e, t, r2, i) {
1597
- var n = t === "clippingParents" ? vr(e) : [].concat(t), o2 = [].concat(n, [r2]), l2 = o2[0], s2 = o2.reduce(function(a2, f2) {
1598
- var c2 = et(e, f2, i);
1653
+ function hr(e, t, r2, i2) {
1654
+ var n = t === "clippingParents" ? vr(e) : [].concat(t), o2 = [].concat(n, [r2]), l2 = o2[0], s = o2.reduce(function(a2, f2) {
1655
+ var c2 = et(e, f2, i2);
1599
1656
  return a2.top = _(c2.top, a2.top), a2.right = ye(c2.right, a2.right), a2.bottom = ye(c2.bottom, a2.bottom), a2.left = _(c2.left, a2.left), a2;
1600
- }, et(e, l2, i));
1601
- return s2.width = s2.right - s2.left, s2.height = s2.bottom - s2.top, s2.x = s2.left, s2.y = s2.top, s2;
1657
+ }, et(e, l2, i2));
1658
+ return s.width = s.right - s.left, s.height = s.bottom - s.top, s.x = s.left, s.y = s.top, s;
1602
1659
  }
1603
- function wt(e) {
1604
- var t = e.reference, r2 = e.element, i = e.placement, n = i ? H(i) : null, o2 = i ? te(i) : null, l2 = t.x + t.width / 2 - r2.width / 2, s2 = t.y + t.height / 2 - r2.height / 2, a2;
1660
+ function yt(e) {
1661
+ var t = e.reference, r2 = e.element, i2 = e.placement, n = i2 ? H(i2) : null, o2 = i2 ? te(i2) : null, l2 = t.x + t.width / 2 - r2.width / 2, s = t.y + t.height / 2 - r2.height / 2, a2;
1605
1662
  switch (n) {
1606
1663
  case k:
1607
1664
  a2 = {
@@ -1615,16 +1672,16 @@
1615
1672
  y: t.y + t.height
1616
1673
  };
1617
1674
  break;
1618
- case M:
1675
+ case j:
1619
1676
  a2 = {
1620
1677
  x: t.x + t.width,
1621
- y: s2
1678
+ y: s
1622
1679
  };
1623
1680
  break;
1624
1681
  case D:
1625
1682
  a2 = {
1626
1683
  x: t.x - r2.width,
1627
- y: s2
1684
+ y: s
1628
1685
  };
1629
1686
  break;
1630
1687
  default:
@@ -1649,7 +1706,7 @@
1649
1706
  }
1650
1707
  function ce(e, t) {
1651
1708
  t === void 0 && (t = {});
1652
- var r2 = t, i = r2.placement, n = i === void 0 ? e.placement : i, o2 = r2.strategy, l2 = o2 === void 0 ? e.strategy : o2, s2 = r2.boundary, a2 = s2 === void 0 ? Mt : s2, f2 = r2.rootBoundary, c2 = f2 === void 0 ? ut : f2, h2 = r2.elementContext, y2 = h2 === void 0 ? ne : h2, u2 = r2.altBoundary, b2 = u2 === void 0 ? false : u2, v2 = r2.padding, d2 = v2 === void 0 ? 0 : v2, w2 = gt(typeof d2 != "number" ? d2 : mt(d2, le)), O2 = y2 === ne ? Wt : ne, E2 = e.rects.popper, p2 = e.elements[b2 ? O2 : y2], g2 = hr(K(p2) ? p2 : p2.contextElement || F(e.elements.popper), a2, c2, l2), m2 = ee(e.elements.reference), x2 = wt({
1709
+ var r2 = t, i2 = r2.placement, n = i2 === void 0 ? e.placement : i2, o2 = r2.strategy, l2 = o2 === void 0 ? e.strategy : o2, s = r2.boundary, a2 = s === void 0 ? jt : s, f2 = r2.rootBoundary, c2 = f2 === void 0 ? ft : f2, h2 = r2.elementContext, y2 = h2 === void 0 ? ne : h2, u2 = r2.altBoundary, b2 = u2 === void 0 ? false : u2, v2 = r2.padding, d2 = v2 === void 0 ? 0 : v2, w2 = ht(typeof d2 != "number" ? d2 : gt(d2, le)), O2 = y2 === ne ? Mt : ne, E2 = e.rects.popper, p2 = e.elements[b2 ? O2 : y2], g2 = hr(K(p2) ? p2 : p2.contextElement || F(e.elements.popper), a2, c2, l2), m2 = ee(e.elements.reference), x2 = yt({
1653
1710
  reference: m2,
1654
1711
  element: E2,
1655
1712
  strategy: "absolute",
@@ -1661,17 +1718,17 @@
1661
1718
  right: P2.right - g2.right + w2.right
1662
1719
  }, $2 = e.modifiersData.offset;
1663
1720
  if (y2 === ne && $2) {
1664
- var W2 = $2[n];
1721
+ var M2 = $2[n];
1665
1722
  Object.keys(A2).forEach(function(C2) {
1666
- var q2 = [M, S].indexOf(C2) >= 0 ? 1 : -1, X2 = [k, S].indexOf(C2) >= 0 ? "y" : "x";
1667
- A2[C2] += W2[X2] * q2;
1723
+ var X2 = [j, S].indexOf(C2) >= 0 ? 1 : -1, Y2 = [k, S].indexOf(C2) >= 0 ? "y" : "x";
1724
+ A2[C2] += M2[Y2] * X2;
1668
1725
  });
1669
1726
  }
1670
1727
  return A2;
1671
1728
  }
1672
1729
  function gr(e, t) {
1673
1730
  t === void 0 && (t = {});
1674
- var r2 = t, i = r2.placement, n = r2.boundary, o2 = r2.rootBoundary, l2 = r2.padding, s2 = r2.flipVariations, a2 = r2.allowedAutoPlacements, f2 = a2 === void 0 ? pt : a2, c2 = te(i), h2 = c2 ? s2 ? Ge : Ge.filter(function(b2) {
1731
+ var r2 = t, i2 = r2.placement, n = r2.boundary, o2 = r2.rootBoundary, l2 = r2.padding, s = r2.flipVariations, a2 = r2.allowedAutoPlacements, f2 = a2 === void 0 ? ut : a2, c2 = te(i2), h2 = c2 ? s ? Ge : Ge.filter(function(b2) {
1675
1732
  return te(b2) === c2;
1676
1733
  }) : le, y2 = h2.filter(function(b2) {
1677
1734
  return f2.indexOf(b2) >= 0;
@@ -1696,9 +1753,9 @@
1696
1753
  return [Ze(e), t, Ze(t)];
1697
1754
  }
1698
1755
  function yr(e) {
1699
- var t = e.state, r2 = e.options, i = e.name;
1700
- if (!t.modifiersData[i]._skip) {
1701
- for (var n = r2.mainAxis, o2 = n === void 0 ? true : n, l2 = r2.altAxis, s2 = l2 === void 0 ? true : l2, a2 = r2.fallbackPlacements, f2 = r2.padding, c2 = r2.boundary, h2 = r2.rootBoundary, y2 = r2.altBoundary, u2 = r2.flipVariations, b2 = u2 === void 0 ? true : u2, v2 = r2.allowedAutoPlacements, d2 = t.options.placement, w2 = H(d2), O2 = w2 === d2, E2 = a2 || (O2 || !b2 ? [me(d2)] : mr(d2)), p2 = [d2].concat(E2).reduce(function(G2, V2) {
1756
+ var t = e.state, r2 = e.options, i2 = e.name;
1757
+ if (!t.modifiersData[i2]._skip) {
1758
+ for (var n = r2.mainAxis, o2 = n === void 0 ? true : n, l2 = r2.altAxis, s = l2 === void 0 ? true : l2, a2 = r2.fallbackPlacements, f2 = r2.padding, c2 = r2.boundary, h2 = r2.rootBoundary, y2 = r2.altBoundary, u2 = r2.flipVariations, b2 = u2 === void 0 ? true : u2, v2 = r2.allowedAutoPlacements, d2 = t.options.placement, w2 = H(d2), O2 = w2 === d2, E2 = a2 || (O2 || !b2 ? [me(d2)] : mr(d2)), p2 = [d2].concat(E2).reduce(function(G2, V2) {
1702
1759
  return G2.concat(H(V2) === De ? gr(t, {
1703
1760
  placement: V2,
1704
1761
  boundary: c2,
@@ -1708,22 +1765,22 @@
1708
1765
  allowedAutoPlacements: v2
1709
1766
  }) : V2);
1710
1767
  }, []), g2 = t.rects.reference, m2 = t.rects.popper, x2 = /* @__PURE__ */ new Map(), L2 = true, P2 = p2[0], A2 = 0; A2 < p2.length; A2++) {
1711
- var $2 = p2[A2], W2 = H($2), C2 = te($2) === Q, q2 = [k, S].indexOf(W2) >= 0, X2 = q2 ? "width" : "height", R2 = ce(t, {
1768
+ var $2 = p2[A2], M2 = H($2), C2 = te($2) === Q, X2 = [k, S].indexOf(M2) >= 0, Y2 = X2 ? "width" : "height", R2 = ce(t, {
1712
1769
  placement: $2,
1713
1770
  boundary: c2,
1714
1771
  rootBoundary: h2,
1715
1772
  altBoundary: y2,
1716
1773
  padding: f2
1717
- }), j2 = q2 ? C2 ? M : D : C2 ? S : k;
1718
- g2[X2] > m2[X2] && (j2 = me(j2));
1719
- var ue = me(j2), Y2 = [];
1720
- if (o2 && Y2.push(R2[W2] <= 0), s2 && Y2.push(R2[j2] <= 0, R2[ue] <= 0), Y2.every(function(G2) {
1774
+ }), W2 = X2 ? C2 ? j : D : C2 ? S : k;
1775
+ g2[Y2] > m2[Y2] && (W2 = me(W2));
1776
+ var ue = me(W2), q2 = [];
1777
+ if (o2 && q2.push(R2[M2] <= 0), s && q2.push(R2[W2] <= 0, R2[ue] <= 0), q2.every(function(G2) {
1721
1778
  return G2;
1722
1779
  })) {
1723
1780
  P2 = $2, L2 = false;
1724
1781
  break;
1725
1782
  }
1726
- x2.set($2, Y2);
1783
+ x2.set($2, q2);
1727
1784
  }
1728
1785
  if (L2)
1729
1786
  for (var pe = b2 ? 3 : 1, be = function(V2) {
@@ -1741,7 +1798,7 @@
1741
1798
  if (de === "break")
1742
1799
  break;
1743
1800
  }
1744
- t.placement !== P2 && (t.modifiersData[i]._skip = true, t.placement = P2, t.reset = true);
1801
+ t.placement !== P2 && (t.modifiersData[i2]._skip = true, t.placement = P2, t.reset = true);
1745
1802
  }
1746
1803
  }
1747
1804
  const wr = {
@@ -1766,16 +1823,16 @@
1766
1823
  };
1767
1824
  }
1768
1825
  function rt(e) {
1769
- return [k, M, S, D].some(function(t) {
1826
+ return [k, j, S, D].some(function(t) {
1770
1827
  return e[t] >= 0;
1771
1828
  });
1772
1829
  }
1773
1830
  function br(e) {
1774
- var t = e.state, r2 = e.name, i = t.rects.reference, n = t.rects.popper, o2 = t.modifiersData.preventOverflow, l2 = ce(t, {
1831
+ var t = e.state, r2 = e.name, i2 = t.rects.reference, n = t.rects.popper, o2 = t.modifiersData.preventOverflow, l2 = ce(t, {
1775
1832
  elementContext: "reference"
1776
- }), s2 = ce(t, {
1833
+ }), s = ce(t, {
1777
1834
  altBoundary: true
1778
- }), a2 = tt(l2, i), f2 = tt(s2, n, o2), c2 = rt(a2), h2 = rt(f2);
1835
+ }), a2 = tt(l2, i2), f2 = tt(s, n, o2), c2 = rt(a2), h2 = rt(f2);
1779
1836
  t.modifiersData[r2] = {
1780
1837
  referenceClippingOffsets: a2,
1781
1838
  popperEscapeOffsets: f2,
@@ -1794,22 +1851,22 @@
1794
1851
  fn: br
1795
1852
  };
1796
1853
  function Or(e, t, r2) {
1797
- var i = H(e), n = [D, k].indexOf(i) >= 0 ? -1 : 1, o2 = typeof r2 == "function" ? r2(Object.assign({}, t, {
1854
+ var i2 = H(e), n = [D, k].indexOf(i2) >= 0 ? -1 : 1, o2 = typeof r2 == "function" ? r2(Object.assign({}, t, {
1798
1855
  placement: e
1799
- })) : r2, l2 = o2[0], s2 = o2[1];
1800
- return l2 = l2 || 0, s2 = (s2 || 0) * n, [D, M].indexOf(i) >= 0 ? {
1801
- x: s2,
1856
+ })) : r2, l2 = o2[0], s = o2[1];
1857
+ return l2 = l2 || 0, s = (s || 0) * n, [D, j].indexOf(i2) >= 0 ? {
1858
+ x: s,
1802
1859
  y: l2
1803
1860
  } : {
1804
1861
  x: l2,
1805
- y: s2
1862
+ y: s
1806
1863
  };
1807
1864
  }
1808
1865
  function Er(e) {
1809
- var t = e.state, r2 = e.options, i = e.name, n = r2.offset, o2 = n === void 0 ? [0, 0] : n, l2 = pt.reduce(function(c2, h2) {
1866
+ var t = e.state, r2 = e.options, i2 = e.name, n = r2.offset, o2 = n === void 0 ? [0, 0] : n, l2 = ut.reduce(function(c2, h2) {
1810
1867
  return c2[h2] = Or(h2, t.rects, o2), c2;
1811
- }, {}), s2 = l2[t.placement], a2 = s2.x, f2 = s2.y;
1812
- t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a2, t.modifiersData.popperOffsets.y += f2), t.modifiersData[i] = l2;
1868
+ }, {}), s = l2[t.placement], a2 = s.x, f2 = s.y;
1869
+ t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a2, t.modifiersData.popperOffsets.y += f2), t.modifiersData[i2] = l2;
1813
1870
  }
1814
1871
  const Ar = {
1815
1872
  name: "offset",
@@ -1820,7 +1877,7 @@
1820
1877
  };
1821
1878
  function Pr(e) {
1822
1879
  var t = e.state, r2 = e.name;
1823
- t.modifiersData[r2] = wt({
1880
+ t.modifiersData[r2] = yt({
1824
1881
  reference: t.rects.reference,
1825
1882
  element: t.rects.popper,
1826
1883
  strategy: "absolute",
@@ -1838,7 +1895,7 @@
1838
1895
  return e === "x" ? "y" : "x";
1839
1896
  }
1840
1897
  function Cr(e) {
1841
- var t = e.state, r2 = e.options, i = e.name, n = r2.mainAxis, o2 = n === void 0 ? true : n, l2 = r2.altAxis, s2 = l2 === void 0 ? false : l2, a2 = r2.boundary, f2 = r2.rootBoundary, c2 = r2.altBoundary, h2 = r2.padding, y2 = r2.tether, u2 = y2 === void 0 ? true : y2, b2 = r2.tetherOffset, v2 = b2 === void 0 ? 0 : b2, d2 = ce(t, {
1898
+ var t = e.state, r2 = e.options, i2 = e.name, n = r2.mainAxis, o2 = n === void 0 ? true : n, l2 = r2.altAxis, s = l2 === void 0 ? false : l2, a2 = r2.boundary, f2 = r2.rootBoundary, c2 = r2.altBoundary, h2 = r2.padding, y2 = r2.tether, u2 = y2 === void 0 ? true : y2, b2 = r2.tetherOffset, v2 = b2 === void 0 ? 0 : b2, d2 = ce(t, {
1842
1899
  boundary: a2,
1843
1900
  rootBoundary: f2,
1844
1901
  padding: h2,
@@ -1851,23 +1908,23 @@
1851
1908
  } : Object.assign({
1852
1909
  mainAxis: 0,
1853
1910
  altAxis: 0
1854
- }, P2), $2 = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, W2 = {
1911
+ }, P2), $2 = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, M2 = {
1855
1912
  x: 0,
1856
1913
  y: 0
1857
1914
  };
1858
1915
  if (m2) {
1859
1916
  if (o2) {
1860
- var C2, q2 = p2 === "y" ? k : D, X2 = p2 === "y" ? S : M, R2 = p2 === "y" ? "height" : "width", j2 = m2[p2], ue = j2 + d2[q2], Y2 = j2 - d2[X2], pe = u2 ? -L2[R2] / 2 : 0, be = O2 === Q ? x2[R2] : L2[R2], re = O2 === Q ? -L2[R2] : -x2[R2], de = t.elements.arrow, G2 = u2 && de ? Be(de) : {
1917
+ var C2, X2 = p2 === "y" ? k : D, Y2 = p2 === "y" ? S : j, R2 = p2 === "y" ? "height" : "width", W2 = m2[p2], ue = W2 + d2[X2], q2 = W2 - d2[Y2], pe = u2 ? -L2[R2] / 2 : 0, be = O2 === Q ? x2[R2] : L2[R2], re = O2 === Q ? -L2[R2] : -x2[R2], de = t.elements.arrow, G2 = u2 && de ? Be(de) : {
1861
1918
  width: 0,
1862
1919
  height: 0
1863
- }, V2 = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : ht(), ie = V2[q2], ve = V2[X2], z2 = oe(0, x2[R2], G2[R2]), xe = E2 ? x2[R2] / 2 - pe - z2 - ie - A2.mainAxis : be - z2 - ie - A2.mainAxis, Ot = E2 ? -x2[R2] / 2 + pe + z2 + ve + A2.mainAxis : re + z2 + ve + A2.mainAxis, Oe = t.elements.arrow && fe(t.elements.arrow), Et = Oe ? p2 === "y" ? Oe.clientTop || 0 : Oe.clientLeft || 0 : 0, He = (C2 = $2 == null ? void 0 : $2[p2]) != null ? C2 : 0, At = j2 + xe - He - Et, Pt = j2 + Ot - He, Ne = oe(u2 ? ye(ue, At) : ue, j2, u2 ? _(Y2, Pt) : Y2);
1864
- m2[p2] = Ne, W2[p2] = Ne - j2;
1920
+ }, V2 = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : vt(), ie = V2[X2], ve = V2[Y2], z2 = oe(0, x2[R2], G2[R2]), xe = E2 ? x2[R2] / 2 - pe - z2 - ie - A2.mainAxis : be - z2 - ie - A2.mainAxis, xt = E2 ? -x2[R2] / 2 + pe + z2 + ve + A2.mainAxis : re + z2 + ve + A2.mainAxis, Oe = t.elements.arrow && fe(t.elements.arrow), Ot = Oe ? p2 === "y" ? Oe.clientTop || 0 : Oe.clientLeft || 0 : 0, He = (C2 = $2 == null ? void 0 : $2[p2]) != null ? C2 : 0, Et = W2 + xe - He - Ot, At = W2 + xt - He, Ne = oe(u2 ? ye(ue, Et) : ue, W2, u2 ? _(q2, At) : q2);
1921
+ m2[p2] = Ne, M2[p2] = Ne - W2;
1865
1922
  }
1866
- if (s2) {
1867
- var Ie, Lt = p2 === "x" ? k : D, $t = p2 === "x" ? S : M, U2 = m2[g2], he = g2 === "y" ? "height" : "width", Ve = U2 + d2[Lt], Fe = U2 - d2[$t], Ee = [k, D].indexOf(w2) !== -1, qe = (Ie = $2 == null ? void 0 : $2[g2]) != null ? Ie : 0, Xe = Ee ? Ve : U2 - x2[he] - L2[he] - qe + A2.altAxis, Ye = Ee ? U2 + x2[he] + L2[he] - qe - A2.altAxis : Fe, ze = u2 && Ee ? Qt(Xe, U2, Ye) : oe(u2 ? Xe : Ve, U2, u2 ? Ye : Fe);
1868
- m2[g2] = ze, W2[g2] = ze - U2;
1923
+ if (s) {
1924
+ var Ie, Pt = p2 === "x" ? k : D, Lt = p2 === "x" ? S : j, U2 = m2[g2], he = g2 === "y" ? "height" : "width", Ve = U2 + d2[Pt], Fe = U2 - d2[Lt], Ee = [k, D].indexOf(w2) !== -1, Xe = (Ie = $2 == null ? void 0 : $2[g2]) != null ? Ie : 0, Ye = Ee ? Ve : U2 - x2[he] - L2[he] - Xe + A2.altAxis, qe = Ee ? U2 + x2[he] + L2[he] - Xe - A2.altAxis : Fe, ze = u2 && Ee ? Qt(Ye, U2, qe) : oe(u2 ? Ye : Ve, U2, u2 ? qe : Fe);
1925
+ m2[g2] = ze, M2[g2] = ze - U2;
1869
1926
  }
1870
- t.modifiersData[i] = W2;
1927
+ t.modifiersData[i2] = M2;
1871
1928
  }
1872
1929
  }
1873
1930
  const kr = {
@@ -1887,54 +1944,54 @@
1887
1944
  return e === B(e) || !T(e) ? Se(e) : Dr(e);
1888
1945
  }
1889
1946
  function Br(e) {
1890
- var t = e.getBoundingClientRect(), r2 = Z(t.width) / e.offsetWidth || 1, i = Z(t.height) / e.offsetHeight || 1;
1891
- return r2 !== 1 || i !== 1;
1947
+ var t = e.getBoundingClientRect(), r2 = Z(t.width) / e.offsetWidth || 1, i2 = Z(t.height) / e.offsetHeight || 1;
1948
+ return r2 !== 1 || i2 !== 1;
1892
1949
  }
1893
1950
  function Tr(e, t, r2) {
1894
1951
  r2 === void 0 && (r2 = false);
1895
- var i = T(t), n = T(t) && Br(t), o2 = F(t), l2 = ee(e, n, r2), s2 = {
1952
+ var i2 = T(t), n = T(t) && Br(t), o2 = F(t), l2 = ee(e, n, r2), s = {
1896
1953
  scrollLeft: 0,
1897
1954
  scrollTop: 0
1898
1955
  }, a2 = {
1899
1956
  x: 0,
1900
1957
  y: 0
1901
1958
  };
1902
- return (i || !i && !r2) && ((N(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078
1903
- We(o2)) && (s2 = Rr(t)), T(t) ? (a2 = ee(t, true), a2.x += t.clientLeft, a2.y += t.clientTop) : o2 && (a2.x = Me(o2))), {
1904
- x: l2.left + s2.scrollLeft - a2.x,
1905
- y: l2.top + s2.scrollTop - a2.y,
1959
+ return (i2 || !i2 && !r2) && ((N(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078
1960
+ Me(o2)) && (s = Rr(t)), T(t) ? (a2 = ee(t, true), a2.x += t.clientLeft, a2.y += t.clientTop) : o2 && (a2.x = je(o2))), {
1961
+ x: l2.left + s.scrollLeft - a2.x,
1962
+ y: l2.top + s.scrollTop - a2.y,
1906
1963
  width: l2.width,
1907
1964
  height: l2.height
1908
1965
  };
1909
1966
  }
1910
1967
  function Sr(e) {
1911
- var t = /* @__PURE__ */ new Map(), r2 = /* @__PURE__ */ new Set(), i = [];
1968
+ var t = /* @__PURE__ */ new Map(), r2 = /* @__PURE__ */ new Set(), i2 = [];
1912
1969
  e.forEach(function(o2) {
1913
1970
  t.set(o2.name, o2);
1914
1971
  });
1915
1972
  function n(o2) {
1916
1973
  r2.add(o2.name);
1917
1974
  var l2 = [].concat(o2.requires || [], o2.requiresIfExists || []);
1918
- l2.forEach(function(s2) {
1919
- if (!r2.has(s2)) {
1920
- var a2 = t.get(s2);
1975
+ l2.forEach(function(s) {
1976
+ if (!r2.has(s)) {
1977
+ var a2 = t.get(s);
1921
1978
  a2 && n(a2);
1922
1979
  }
1923
- }), i.push(o2);
1980
+ }), i2.push(o2);
1924
1981
  }
1925
1982
  return e.forEach(function(o2) {
1926
1983
  r2.has(o2.name) || n(o2);
1927
- }), i;
1984
+ }), i2;
1928
1985
  }
1929
- function Mr(e) {
1986
+ function jr(e) {
1930
1987
  var t = Sr(e);
1931
- return zt.reduce(function(r2, i) {
1988
+ return zt.reduce(function(r2, i2) {
1932
1989
  return r2.concat(t.filter(function(n) {
1933
- return n.phase === i;
1990
+ return n.phase === i2;
1934
1991
  }));
1935
1992
  }, []);
1936
1993
  }
1937
- function Wr(e) {
1994
+ function Mr(e) {
1938
1995
  var t;
1939
1996
  return function() {
1940
1997
  return t || (t = new Promise(function(r2) {
@@ -1944,13 +2001,13 @@
1944
2001
  })), t;
1945
2002
  };
1946
2003
  }
1947
- function jr(e) {
1948
- var t = e.reduce(function(r2, i) {
1949
- var n = r2[i.name];
1950
- return r2[i.name] = n ? Object.assign({}, n, i, {
1951
- options: Object.assign({}, n.options, i.options),
1952
- data: Object.assign({}, n.data, i.data)
1953
- }) : i, r2;
2004
+ function Wr(e) {
2005
+ var t = e.reduce(function(r2, i2) {
2006
+ var n = r2[i2.name];
2007
+ return r2[i2.name] = n ? Object.assign({}, n, i2, {
2008
+ options: Object.assign({}, n.options, i2.options),
2009
+ data: Object.assign({}, n.data, i2.data)
2010
+ }) : i2, r2;
1954
2011
  }, {});
1955
2012
  return Object.keys(t).map(function(r2) {
1956
2013
  return t[r2];
@@ -1964,14 +2021,14 @@
1964
2021
  function nt() {
1965
2022
  for (var e = arguments.length, t = new Array(e), r2 = 0; r2 < e; r2++)
1966
2023
  t[r2] = arguments[r2];
1967
- return !t.some(function(i) {
1968
- return !(i && typeof i.getBoundingClientRect == "function");
2024
+ return !t.some(function(i2) {
2025
+ return !(i2 && typeof i2.getBoundingClientRect == "function");
1969
2026
  });
1970
2027
  }
1971
2028
  function Hr(e) {
1972
2029
  e === void 0 && (e = {});
1973
- var t = e, r2 = t.defaultModifiers, i = r2 === void 0 ? [] : r2, n = t.defaultOptions, o2 = n === void 0 ? it : n;
1974
- return function(s2, a2, f2) {
2030
+ var t = e, r2 = t.defaultModifiers, i2 = r2 === void 0 ? [] : r2, n = t.defaultOptions, o2 = n === void 0 ? it : n;
2031
+ return function(s, a2, f2) {
1975
2032
  f2 === void 0 && (f2 = o2);
1976
2033
  var c2 = {
1977
2034
  placement: "bottom",
@@ -1979,7 +2036,7 @@
1979
2036
  options: Object.assign({}, it, o2),
1980
2037
  modifiersData: {},
1981
2038
  elements: {
1982
- reference: s2,
2039
+ reference: s,
1983
2040
  popper: a2
1984
2041
  },
1985
2042
  attributes: {},
@@ -1989,10 +2046,10 @@
1989
2046
  setOptions: function(w2) {
1990
2047
  var O2 = typeof w2 == "function" ? w2(c2.options) : w2;
1991
2048
  v2(), c2.options = Object.assign({}, o2, c2.options, O2), c2.scrollParents = {
1992
- reference: K(s2) ? ae(s2) : s2.contextElement ? ae(s2.contextElement) : [],
2049
+ reference: K(s) ? ae(s) : s.contextElement ? ae(s.contextElement) : [],
1993
2050
  popper: ae(a2)
1994
2051
  };
1995
- var E2 = Mr(jr([].concat(i, c2.options.modifiers)));
2052
+ var E2 = jr(Wr([].concat(i2, c2.options.modifiers)));
1996
2053
  return c2.orderedModifiers = E2.filter(function(p2) {
1997
2054
  return p2.enabled;
1998
2055
  }), b2(), u2.update();
@@ -2030,7 +2087,7 @@
2030
2087
  },
2031
2088
  // Async and optimistically optimized update – it will not be executed if
2032
2089
  // not necessary (debounced to run at most once-per-tick)
2033
- update: Wr(function() {
2090
+ update: Mr(function() {
2034
2091
  return new Promise(function(d2) {
2035
2092
  u2.forceUpdate(), d2(c2);
2036
2093
  });
@@ -2039,7 +2096,7 @@
2039
2096
  v2(), y2 = true;
2040
2097
  }
2041
2098
  };
2042
- if (!nt(s2, a2))
2099
+ if (!nt(s, a2))
2043
2100
  return u2;
2044
2101
  u2.setOptions(f2).then(function(d2) {
2045
2102
  !y2 && f2.onFirstUpdate && f2.onFirstUpdate(d2);
@@ -2071,41 +2128,45 @@
2071
2128
  defaultModifiers: Nr
2072
2129
  });
2073
2130
  async function Ce(e) {
2074
- if (!e)
2075
- return this.collection;
2076
2131
  const t = this.collection.findIndex((r2) => r2.id === e.id);
2077
2132
  if (t >= 0) {
2078
2133
  const r2 = this.collection[t];
2079
- r2.state === "opened" && r2.close(), r2.popper.destroy(), bt(r2), Object.getOwnPropertyNames(r2).forEach((i) => {
2080
- delete r2[i];
2134
+ r2.state === "opened" && r2.close(), r2.popper.destroy(), wt(r2), Object.getOwnPropertyNames(r2).forEach((i2) => {
2135
+ delete r2[i2];
2081
2136
  }), this.collection.splice(t, 1);
2082
2137
  }
2083
2138
  return this.collection;
2084
2139
  }
2085
- function bt(e) {
2140
+ function wt(e) {
2086
2141
  return e.__eventListeners && (e.__eventListeners.forEach((t) => {
2087
2142
  t.el.forEach((r2) => {
2088
- t.type.forEach((i) => {
2089
- e[r2].removeEventListener(i, t.listener, false);
2143
+ t.type.forEach((i2) => {
2144
+ e[r2].removeEventListener(i2, t.listener, false);
2090
2145
  });
2091
2146
  });
2092
2147
  }), delete e.__eventListeners), e;
2093
2148
  }
2094
- async function je(e) {
2149
+ async function We(e) {
2095
2150
  const t = at.call(this, e);
2096
2151
  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({
2097
2152
  placement: t.config.placement,
2098
2153
  modifiers: [
2099
2154
  { name: "eventListeners", enabled: true },
2100
- ...Rt(t.config)
2155
+ ...Dt(t.config)
2101
2156
  ]
2102
2157
  }), t.popper.update(), t.state = "opened", t;
2103
2158
  }
2104
2159
  async function Vr(e, t) {
2105
2160
  Ce.call(this, e);
2106
- const r2 = this, i = {
2161
+ const r2 = this, i2 = {
2162
+ id: e.id,
2163
+ state: "closed",
2164
+ el: e,
2165
+ trigger: t,
2166
+ popper: Ir(t, e),
2167
+ config: ot(e, this.settings),
2107
2168
  open() {
2108
- return je.call(r2, this);
2169
+ return We.call(r2, this);
2109
2170
  },
2110
2171
  close() {
2111
2172
  return ke.call(r2, this);
@@ -2113,30 +2174,22 @@
2113
2174
  deregister() {
2114
2175
  return Ce.call(r2, this);
2115
2176
  }
2116
- }, n = {
2117
- id: e.id,
2118
- state: "closed",
2119
- el: e,
2120
- trigger: t,
2121
- popper: Ir(t, e),
2122
- config: ot(e, this.settings),
2123
- ...i
2124
2177
  };
2125
- 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;
2178
+ return i2.trigger.hasAttribute("aria-controls") && i2.trigger.setAttribute("aria-expanded", "false"), bt.call(this, i2), this.collection.push(i2), i2.el.classList.contains(this.settings.stateActive) && (await i2.open(), lt.call(this, i2)), i2;
2126
2179
  }
2127
- function xt(e) {
2180
+ function bt(e) {
2128
2181
  return e.__eventListeners || (e.config.event === "hover" ? (e.__eventListeners = [{
2129
2182
  el: ["trigger"],
2130
2183
  type: ["mouseenter", "focus"],
2131
- listener: je.bind(this, e)
2184
+ listener: We.bind(this, e)
2132
2185
  }, {
2133
2186
  el: ["el", "trigger"],
2134
2187
  type: ["mouseleave", "focusout"],
2135
- listener: lt.bind(this, e)
2188
+ listener: ct.bind(this, e)
2136
2189
  }], e.__eventListeners.forEach((r2) => {
2137
- r2.el.forEach((i) => {
2190
+ r2.el.forEach((i2) => {
2138
2191
  r2.type.forEach((n) => {
2139
- e[i].addEventListener(n, r2.listener, false);
2192
+ e[i2].addEventListener(n, r2.listener, false);
2140
2193
  });
2141
2194
  });
2142
2195
  })) : (e.__eventListeners = [{
@@ -2144,57 +2197,57 @@
2144
2197
  type: ["click"],
2145
2198
  listener: Tt.bind(this, e)
2146
2199
  }], e.__eventListeners.forEach((r2) => {
2147
- r2.el.forEach((i) => {
2200
+ r2.el.forEach((i2) => {
2148
2201
  r2.type.forEach((n) => {
2149
- e[i].addEventListener(n, r2.listener, false);
2202
+ e[i2].addEventListener(n, r2.listener, false);
2150
2203
  });
2151
2204
  });
2152
2205
  }))), e;
2153
2206
  }
2154
2207
  var J;
2155
- class qr extends Ct {
2208
+ class Xr extends $t {
2156
2209
  constructor(r2) {
2157
2210
  super();
2158
2211
  _e(this, J, void 0);
2159
- this.defaults = Dt, this.settings = { ...this.defaults, ...r2 }, this.trigger = null, Ke(this, J, St.bind(this)), this.settings.autoInit && this.init();
2212
+ this.defaults = kt, this.settings = { ...this.defaults, ...r2 }, this.trigger = null, Ke(this, J, St.bind(this)), this.settings.autoInit && this.init();
2160
2213
  }
2161
2214
  async init(r2) {
2162
2215
  r2 && (this.settings = { ...this.settings, ...r2 });
2163
- const i = document.querySelectorAll(this.settings.selectorPopover);
2164
- return await this.registerCollection(i), this.settings.eventListeners && this.initEventListeners(false), this;
2216
+ const i2 = document.querySelectorAll(this.settings.selectorPopover);
2217
+ return await this.registerCollection(i2), this.settings.eventListeners && this.initEventListeners(false), this;
2165
2218
  }
2166
2219
  async destroy() {
2167
2220
  return this.trigger = null, await this.deregisterCollection(), this.settings.eventListeners && this.destroyEventListeners(false), this;
2168
2221
  }
2169
2222
  initEventListeners(r2 = true) {
2170
- r2 && this.collection.forEach((i) => {
2171
- xt.call(this, i);
2223
+ r2 && this.collection.forEach((i2) => {
2224
+ bt.call(this, i2);
2172
2225
  }), document.addEventListener("keydown", Ae(this, J), false);
2173
2226
  }
2174
2227
  destroyEventListeners(r2 = true) {
2175
- r2 && this.collection.forEach((i) => {
2176
- bt(i);
2228
+ r2 && this.collection.forEach((i2) => {
2229
+ wt(i2);
2177
2230
  }), document.removeEventListener("keydown", Ae(this, J), false);
2178
2231
  }
2179
2232
  register(r2) {
2180
- const i = Bt.call(this, r2);
2181
- return i.error ? Promise.reject(i.error) : Vr.call(this, i.popover, i.trigger);
2233
+ const i2 = Bt.call(this, r2);
2234
+ return i2.error ? Promise.reject(i2.error) : Vr.call(this, i2.popover, i2.trigger);
2182
2235
  }
2183
2236
  deregister(r2) {
2184
- const i = this.get(st.call(this, r2));
2185
- return Ce.call(this, i);
2237
+ let i2 = this.get(r2.id || r2);
2238
+ return i2 ? Ce.call(this, i2) : Promise.reject(new Error(`Failed to deregister; popover does not exist in collection with ID of: "${r2.id || r2}".`));
2186
2239
  }
2187
2240
  open(r2) {
2188
- return je.call(this, r2);
2241
+ return We.call(this, r2);
2189
2242
  }
2190
2243
  close(r2) {
2191
2244
  return ke.call(this, r2);
2192
2245
  }
2193
2246
  }
2194
2247
  J = /* @__PURE__ */ new WeakMap();
2195
- exports2.Drawer = it$1;
2196
- exports2.Modal = U;
2197
- exports2.Popover = qr;
2248
+ exports2.Drawer = st$1;
2249
+ exports2.Modal = J$1;
2250
+ exports2.Popover = Xr;
2198
2251
  exports2.core = index;
2199
2252
  Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
2200
2253
  });