haori-bootstrap 0.5.59 → 0.5.60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,37 +1,37 @@
1
- function ce(e) {
1
+ function ue(e) {
2
2
  return typeof e == "function";
3
3
  }
4
- function de(e) {
5
- return ce(e?.Modal) ? e?.Modal : void 0;
4
+ function fe(e) {
5
+ return ue(e?.Modal) ? e?.Modal : void 0;
6
6
  }
7
- function ue(e) {
8
- return ce(e?.Toast) ? e?.Toast : void 0;
7
+ function me(e) {
8
+ return ue(e?.Toast) ? e?.Toast : void 0;
9
9
  }
10
- function I(e) {
11
- return !!de(e);
10
+ function N(e) {
11
+ return !!fe(e);
12
12
  }
13
- function Ue(e) {
14
- return !!ue(e);
13
+ function ze(e) {
14
+ return !!me(e);
15
15
  }
16
16
  function P(e, t, n) {
17
- const o = de(n);
17
+ const o = fe(n);
18
18
  if (o)
19
19
  return typeof o.getOrCreateInstance == "function" ? o.getOrCreateInstance(e, t) : new o(e, t);
20
20
  }
21
- function Fe(e, t, n) {
22
- const o = ue(n);
21
+ function Ge(e, t, n) {
22
+ const o = me(n);
23
23
  if (o)
24
24
  return typeof o.getOrCreateInstance == "function" ? o.getOrCreateInstance(e, t) : new o(e, t);
25
25
  }
26
- const We = "data-haori-dialog", ze = "data-haori-confirm", Ge = "data-haori-dialog-title", fe = "data-haori-dialog-ok", me = "data-haori-confirm-ok", be = "data-haori-confirm-cancel", Ke = "OK", Ve = "Cancel";
27
- let je = 0;
28
- function he() {
26
+ const Ke = "data-haori-dialog", Ve = "data-haori-confirm", je = "data-haori-dialog-title", be = "data-haori-dialog-ok", he = "data-haori-confirm-ok", Ee = "data-haori-confirm-cancel", Je = "OK", Xe = "Cancel";
27
+ let Qe = 0;
28
+ function pe() {
29
29
  return {
30
30
  backdrop: "static",
31
31
  keyboard: !1
32
32
  };
33
33
  }
34
- function Ee(e, t) {
34
+ function ve(e, t) {
35
35
  if (t.dialogContainerSelector) {
36
36
  const n = e.querySelector(
37
37
  t.dialogContainerSelector
@@ -41,31 +41,31 @@ function Ee(e, t) {
41
41
  }
42
42
  return e.body;
43
43
  }
44
- function ve(e, t, n, o) {
44
+ function ge(e, t, n, o) {
45
45
  const r = o.dialogTitle, s = e.createElement("div");
46
- s.className = "modal fade", s.tabIndex = -1, s.setAttribute(n ? ze : We, "true"), s.setAttribute("aria-hidden", "true");
47
- const c = e.createElement("div");
48
- c.className = "modal-dialog modal-dialog-centered";
46
+ s.className = "modal fade", s.tabIndex = -1, s.setAttribute(n ? Ve : Ke, "true"), s.setAttribute("aria-hidden", "true");
49
47
  const a = e.createElement("div");
50
- if (a.className = "modal-content", r) {
51
- const m = `haori-dialog-title-${++je}`, C = e.createElement("div");
52
- C.className = "modal-header";
53
- const E = e.createElement("h5");
54
- E.className = "modal-title", E.id = m, E.setAttribute(Ge, "true"), E.textContent = r, C.appendChild(E), a.appendChild(C), s.setAttribute("aria-labelledby", m);
48
+ a.className = "modal-dialog modal-dialog-centered";
49
+ const l = e.createElement("div");
50
+ if (l.className = "modal-content", r) {
51
+ const m = `haori-dialog-title-${++Qe}`, L = e.createElement("div");
52
+ L.className = "modal-header";
53
+ const p = e.createElement("h5");
54
+ p.className = "modal-title", p.id = m, p.setAttribute(je, "true"), p.textContent = r, L.appendChild(p), l.appendChild(L), s.setAttribute("aria-labelledby", m);
55
55
  }
56
56
  const u = e.createElement("div");
57
57
  u.className = "modal-body";
58
- const l = e.createElement("p");
59
- l.className = "mb-0", l.style.whiteSpace = "pre-line", l.textContent = t, u.appendChild(l);
58
+ const c = e.createElement("p");
59
+ c.className = "mb-0", c.style.whiteSpace = "pre-line", c.textContent = t, u.appendChild(c);
60
60
  const f = e.createElement("div");
61
61
  if (f.className = "modal-footer", n) {
62
62
  const m = e.createElement("button");
63
- m.type = "button", m.className = "btn btn-secondary", m.setAttribute(be, "true"), m.textContent = o.dialogCancelLabel ?? Ve, f.appendChild(m);
63
+ m.type = "button", m.className = "btn btn-secondary", m.setAttribute(Ee, "true"), m.textContent = o.dialogCancelLabel ?? Xe, f.appendChild(m);
64
64
  }
65
65
  const d = e.createElement("button");
66
- return d.type = "button", d.className = "btn btn-primary", d.setAttribute(n ? me : fe, "true"), d.textContent = o.dialogOkLabel ?? Ke, f.appendChild(d), a.append(u, f), c.appendChild(a), s.appendChild(c), s;
66
+ return d.type = "button", d.className = "btn btn-primary", d.setAttribute(n ? he : be, "true"), d.textContent = o.dialogOkLabel ?? Je, f.appendChild(d), l.append(u, f), a.appendChild(l), s.appendChild(a), s;
67
67
  }
68
- function pe(e) {
68
+ function Ae(e) {
69
69
  let t = !1, n = !1;
70
70
  return {
71
71
  requestClose: (o) => {
@@ -76,64 +76,64 @@ function pe(e) {
76
76
  }
77
77
  };
78
78
  }
79
- function Je(e, t) {
80
- const n = globalThis.document, o = ve(n, e, !1, t);
81
- Ee(n, t).appendChild(o);
79
+ function Ye(e, t) {
80
+ const n = globalThis.document, o = ge(n, e, !1, t);
81
+ ve(n, t).appendChild(o);
82
82
  const r = P(
83
83
  o,
84
- he(),
84
+ pe(),
85
85
  t.bootstrap
86
86
  );
87
- return r ? new Promise((s, c) => {
88
- const a = () => {
87
+ return r ? new Promise((s, a) => {
88
+ const l = () => {
89
89
  o.removeEventListener("shown.bs.modal", f), o.removeEventListener("hidden.bs.modal", u), o.remove(), r.dispose?.(), s();
90
90
  }, u = () => {
91
- a();
92
- }, l = pe(r), f = l.handleShown;
93
- o.querySelector(`[${fe}]`)?.addEventListener("click", () => {
94
- l.requestClose();
91
+ l();
92
+ }, c = Ae(r), f = c.handleShown;
93
+ o.querySelector(`[${be}]`)?.addEventListener("click", () => {
94
+ c.requestClose();
95
95
  }), o.addEventListener("shown.bs.modal", f), o.addEventListener("hidden.bs.modal", u, { once: !0 });
96
96
  try {
97
97
  r.show();
98
98
  } catch (m) {
99
- o.removeEventListener("shown.bs.modal", f), o.removeEventListener("hidden.bs.modal", u), o.remove(), r.dispose?.(), c(m);
99
+ o.removeEventListener("shown.bs.modal", f), o.removeEventListener("hidden.bs.modal", u), o.remove(), r.dispose?.(), a(m);
100
100
  }
101
101
  }) : (o.remove(), Promise.reject(new Error("Bootstrap Modal is unavailable.")));
102
102
  }
103
- function Xe(e, t) {
104
- const n = globalThis.document, o = ve(n, e, !0, t);
105
- Ee(n, t).appendChild(o);
103
+ function Ze(e, t) {
104
+ const n = globalThis.document, o = ge(n, e, !0, t);
105
+ ve(n, t).appendChild(o);
106
106
  const r = P(
107
107
  o,
108
- he(),
108
+ pe(),
109
109
  t.bootstrap
110
110
  );
111
- return r ? new Promise((s, c) => {
112
- let a = !1;
111
+ return r ? new Promise((s, a) => {
112
+ let l = !1;
113
113
  const u = () => {
114
- o.removeEventListener("shown.bs.modal", d), o.removeEventListener("hidden.bs.modal", l), o.remove(), r.dispose?.(), s(a);
115
- }, l = () => {
114
+ o.removeEventListener("shown.bs.modal", d), o.removeEventListener("hidden.bs.modal", c), o.remove(), r.dispose?.(), s(l);
115
+ }, c = () => {
116
116
  u();
117
- }, f = pe(r), d = f.handleShown, m = o.querySelector(`[${me}]`), C = o.querySelector(
118
- `[${be}]`
117
+ }, f = Ae(r), d = f.handleShown, m = o.querySelector(`[${he}]`), L = o.querySelector(
118
+ `[${Ee}]`
119
119
  );
120
120
  m?.addEventListener("click", () => {
121
121
  f.requestClose(() => {
122
- a = !0;
122
+ l = !0;
123
123
  });
124
- }), C?.addEventListener("click", () => {
124
+ }), L?.addEventListener("click", () => {
125
125
  f.requestClose(() => {
126
- a = !1;
126
+ l = !1;
127
127
  });
128
- }), o.addEventListener("shown.bs.modal", d), o.addEventListener("hidden.bs.modal", l, { once: !0 });
128
+ }), o.addEventListener("shown.bs.modal", d), o.addEventListener("hidden.bs.modal", c, { once: !0 });
129
129
  try {
130
130
  r.show();
131
- } catch (E) {
132
- o.removeEventListener("shown.bs.modal", d), o.removeEventListener("hidden.bs.modal", l), o.remove(), r.dispose?.(), c(E);
131
+ } catch (p) {
132
+ o.removeEventListener("shown.bs.modal", d), o.removeEventListener("hidden.bs.modal", c), o.remove(), r.dispose?.(), a(p);
133
133
  }
134
134
  }) : (o.remove(), Promise.reject(new Error("Bootstrap Modal is unavailable.")));
135
135
  }
136
- const A = "data-haori-owned", h = "data-haori-message-container", w = "data-haori-invalid-target", L = "data-haori-valid-target", Qe = /* @__PURE__ */ new Set([
136
+ const T = "data-haori-owned", h = "data-haori-message-container", C = "data-haori-invalid-target", S = "data-haori-valid-target", et = /* @__PURE__ */ new Set([
137
137
  "button",
138
138
  "a",
139
139
  "area",
@@ -146,41 +146,41 @@ const A = "data-haori-owned", h = "data-haori-message-container", w = "data-haor
146
146
  "track",
147
147
  "wbr"
148
148
  ]);
149
- function S(e) {
149
+ function y(e) {
150
150
  return e instanceof HTMLInputElement && (e.type === "checkbox" || e.type === "radio");
151
151
  }
152
- function g(e) {
152
+ function A(e) {
153
153
  return e instanceof HTMLInputElement && e.type === "radio";
154
154
  }
155
155
  function M(e) {
156
156
  return e instanceof HTMLInputElement || e instanceof HTMLSelectElement || e instanceof HTMLTextAreaElement;
157
157
  }
158
- function G(e) {
159
- return Qe.has(e.localName);
158
+ function K(e) {
159
+ return et.has(e.localName);
160
160
  }
161
- function ge(e) {
161
+ function Te(e) {
162
162
  const t = e.nextElementSibling;
163
163
  return t instanceof HTMLElement && t.getAttribute(h) === "true" ? t : void 0;
164
164
  }
165
- function x(e) {
165
+ function O(e) {
166
166
  return Array.from(e.children).find(
167
167
  (t) => t instanceof HTMLElement && t.getAttribute(h) === "true"
168
168
  );
169
169
  }
170
- function Ae(e, t) {
170
+ function we(e, t) {
171
171
  const n = e.createElement("div");
172
- return n.setAttribute(A, "true"), n.textContent = t, n;
172
+ return n.setAttribute(T, "true"), n.textContent = t, n;
173
173
  }
174
- function Te(e) {
175
- return G(e) ? ge(e) : x(e);
174
+ function Ce(e) {
175
+ return K(e) ? Te(e) : O(e);
176
176
  }
177
- function we(e, t) {
177
+ function Le(e, t) {
178
178
  e.insertAdjacentElement(
179
- G(e) ? "afterend" : "afterbegin",
179
+ K(e) ? "afterend" : "afterbegin",
180
180
  t
181
181
  );
182
182
  }
183
- function y(e) {
183
+ function I(e) {
184
184
  if (e.name) {
185
185
  const t = e.form ?? e.ownerDocument, n = typeof CSS < "u" && typeof CSS.escape == "function" ? CSS.escape(e.name) : e.name.replace(/(["\\])/g, "\\$1"), o = Array.from(
186
186
  t.querySelectorAll(`input[type="radio"][name="${n}"]`)
@@ -190,7 +190,7 @@ function y(e) {
190
190
  }
191
191
  return [e];
192
192
  }
193
- function Ye(e) {
193
+ function tt(e) {
194
194
  const [t, ...n] = e;
195
195
  if (!t)
196
196
  return;
@@ -201,50 +201,50 @@ function Ye(e) {
201
201
  o = o.parentElement;
202
202
  }
203
203
  }
204
- function K(e) {
205
- const n = y(e).map((o) => o.closest(".form-check")).filter((o) => o instanceof HTMLElement);
204
+ function V(e) {
205
+ const n = I(e).map((o) => o.closest(".form-check")).filter((o) => o instanceof HTMLElement);
206
206
  if (n.length > 1) {
207
- const o = Ye(n);
207
+ const o = tt(n);
208
208
  if (o && !n.includes(o))
209
209
  return o;
210
210
  }
211
- return O(e);
211
+ return q(e);
212
212
  }
213
- function O(e) {
213
+ function q(e) {
214
214
  const t = e.closest(".form-check");
215
215
  return t instanceof HTMLElement ? t : void 0;
216
216
  }
217
- function Ce(e) {
217
+ function Se(e) {
218
218
  const t = e.nextElementSibling;
219
219
  if (t instanceof HTMLElement && t.getAttribute(h) === "true")
220
220
  return t;
221
221
  const n = document.createElement("div");
222
- return n.className = "invalid-feedback d-block", n.setAttribute(A, "true"), n.setAttribute(h, "true"), e.insertAdjacentElement("afterend", n), n;
222
+ return n.className = "invalid-feedback d-block", n.setAttribute(T, "true"), n.setAttribute(h, "true"), e.insertAdjacentElement("afterend", n), n;
223
223
  }
224
- function Ze(e) {
225
- const t = g(e) ? K(e) : O(e);
224
+ function nt(e) {
225
+ const t = A(e) ? V(e) : q(e);
226
226
  if (!t)
227
- return Ce(e);
228
- const n = x(t);
227
+ return Se(e);
228
+ const n = O(t);
229
229
  if (n)
230
230
  return n;
231
231
  const o = document.createElement("div");
232
- return o.className = "invalid-feedback d-block", o.setAttribute(A, "true"), o.setAttribute(h, "true"), t.appendChild(o), o;
232
+ return o.className = "invalid-feedback d-block", o.setAttribute(T, "true"), o.setAttribute(h, "true"), t.appendChild(o), o;
233
233
  }
234
- function et(e) {
235
- const t = Te(e);
234
+ function ot(e) {
235
+ const t = Ce(e);
236
236
  if (t)
237
237
  return t;
238
238
  const n = document.createElement("div");
239
- return n.className = "alert alert-danger", n.setAttribute("role", "alert"), n.setAttribute(A, "true"), n.setAttribute(h, "true"), we(e, n), n;
239
+ return n.className = "alert alert-danger", n.setAttribute("role", "alert"), n.setAttribute(T, "true"), n.setAttribute(h, "true"), Le(e, n), n;
240
240
  }
241
241
  function v(e) {
242
- e.getAttribute(w) === "true" && (e.classList.remove("is-invalid"), e.removeAttribute(w));
242
+ e.getAttribute(C) === "true" && (e.classList.remove("is-invalid"), e.removeAttribute(C));
243
243
  }
244
- function p(e) {
245
- e.getAttribute(L) === "true" && (e.classList.remove("is-valid"), e.removeAttribute(L));
244
+ function g(e) {
245
+ e.getAttribute(S) === "true" && (e.classList.remove("is-valid"), e.removeAttribute(S));
246
246
  }
247
- function Y(e) {
247
+ function ee(e) {
248
248
  switch (e) {
249
249
  case "success":
250
250
  return "alert alert-success";
@@ -256,150 +256,180 @@ function Y(e) {
256
256
  return "alert alert-danger";
257
257
  }
258
258
  }
259
- function k(e) {
259
+ function H(e) {
260
260
  return e === "success" ? "valid-feedback d-block" : "invalid-feedback d-block";
261
261
  }
262
- function Le(e) {
263
- (g(e) ? y(e) : [e]).forEach((n) => {
264
- n.classList.add("is-invalid"), n.setAttribute(w, "true");
262
+ function ye(e) {
263
+ (A(e) ? I(e) : [e]).forEach((n) => {
264
+ n.classList.add("is-invalid"), n.setAttribute(C, "true");
265
265
  });
266
266
  }
267
- function tt(e) {
268
- (g(e) ? y(e) : [e]).forEach((n) => {
267
+ function rt(e) {
268
+ (A(e) ? I(e) : [e]).forEach((n) => {
269
269
  v(n);
270
270
  });
271
271
  }
272
- function Se(e, t) {
272
+ function Me(e, t) {
273
273
  const n = e.nextElementSibling;
274
274
  if (n instanceof HTMLElement && n.getAttribute(h) === "true")
275
- return n.className = k(t), n;
275
+ return n.className = H(t), n;
276
276
  const o = document.createElement("div");
277
- return o.className = k(t), o.setAttribute(A, "true"), o.setAttribute(h, "true"), e.insertAdjacentElement("afterend", o), o;
277
+ return o.className = H(t), o.setAttribute(T, "true"), o.setAttribute(h, "true"), e.insertAdjacentElement("afterend", o), o;
278
278
  }
279
- function nt(e, t) {
280
- const n = g(e) ? K(e) : O(e);
279
+ function st(e, t) {
280
+ const n = A(e) ? V(e) : q(e);
281
281
  if (!n)
282
- return Se(e, t);
283
- const o = x(n);
282
+ return Me(e, t);
283
+ const o = O(n);
284
284
  if (o)
285
- return o.className = k(t), o;
285
+ return o.className = H(t), o;
286
286
  const r = document.createElement("div");
287
- return r.className = k(t), r.setAttribute(A, "true"), r.setAttribute(h, "true"), n.appendChild(r), r;
287
+ return r.className = H(t), r.setAttribute(T, "true"), r.setAttribute(h, "true"), n.appendChild(r), r;
288
288
  }
289
- function ot(e, t) {
290
- const n = Te(e);
289
+ function it(e, t) {
290
+ const n = Ce(e);
291
291
  if (n)
292
- return n.className = Y(t), n;
292
+ return n.className = ee(t), n;
293
293
  const o = document.createElement("div");
294
- return o.className = Y(t), o.setAttribute("role", "alert"), o.setAttribute(A, "true"), o.setAttribute(h, "true"), we(e, o), o;
294
+ return o.className = ee(t), o.setAttribute("role", "alert"), o.setAttribute(T, "true"), o.setAttribute(h, "true"), Le(e, o), o;
295
295
  }
296
- function rt(e, t) {
297
- return (S(e) ? Ze(e) : M(e) ? Ce(e) : et(e)).appendChild(Ae(document, t)), S(e) ? Le(e) : M(e) && (e.classList.add("is-invalid"), e.setAttribute(w, "true")), Promise.resolve();
296
+ function at(e, t) {
297
+ return (y(e) ? nt(e) : M(e) ? Se(e) : ot(e)).appendChild(we(document, t)), y(e) ? ye(e) : M(e) && (e.classList.add("is-invalid"), e.setAttribute(C, "true")), Promise.resolve();
298
298
  }
299
- function st(e, t, n) {
300
- if ((S(e) ? nt(e, n) : M(e) ? Se(e, n) : ot(e, n)).appendChild(Ae(document, t)), S(e)) {
301
- const r = g(e) ? y(e) : [e];
299
+ function lt(e, t, n) {
300
+ if ((y(e) ? st(e, n) : M(e) ? Me(e, n) : it(e, n)).appendChild(we(document, t)), y(e)) {
301
+ const r = A(e) ? I(e) : [e];
302
302
  n === "success" ? r.forEach((s) => {
303
- v(s), s.classList.add("is-valid"), s.setAttribute(L, "true");
304
- }) : !n || n === "error" ? (r.forEach((s) => p(s)), Le(e)) : r.forEach((s) => {
305
- p(s), v(s);
303
+ v(s), s.classList.add("is-valid"), s.setAttribute(S, "true");
304
+ }) : !n || n === "error" ? (r.forEach((s) => g(s)), ye(e)) : r.forEach((s) => {
305
+ g(s), v(s);
306
306
  });
307
- } else M(e) && (n === "success" ? (v(e), e.classList.add("is-valid"), e.setAttribute(L, "true")) : !n || n === "error" ? (p(e), e.classList.add("is-invalid"), e.setAttribute(w, "true")) : (p(e), v(e)));
307
+ } else M(e) && (n === "success" ? (v(e), e.classList.add("is-valid"), e.setAttribute(S, "true")) : !n || n === "error" ? (g(e), e.classList.add("is-invalid"), e.setAttribute(C, "true")) : (g(e), v(e)));
308
308
  return Promise.resolve();
309
309
  }
310
- function Me(e) {
311
- if (S(e)) {
312
- const r = g(e) ? K(e) : O(e);
313
- (r ? x(r) : void 0)?.remove(), tt(e), (g(e) ? y(e) : [e]).forEach((a) => p(a));
310
+ function Ie(e) {
311
+ if (y(e)) {
312
+ const r = A(e) ? V(e) : q(e);
313
+ (r ? O(r) : void 0)?.remove(), rt(e), (A(e) ? I(e) : [e]).forEach((l) => g(l));
314
314
  } else if (M(e)) {
315
315
  const r = e.nextElementSibling;
316
- r instanceof HTMLElement && r.getAttribute(h) === "true" && r.remove(), v(e), p(e);
317
- } else G(e) && ge(e)?.remove();
316
+ r instanceof HTMLElement && r.getAttribute(h) === "true" && r.remove(), v(e), g(e);
317
+ } else K(e) && Te(e)?.remove();
318
318
  return e.querySelectorAll(
319
319
  `[${h}="true"]`
320
320
  ).forEach((r) => {
321
321
  r.remove();
322
322
  }), e.querySelectorAll(
323
- `[${w}="true"]`
323
+ `[${C}="true"]`
324
324
  ).forEach((r) => {
325
325
  v(r);
326
326
  }), e.querySelectorAll(
327
- `[${L}="true"]`
327
+ `[${S}="true"]`
328
328
  ).forEach((r) => {
329
- p(r);
329
+ g(r);
330
330
  }), Promise.resolve();
331
331
  }
332
- const V = /* @__PURE__ */ new WeakSet(), it = "data-haori-dismiss-lock", F = /* @__PURE__ */ new WeakSet();
333
- let H = null, j = /* @__PURE__ */ new WeakMap(), R = !1, W;
334
- function ye(e) {
332
+ const j = /* @__PURE__ */ new WeakSet(), ct = "data-haori-dismiss-lock", W = /* @__PURE__ */ new WeakSet();
333
+ let R = null, J = /* @__PURE__ */ new WeakMap(), E = null, X = !1;
334
+ const dt = [
335
+ "a",
336
+ "button",
337
+ "input",
338
+ "textarea",
339
+ "select",
340
+ "details",
341
+ "[tabindex]",
342
+ '[contenteditable="true"]'
343
+ ].map((e) => `${e}:not([tabindex^="-"])`).join(",");
344
+ let D = !1, z;
345
+ function Ne(e) {
335
346
  return Array.from(e.ownerDocument.querySelectorAll(".modal.show")).filter(
336
347
  (t) => t !== e
337
348
  );
338
349
  }
339
- const Ie = (e) => {
340
- e.target instanceof HTMLElement && (H = e.target);
341
- }, Ne = (e) => {
350
+ function ut(e) {
351
+ return Array.from(e.querySelectorAll(dt)).filter(
352
+ (t) => !t.hasAttribute("disabled") && !t.classList.contains("disabled") && (typeof t.checkVisibility != "function" || t.checkVisibility({ visibilityProperty: !0 }))
353
+ );
354
+ }
355
+ const ke = (e) => {
356
+ const t = e.target;
357
+ if (t instanceof HTMLElement && (R = t), !E || !(t instanceof Element) || E.contains(t))
358
+ return;
359
+ const n = ut(E);
360
+ n.length === 0 ? E.focus() : X ? n[n.length - 1].focus() : n[0].focus();
361
+ }, He = (e) => {
362
+ e instanceof KeyboardEvent && e.key === "Tab" && (X = e.shiftKey);
363
+ }, Re = (e) => {
342
364
  if (!(e.target instanceof HTMLElement))
343
365
  return;
344
366
  const t = e.target;
345
- V.add(t), H && j.set(t, H);
346
- }, ke = (e) => {
367
+ j.add(t), E = null, R && J.set(t, R);
368
+ }, De = (e) => {
347
369
  if (!(e.target instanceof HTMLElement))
348
370
  return;
349
371
  const t = e.target;
350
- V.delete(t), t.getAttribute("data-bs-focus") !== "false" && ye(t).length > 0 && !t.contains(t.ownerDocument.activeElement) && t.focus();
351
- }, He = (e) => {
372
+ j.delete(t), t.getAttribute("data-bs-focus") !== "false" && Ne(t).length > 0 && !t.contains(t.ownerDocument.activeElement) && t.focus();
373
+ }, _e = (e) => {
352
374
  if (!(e.target instanceof HTMLElement))
353
375
  return;
354
- const t = e.target, n = j.get(t), o = ye(t), r = t.ownerDocument.activeElement;
355
- o.length === 0 || o.some((s) => s.contains(r)) || n && o.some((s) => s.contains(n)) && (n.focus(), t.ownerDocument.activeElement === n) || o[o.length - 1].focus();
356
- }, Re = (e) => {
376
+ const t = e.target, n = J.get(t), o = Ne(t);
377
+ if (o.length === 0) {
378
+ E = null;
379
+ return;
380
+ }
381
+ t.ownerDocument.body.classList.add("modal-open");
382
+ const r = o[o.length - 1];
383
+ E = r.getAttribute("data-bs-focus") === "false" ? null : r;
384
+ const s = t.ownerDocument.activeElement;
385
+ o.some((a) => a.contains(s)) || n && o.some((a) => a.contains(n)) && (n.focus(), t.ownerDocument.activeElement === n) || r.focus();
386
+ }, Be = (e) => {
357
387
  const t = e.target;
358
- t instanceof HTMLElement && t.hasAttribute(it) && !F.has(t) && e.preventDefault();
388
+ t instanceof HTMLElement && t.hasAttribute(ct) && !W.has(t) && e.preventDefault();
359
389
  };
360
- function Z(e, t) {
361
- F.add(e);
390
+ function te(e, t) {
391
+ W.add(e);
362
392
  try {
363
393
  t.hide();
364
394
  } finally {
365
- F.delete(e);
395
+ W.delete(e);
366
396
  }
367
397
  }
368
- function at(e = document) {
369
- R || (R = !0, W = e, e.addEventListener("focusin", Ie), e.addEventListener("show.bs.modal", Ne), e.addEventListener("shown.bs.modal", ke), e.addEventListener("hide.bs.modal", Re), e.addEventListener("hidden.bs.modal", He));
398
+ function ft(e = document) {
399
+ D || (D = !0, z = e, e.addEventListener("focusin", ke), e.addEventListener("keydown", He), e.addEventListener("show.bs.modal", Re), e.addEventListener("shown.bs.modal", De), e.addEventListener("hide.bs.modal", Be), e.addEventListener("hidden.bs.modal", _e));
370
400
  }
371
- function lt(e = W ?? document) {
372
- R && (R = !1, e.removeEventListener("focusin", Ie), e.removeEventListener("show.bs.modal", Ne), e.removeEventListener("shown.bs.modal", ke), e.removeEventListener("hide.bs.modal", Re), e.removeEventListener("hidden.bs.modal", He), W = void 0, H = null, j = /* @__PURE__ */ new WeakMap());
401
+ function mt(e = z ?? document) {
402
+ D && (D = !1, e.removeEventListener("focusin", ke), e.removeEventListener("keydown", He), e.removeEventListener("show.bs.modal", Re), e.removeEventListener("shown.bs.modal", De), e.removeEventListener("hide.bs.modal", Be), e.removeEventListener("hidden.bs.modal", _e), z = void 0, R = null, J = /* @__PURE__ */ new WeakMap(), E = null, X = !1);
373
403
  }
374
- function De(e) {
404
+ function xe(e) {
375
405
  return e.classList.contains("modal") ? e : e.closest(".modal");
376
406
  }
377
- function _e(e) {
407
+ function Pe(e) {
378
408
  e.tabIndex < 0 && (e.tabIndex = -1), e.hasAttribute("aria-hidden") || e.setAttribute("aria-hidden", "true");
379
409
  }
380
- function ct(e, t) {
381
- const n = De(e);
410
+ function bt(e, t) {
411
+ const n = xe(e);
382
412
  if (!n)
383
413
  return Promise.reject(new Error('No ancestor ".modal" element was found for the target.'));
384
- _e(n), Me(n);
414
+ Pe(n), Ie(n);
385
415
  const o = P(n, void 0, t.bootstrap);
386
416
  return o ? (o.show(), Promise.resolve()) : Promise.reject(new Error("Bootstrap Modal is unavailable."));
387
417
  }
388
- function dt(e, t) {
389
- const n = De(e);
418
+ function ht(e, t) {
419
+ const n = xe(e);
390
420
  if (!n)
391
421
  return Promise.reject(new Error('No ancestor ".modal" element was found for the target.'));
392
- _e(n);
422
+ Pe(n);
393
423
  const o = P(n, void 0, t.bootstrap);
394
- return o ? V.has(n) ? (n.addEventListener(
424
+ return o ? j.has(n) ? (n.addEventListener(
395
425
  "shown.bs.modal",
396
426
  () => {
397
- Z(n, o);
427
+ te(n, o);
398
428
  },
399
429
  { once: !0 }
400
- ), Promise.resolve()) : (Z(n, o), Promise.resolve()) : Promise.reject(new Error("Bootstrap Modal is unavailable."));
430
+ ), Promise.resolve()) : (te(n, o), Promise.resolve()) : Promise.reject(new Error("Bootstrap Modal is unavailable."));
401
431
  }
402
- const ee = "data-haori-toast-container", ut = "data-haori-toast", ft = "data-haori-toast-level", mt = "data-haori-toast-accent", bt = "data-haori-toast-dismiss", te = {
432
+ const ne = "data-haori-toast-container", Et = "data-haori-toast", pt = "data-haori-toast-level", vt = "data-haori-toast-accent", gt = "data-haori-toast-dismiss", oe = {
403
433
  "top-start": "top-0 start-0",
404
434
  "top-center": "top-0 start-50 translate-middle-x",
405
435
  "top-end": "top-0 end-0",
@@ -407,7 +437,7 @@ const ee = "data-haori-toast-container", ut = "data-haori-toast", ft = "data-hao
407
437
  "bottom-center": "bottom-0 start-50 translate-middle-x",
408
438
  "bottom-end": "bottom-0 end-0"
409
439
  };
410
- function ht(e) {
440
+ function At(e) {
411
441
  switch (e) {
412
442
  case "success":
413
443
  return { accentClassName: "bg-success", level: "success" };
@@ -419,7 +449,7 @@ function ht(e) {
419
449
  return { accentClassName: "bg-info", level: "info" };
420
450
  }
421
451
  }
422
- function Et(e, t) {
452
+ function Tt(e, t) {
423
453
  if (t.toastContainerSelector) {
424
454
  const n = e.querySelector(
425
455
  t.toastContainerSelector
@@ -429,32 +459,32 @@ function Et(e, t) {
429
459
  }
430
460
  return e.body;
431
461
  }
432
- function vt(e, t) {
433
- const n = Et(e, t), o = te[t.toastPosition ?? "bottom-end"], r = n.querySelector(
434
- `[${ee}="true"]`
462
+ function wt(e, t) {
463
+ const n = Tt(e, t), o = oe[t.toastPosition ?? "bottom-end"], r = n.querySelector(
464
+ `[${ne}="true"]`
435
465
  );
436
466
  if (r) {
437
- const c = Object.values(te).flatMap((a) => a.split(" "));
438
- return r.classList.remove(...c), r.classList.add(...o.split(" ")), r;
467
+ const a = Object.values(oe).flatMap((l) => l.split(" "));
468
+ return r.classList.remove(...a), r.classList.add(...o.split(" ")), r;
439
469
  }
440
470
  const s = e.createElement("div");
441
- return s.className = `toast-container position-fixed ${o} p-3`, s.setAttribute(ee, "true"), n.appendChild(s), s;
471
+ return s.className = `toast-container position-fixed ${o} p-3`, s.setAttribute(ne, "true"), n.appendChild(s), s;
442
472
  }
443
- function pt(e, t, n) {
444
- const o = globalThis.document, r = ht(t), s = o.createElement("div");
445
- s.className = "toast border bg-body text-body shadow-sm", s.setAttribute("role", "status"), s.setAttribute("aria-live", "polite"), s.setAttribute("aria-atomic", "true"), s.setAttribute(ut, "true"), s.setAttribute(ft, r.level);
446
- const c = o.createElement("div");
447
- c.className = "d-flex align-items-stretch";
473
+ function Ct(e, t, n) {
474
+ const o = globalThis.document, r = At(t), s = o.createElement("div");
475
+ s.className = "toast border bg-body text-body shadow-sm", s.setAttribute("role", "status"), s.setAttribute("aria-live", "polite"), s.setAttribute("aria-atomic", "true"), s.setAttribute(Et, "true"), s.setAttribute(pt, r.level);
448
476
  const a = o.createElement("div");
449
- a.className = `flex-shrink-0 rounded-start ${r.accentClassName}`, a.style.width = "0.375rem", a.setAttribute(mt, "true");
477
+ a.className = "d-flex align-items-stretch";
478
+ const l = o.createElement("div");
479
+ l.className = `flex-shrink-0 rounded-start ${r.accentClassName}`, l.style.width = "0.375rem", l.setAttribute(vt, "true");
450
480
  const u = o.createElement("div");
451
481
  u.className = "toast-body", u.style.whiteSpace = "pre-line", u.textContent = e;
452
- const l = o.createElement("button");
453
- l.type = "button", l.className = "btn-close me-2 m-auto flex-shrink-0", l.setAttribute("aria-label", "Close"), l.setAttribute(bt, "true"), c.appendChild(a), c.appendChild(u), c.appendChild(l), s.appendChild(c), vt(o, n).appendChild(s);
454
- const f = n.toastDelay !== void 0 ? { delay: n.toastDelay } : void 0, d = Fe(s, f, n.bootstrap);
482
+ const c = o.createElement("button");
483
+ c.type = "button", c.className = "btn-close me-2 m-auto flex-shrink-0", c.setAttribute("aria-label", "Close"), c.setAttribute(gt, "true"), a.appendChild(l), a.appendChild(u), a.appendChild(c), s.appendChild(a), wt(o, n).appendChild(s);
484
+ const f = n.toastDelay !== void 0 ? { delay: n.toastDelay } : void 0, d = Ge(s, f, n.bootstrap);
455
485
  if (!d)
456
486
  return s.remove(), Promise.reject(new Error("Bootstrap Toast is unavailable."));
457
- l.addEventListener("click", () => {
487
+ c.addEventListener("click", () => {
458
488
  d.hide?.();
459
489
  }), s.addEventListener(
460
490
  "hidden.bs.toast",
@@ -469,58 +499,58 @@ function pt(e, t, n) {
469
499
  return s.remove(), d.dispose?.(), Promise.reject(m);
470
500
  }
471
501
  }
472
- const gt = {
502
+ const Lt = {
473
503
  options: {
474
504
  fallbackToNative: !0
475
505
  }
476
506
  };
477
- let b = gt;
478
- function T(e) {
507
+ let b = Lt;
508
+ function w(e) {
479
509
  return e ? String(e).replace(/\\n/g, `
480
510
  `) : "";
481
511
  }
482
- function Be() {
512
+ function Oe() {
483
513
  return globalThis.window;
484
514
  }
485
- function J(e) {
515
+ function Q(e) {
486
516
  return Promise.resolve(e).then(() => {
487
517
  });
488
518
  }
489
- function q(e) {
519
+ function $(e) {
490
520
  const t = b.originalHaori?.[e];
491
521
  return typeof t == "function" ? t : void 0;
492
522
  }
493
- function $(e) {
523
+ function F(e) {
494
524
  console.warn(`[haori-bootstrap] ${e} skipped because Bootstrap support is unavailable.`);
495
525
  }
496
- function ne(e) {
497
- const t = T(e), n = q("dialog");
526
+ function re(e) {
527
+ const t = w(e), n = $("dialog");
498
528
  if (n)
499
- return J(n(t));
500
- const o = Be();
501
- return b.options.fallbackToNative && typeof o?.alert == "function" ? (o.alert(t), Promise.resolve()) : ($("dialog"), Promise.resolve());
529
+ return Q(n(t));
530
+ const o = Oe();
531
+ return b.options.fallbackToNative && typeof o?.alert == "function" ? (o.alert(t), Promise.resolve()) : (F("dialog"), Promise.resolve());
502
532
  }
503
- function oe(e) {
504
- const t = T(e), n = q("confirm");
533
+ function se(e) {
534
+ const t = w(e), n = $("confirm");
505
535
  if (n)
506
536
  return Promise.resolve(n(t)).then(
507
537
  (r) => !!r
508
538
  );
509
- const o = Be();
510
- return b.options.fallbackToNative && typeof o?.confirm == "function" ? Promise.resolve(o.confirm(t)) : ($("confirm"), Promise.resolve(!1));
539
+ const o = Oe();
540
+ return b.options.fallbackToNative && typeof o?.confirm == "function" ? Promise.resolve(o.confirm(t)) : (F("confirm"), Promise.resolve(!1));
511
541
  }
512
- function re(e, t) {
513
- const n = T(e), o = q("toast");
514
- return o ? J(o(n, t)) : ($("toast"), Promise.resolve());
542
+ function ie(e, t) {
543
+ const n = w(e), o = $("toast");
544
+ return o ? Q(o(n, t)) : (F("toast"), Promise.resolve());
515
545
  }
516
- function N(e, t) {
517
- const n = q(e);
518
- return n ? J(n(t)) : ($(e), Promise.resolve());
546
+ function k(e, t) {
547
+ const n = $(e);
548
+ return n ? Q(n(t)) : (F(e), Promise.resolve());
519
549
  }
520
- function At(e) {
550
+ function St(e) {
521
551
  b = e;
522
552
  }
523
- class Tt {
553
+ class yt {
524
554
  /**
525
555
  * 情報表示ダイアログを表示する。
526
556
  *
@@ -528,10 +558,10 @@ class Tt {
528
558
  * @return 完了時に解決される Promise。
529
559
  */
530
560
  static dialog(t) {
531
- const n = T(t);
532
- return I(b.options.bootstrap) ? Je(n, b.options).catch(
533
- () => ne(n)
534
- ) : ne(n);
561
+ const n = w(t);
562
+ return N(b.options.bootstrap) ? Ye(n, b.options).catch(
563
+ () => re(n)
564
+ ) : re(n);
535
565
  }
536
566
  /**
537
567
  * 確認ダイアログを表示する。
@@ -540,10 +570,10 @@ class Tt {
540
570
  * @return OK のみ true を返す Promise。
541
571
  */
542
572
  static confirm(t) {
543
- const n = T(t);
544
- return I(b.options.bootstrap) ? Xe(n, b.options).catch(
545
- () => oe(n)
546
- ) : oe(n);
573
+ const n = w(t);
574
+ return N(b.options.bootstrap) ? Ze(n, b.options).catch(
575
+ () => se(n)
576
+ ) : se(n);
547
577
  }
548
578
  /**
549
579
  * トースト通知を表示する。
@@ -553,10 +583,10 @@ class Tt {
553
583
  * @return 完了時に解決される Promise。
554
584
  */
555
585
  static toast(t, n) {
556
- const o = T(t);
557
- return Ue(b.options.bootstrap) ? pt(o, n, b.options).catch(
558
- () => re(o, n)
559
- ) : re(o, n);
586
+ const o = w(t);
587
+ return ze(b.options.bootstrap) ? Ct(o, n, b.options).catch(
588
+ () => ie(o, n)
589
+ ) : ie(o, n);
560
590
  }
561
591
  /**
562
592
  * 任意のダイアログ要素を開く。
@@ -565,9 +595,9 @@ class Tt {
565
595
  * @return 完了時に解決される Promise。
566
596
  */
567
597
  static openDialog(t) {
568
- return I(b.options.bootstrap) ? ct(t, b.options).catch(
569
- () => N("openDialog", t)
570
- ) : N("openDialog", t);
598
+ return N(b.options.bootstrap) ? bt(t, b.options).catch(
599
+ () => k("openDialog", t)
600
+ ) : k("openDialog", t);
571
601
  }
572
602
  /**
573
603
  * 任意のダイアログ要素を閉じる。
@@ -576,9 +606,9 @@ class Tt {
576
606
  * @return 完了時に解決される Promise。
577
607
  */
578
608
  static closeDialog(t) {
579
- return I(b.options.bootstrap) ? dt(t, b.options).catch(
580
- () => N("closeDialog", t)
581
- ) : N("closeDialog", t);
609
+ return N(b.options.bootstrap) ? ht(t, b.options).catch(
610
+ () => k("closeDialog", t)
611
+ ) : k("closeDialog", t);
582
612
  }
583
613
  /**
584
614
  * 管理対象のエラーメッセージを追加する。
@@ -588,7 +618,7 @@ class Tt {
588
618
  * @return 完了時に解決される Promise。
589
619
  */
590
620
  static addErrorMessage(t, n) {
591
- return rt(t, n);
621
+ return at(t, n);
592
622
  }
593
623
  /**
594
624
  * 管理対象のメッセージをレベル付きで追加する。
@@ -599,7 +629,7 @@ class Tt {
599
629
  * @return 完了時に解決される Promise。
600
630
  */
601
631
  static addMessage(t, n, o) {
602
- return st(t, n, o);
632
+ return lt(t, n, o);
603
633
  }
604
634
  /**
605
635
  * 管理対象のメッセージを削除する。
@@ -608,29 +638,29 @@ class Tt {
608
638
  * @return 完了時に解決される Promise。
609
639
  */
610
640
  static clearMessages(t) {
611
- return Me(t);
641
+ return Ie(t);
612
642
  }
613
643
  }
614
- const wt = "haori-bootstrap:collapse:", D = "data-haori-persist";
615
- let _ = !1, B, z;
616
- function Pe(e) {
617
- return wt + e;
644
+ const Mt = "haori-bootstrap:collapse:", _ = "data-haori-persist";
645
+ let B = !1, x, G;
646
+ function qe(e) {
647
+ return Mt + e;
618
648
  }
619
- function Ct(e) {
649
+ function It(e) {
620
650
  try {
621
- const t = window.sessionStorage.getItem(Pe(e));
651
+ const t = window.sessionStorage.getItem(qe(e));
622
652
  return t === "shown" || t === "hidden" ? t : void 0;
623
653
  } catch {
624
654
  return;
625
655
  }
626
656
  }
627
- function Lt(e, t) {
657
+ function Nt(e, t) {
628
658
  try {
629
- window.sessionStorage.setItem(Pe(e), t);
659
+ window.sessionStorage.setItem(qe(e), t);
630
660
  } catch {
631
661
  }
632
662
  }
633
- function se(e, t) {
663
+ function ae(e, t) {
634
664
  const n = e.id, o = [`[data-bs-toggle="collapse"][data-bs-target="#${n}"]`];
635
665
  if (n && o.push(`[data-bs-toggle="collapse"][href="#${n}"]`), !n)
636
666
  return;
@@ -638,45 +668,45 @@ function se(e, t) {
638
668
  s.setAttribute("aria-expanded", t ? "true" : "false"), s.classList.toggle("collapsed", !t);
639
669
  });
640
670
  }
641
- function ie(e) {
642
- const t = e.getAttribute(D);
671
+ function le(e) {
672
+ const t = e.getAttribute(_);
643
673
  if (!t)
644
674
  return;
645
- const n = Ct(t);
675
+ const n = It(t);
646
676
  if (!n)
647
677
  return;
648
678
  const o = e.classList.contains("show");
649
- n === "shown" && !o ? (e.classList.add("show"), se(e, !0)) : n === "hidden" && o && (e.classList.remove("show"), se(e, !1));
679
+ n === "shown" && !o ? (e.classList.add("show"), ae(e, !0)) : n === "hidden" && o && (e.classList.remove("show"), ae(e, !1));
650
680
  }
651
- function ae(e) {
652
- e instanceof HTMLElement && e.hasAttribute(D) && ie(e), e.querySelectorAll(`[${D}]`).forEach(ie);
681
+ function ce(e) {
682
+ e instanceof HTMLElement && e.hasAttribute(_) && le(e), e.querySelectorAll(`[${_}]`).forEach(le);
653
683
  }
654
- function xe(e, t) {
684
+ function $e(e, t) {
655
685
  const n = e.target;
656
686
  if (!(n instanceof HTMLElement))
657
687
  return;
658
- const o = n.getAttribute(D);
659
- o && Lt(o, t);
688
+ const o = n.getAttribute(_);
689
+ o && Nt(o, t);
660
690
  }
661
- const Oe = (e) => xe(e, "shown"), qe = (e) => xe(e, "hidden");
662
- function St(e = document) {
663
- if (_)
691
+ const Fe = (e) => $e(e, "shown"), Ue = (e) => $e(e, "hidden");
692
+ function kt(e = document) {
693
+ if (B)
664
694
  return;
665
- _ = !0, z = e, e.addEventListener("shown.bs.collapse", Oe), e.addEventListener("hidden.bs.collapse", qe);
695
+ B = !0, G = e, e.addEventListener("shown.bs.collapse", Fe), e.addEventListener("hidden.bs.collapse", Ue);
666
696
  const t = () => {
667
- ae(e), B = new MutationObserver((n) => {
697
+ ce(e), x = new MutationObserver((n) => {
668
698
  for (const o of n)
669
699
  o.addedNodes.forEach((r) => {
670
- r instanceof HTMLElement && ae(r);
700
+ r instanceof HTMLElement && ce(r);
671
701
  });
672
- }), e.body && B.observe(e.body, { childList: !0, subtree: !0 });
702
+ }), e.body && x.observe(e.body, { childList: !0, subtree: !0 });
673
703
  };
674
704
  e.body ? t() : e.addEventListener("DOMContentLoaded", t, { once: !0 });
675
705
  }
676
- function Mt(e = z ?? document) {
677
- _ && (_ = !1, e.removeEventListener("shown.bs.collapse", Oe), e.removeEventListener("hidden.bs.collapse", qe), B?.disconnect(), B = void 0, z = void 0);
706
+ function Ht(e = G ?? document) {
707
+ B && (B = !1, e.removeEventListener("shown.bs.collapse", Fe), e.removeEventListener("hidden.bs.collapse", Ue), x?.disconnect(), x = void 0, G = void 0);
678
708
  }
679
- const yt = [
709
+ const Rt = [
680
710
  {
681
711
  attribute: "dialog-ok-label",
682
712
  apply: (e, t) => {
@@ -689,23 +719,23 @@ const yt = [
689
719
  e.dialogCancelLabel = t;
690
720
  }
691
721
  }
692
- ], It = typeof document < "u" && document.currentScript instanceof HTMLScriptElement ? document.currentScript : null;
722
+ ], Dt = typeof document < "u" && document.currentScript instanceof HTMLScriptElement ? document.currentScript : null;
693
723
  function U(e, t) {
694
724
  const n = e?.getAttribute(t) ?? null;
695
725
  if (!(n === null || n.trim() === ""))
696
726
  return n;
697
727
  }
698
- function Nt(e = typeof document > "u" ? null : document, t = It) {
728
+ function _t(e = typeof document > "u" ? null : document, t = Dt) {
699
729
  const n = {};
700
- for (const { attribute: o, apply: r } of yt) {
730
+ for (const { attribute: o, apply: r } of Rt) {
701
731
  const s = U(t, `data-${o}`) ?? U(e?.documentElement ?? null, `data-haori-${o}`) ?? U(e?.body ?? null, `data-haori-${o}`);
702
732
  s !== void 0 && r(n, s);
703
733
  }
704
734
  return n;
705
735
  }
706
- const X = {
736
+ const Y = {
707
737
  fallbackToNative: !0
708
- }, le = /* @__PURE__ */ new Set([
738
+ }, de = /* @__PURE__ */ new Set([
709
739
  "dialog",
710
740
  "confirm",
711
741
  "toast",
@@ -715,29 +745,29 @@ const X = {
715
745
  "addMessage",
716
746
  "clearMessages"
717
747
  ]);
718
- function kt(e) {
719
- const t = Tt;
748
+ function Bt(e) {
749
+ const t = yt;
720
750
  return new Proxy(e, {
721
751
  get(n, o, r) {
722
- return typeof o == "string" && le.has(o) ? t[o] : Reflect.get(n, o, r);
752
+ return typeof o == "string" && de.has(o) ? t[o] : Reflect.get(n, o, r);
723
753
  },
724
754
  has(n, o) {
725
- return typeof o == "string" && le.has(o) ? !0 : Reflect.has(n, o);
755
+ return typeof o == "string" && de.has(o) ? !0 : Reflect.has(n, o);
726
756
  }
727
757
  });
728
758
  }
729
759
  const i = {
730
760
  installed: !1,
731
- options: X
761
+ options: Y
732
762
  };
733
- function Q() {
763
+ function Z() {
734
764
  return globalThis.window;
735
765
  }
736
- function Ht(e, t) {
737
- const n = Nt();
766
+ function xt(e, t) {
767
+ const n = _t();
738
768
  return {
739
769
  bootstrap: e.bootstrap ?? t?.bootstrap,
740
- fallbackToNative: e.fallbackToNative ?? X.fallbackToNative,
770
+ fallbackToNative: e.fallbackToNative ?? Y.fallbackToNative,
741
771
  runtime: e.runtime ?? i.options.runtime ?? t?.Haori?.runtime,
742
772
  toastContainerSelector: e.toastContainerSelector ?? i.options.toastContainerSelector,
743
773
  dialogContainerSelector: e.dialogContainerSelector ?? i.options.dialogContainerSelector,
@@ -748,68 +778,68 @@ function Ht(e, t) {
748
778
  toastDelay: e.toastDelay ?? i.options.toastDelay
749
779
  };
750
780
  }
751
- function Rt(e = Q()) {
781
+ function Pt(e = Z()) {
752
782
  return !!(e?.Haori && e.bootstrap);
753
783
  }
754
- function Dt(e = {}) {
755
- const t = Q();
784
+ function Ot(e = {}) {
785
+ const t = Z();
756
786
  if (!t?.Haori)
757
787
  throw new Error("window.Haori is required before calling install().");
758
- if (i.originalHaori || (i.originalHaori = t.Haori, i.originalRuntime = t.Haori.runtime), i.options = Ht(e, t), i.options.runtime) {
788
+ if (i.originalHaori || (i.originalHaori = t.Haori, i.originalRuntime = t.Haori.runtime), i.options = xt(e, t), i.options.runtime) {
759
789
  const n = i.originalHaori ?? t.Haori;
760
790
  typeof n.setRuntime == "function" ? n.setRuntime(i.options.runtime) : console.warn(
761
791
  "[haori-bootstrap] Haori.setRuntime が利用できません。runtime 設定は無視されます。"
762
792
  );
763
793
  }
764
- At({
794
+ St({
765
795
  originalHaori: i.originalHaori,
766
796
  options: i.options
767
- }), t.Haori = kt(i.originalHaori), St(), at(), i.installed = !0;
797
+ }), t.Haori = Bt(i.originalHaori), kt(), ft(), i.installed = !0;
768
798
  }
769
- function Ot() {
770
- const e = Q();
799
+ function Wt() {
800
+ const e = Z();
771
801
  if (!e || !i.originalHaori)
772
802
  return;
773
803
  const t = i.originalHaori;
774
- typeof t.setRuntime == "function" ? t.setRuntime(i.originalRuntime) : t.runtime = i.originalRuntime, e.Haori = i.originalHaori, Mt(), lt(), i.installed = !1, i.originalHaori = void 0, i.originalRuntime = void 0, i.options = X;
804
+ typeof t.setRuntime == "function" ? t.setRuntime(i.originalRuntime) : t.runtime = i.originalRuntime, e.Haori = i.originalHaori, Ht(), mt(), i.installed = !1, i.originalHaori = void 0, i.originalRuntime = void 0, i.options = Y;
775
805
  }
776
- function qt() {
806
+ function zt() {
777
807
  return i.installed;
778
808
  }
779
- const $e = "__haoriJsBootstrapAutoEnabled__";
780
- function _t() {
809
+ const We = "__haoriJsBootstrapAutoEnabled__";
810
+ function qt() {
781
811
  return globalThis.window;
782
812
  }
783
- function Bt(e) {
784
- return !!e[$e];
813
+ function $t(e) {
814
+ return !!e[We];
785
815
  }
786
- function Pt(e) {
787
- e[$e] = !0;
816
+ function Ft(e) {
817
+ e[We] = !0;
788
818
  }
789
- function xt() {
790
- const e = _t();
791
- if (!(!e || Bt(e))) {
792
- if (!Rt(e)) {
819
+ function Ut() {
820
+ const e = qt();
821
+ if (!(!e || $t(e))) {
822
+ if (!Pt(e)) {
793
823
  console.warn(
794
824
  "[haori-bootstrap] Auto-enable skipped because window.Haori or window.bootstrap is missing."
795
825
  );
796
826
  return;
797
827
  }
798
828
  try {
799
- Dt({ bootstrap: e.bootstrap }), Pt(e);
829
+ Ot({ bootstrap: e.bootstrap }), Ft(e);
800
830
  } catch (t) {
801
831
  console.warn("[haori-bootstrap] Auto-enable failed.", t);
802
832
  }
803
833
  }
804
834
  }
805
- xt();
806
- const $t = "0.5.59";
835
+ Ut();
836
+ const Gt = "0.5.60";
807
837
  export {
808
- Tt as BootstrapHaori,
809
- Rt as hasAutoEnablePrerequisites,
810
- Dt as install,
811
- qt as isInstalled,
812
- Ot as uninstall,
813
- $t as version
838
+ yt as BootstrapHaori,
839
+ Pt as hasAutoEnablePrerequisites,
840
+ Ot as install,
841
+ zt as isInstalled,
842
+ Wt as uninstall,
843
+ Gt as version
814
844
  };
815
845
  //# sourceMappingURL=haori-bootstrap.js.map