v-sistec-features 1.6.1 → 1.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/DataPageVue/components/PaginationDatatable.vue.d.ts +17 -0
  2. package/dist/DataPageVue/components/VDataPage.vue.d.ts +45 -0
  3. package/dist/DataPageVue/index.d.ts +2 -0
  4. package/dist/DataPageVue/types/v-data-page.d.ts +50 -0
  5. package/dist/DatatableVue/components/PaginationDatatable.vue.d.ts +19 -0
  6. package/dist/DatatableVue/components/SearchDatatable.vue.d.ts +20 -0
  7. package/dist/DatatableVue/components/VColumn.vue.d.ts +53 -0
  8. package/dist/DatatableVue/components/VDataTable.vue.d.ts +36 -0
  9. package/dist/DatatableVue/composables/useImagePreview.d.ts +9 -0
  10. package/dist/DatatableVue/index.d.ts +3 -0
  11. package/dist/DatatableVue/keys.d.ts +31 -0
  12. package/dist/DatatableVue/types/v-data-table.d.ts +46 -0
  13. package/dist/core/index.d.ts +1 -0
  14. package/dist/core/plugin.d.ts +5 -0
  15. package/dist/core.js +2 -2083
  16. package/dist/iframeCommunicator/index.d.ts +2 -0
  17. package/dist/iframeCommunicator/useIframeCommunicator.d.ts +8 -0
  18. package/dist/iframeCommunicator/useThemeFromParent.d.ts +5 -0
  19. package/dist/index.d.ts +3 -0
  20. package/dist/index.js +1 -1
  21. package/dist/plugin-CS5DnmVr.js +2086 -0
  22. package/dist/v-sistec-features.css +1 -1
  23. package/dist/vDataPage.js +1 -1
  24. package/dist/vDataTable.js +103 -103
  25. package/package.json +5 -4
  26. package/src/DataPageVue/components/VDataPage.vue +3 -81
  27. package/src/DataPageVue/types/v-data-page.ts +82 -0
  28. package/src/DatatableVue/components/VColumn.vue +4 -1
  29. package/src/DatatableVue/components/VDataTable.vue +20 -82
  30. package/src/DatatableVue/types/v-data-table.ts +76 -0
  31. package/src/assets/v-required-style.css +76 -0
  32. package/src/core/plugin.ts +4 -2
@@ -0,0 +1,2086 @@
1
+ import Wr from "v-required";
2
+ function Rr(R, Ye) {
3
+ for (var $ = 0; $ < Ye.length; $++) {
4
+ const Z = Ye[$];
5
+ if (typeof Z != "string" && !Array.isArray(Z)) {
6
+ for (const he in Z)
7
+ if (he !== "default" && !(he in R)) {
8
+ const D = Object.getOwnPropertyDescriptor(Z, he);
9
+ D && Object.defineProperty(R, he, D.get ? D : {
10
+ enumerable: !0,
11
+ get: () => Z[he]
12
+ });
13
+ }
14
+ }
15
+ }
16
+ return Object.freeze(Object.defineProperty(R, Symbol.toStringTag, { value: "Module" }));
17
+ }
18
+ function Br(R) {
19
+ return R && R.__esModule && Object.prototype.hasOwnProperty.call(R, "default") ? R.default : R;
20
+ }
21
+ var ot = { exports: {} };
22
+ /*!
23
+ * Tabler v1.4.0 (https://tabler.io)
24
+ * Copyright 2018-2025 The Tabler Authors
25
+ * Copyright 2018-2025 codecalm.net Paweł Kuna
26
+ * Licensed under MIT (https://github.com/tabler/tabler/blob/master/LICENSE)
27
+ */
28
+ var Vr = ot.exports, hs;
29
+ function Ur() {
30
+ return hs || (hs = 1, (function(R, Ye) {
31
+ (function($, Z) {
32
+ Z(Ye);
33
+ })(Vr, function($) {
34
+ const Z = document.querySelectorAll('[data-bs-toggle="autosize"]');
35
+ Z.length && Z.forEach(function(i) {
36
+ window.autosize && window.autosize(i);
37
+ });
38
+ const he = document.querySelectorAll("[data-countup]");
39
+ he.length && he.forEach(function(i) {
40
+ let e = {};
41
+ try {
42
+ const n = i.getAttribute("data-countup") ? JSON.parse(i.getAttribute("data-countup")) : {};
43
+ e = Object.assign({ enableScrollSpy: !0 }, n);
44
+ } catch {
45
+ }
46
+ const t = parseInt(i.innerHTML, 10);
47
+ if (window.countUp && window.countUp.CountUp) {
48
+ const n = new window.countUp.CountUp(i, t, e);
49
+ n.error || n.start();
50
+ }
51
+ }), [].slice.call(document.querySelectorAll("[data-mask]")).map(function(i) {
52
+ window.IMask && new window.IMask(i, { mask: i.dataset.mask, lazy: i.dataset["mask-visible"] === "true" });
53
+ });
54
+ var D = "top", F = "bottom", H = "right", P = "left", rt = "auto", $e = [D, F, H, P], ye = "start", De = "end", gi = "clippingParents", xt = "viewport", Ie = "popper", _i = "reference", kt = $e.reduce(function(i, e) {
55
+ return i.concat([e + "-" + ye, e + "-" + De]);
56
+ }, []), St = [].concat($e, [rt]).reduce(function(i, e) {
57
+ return i.concat([e, e + "-" + ye, e + "-" + De]);
58
+ }, []), bi = "beforeRead", vi = "read", yi = "afterRead", wi = "beforeMain", Ai = "main", Ei = "afterMain", Ti = "beforeWrite", Ci = "write", Oi = "afterWrite", xi = [bi, vi, yi, wi, Ai, Ei, Ti, Ci, Oi];
59
+ function ee(i) {
60
+ return i ? (i.nodeName || "").toLowerCase() : null;
61
+ }
62
+ function q(i) {
63
+ if (i == null) return window;
64
+ if (i.toString() !== "[object Window]") {
65
+ var e = i.ownerDocument;
66
+ return e && e.defaultView || window;
67
+ }
68
+ return i;
69
+ }
70
+ function we(i) {
71
+ return i instanceof q(i).Element || i instanceof Element;
72
+ }
73
+ function B(i) {
74
+ return i instanceof q(i).HTMLElement || i instanceof HTMLElement;
75
+ }
76
+ function Lt(i) {
77
+ return typeof ShadowRoot < "u" && (i instanceof q(i).ShadowRoot || i instanceof ShadowRoot);
78
+ }
79
+ const $t = { name: "applyStyles", enabled: !0, phase: "write", fn: function(i) {
80
+ var e = i.state;
81
+ Object.keys(e.elements).forEach(function(t) {
82
+ var n = e.styles[t] || {}, s = e.attributes[t] || {}, o = e.elements[t];
83
+ B(o) && ee(o) && (Object.assign(o.style, n), Object.keys(s).forEach(function(r) {
84
+ var a = s[r];
85
+ a === !1 ? o.removeAttribute(r) : o.setAttribute(r, a === !0 ? "" : a);
86
+ }));
87
+ });
88
+ }, effect: function(i) {
89
+ var e = i.state, t = { popper: { position: e.options.strategy, left: "0", top: "0", margin: "0" }, arrow: { position: "absolute" }, reference: {} };
90
+ return Object.assign(e.elements.popper.style, t.popper), e.styles = t, e.elements.arrow && Object.assign(e.elements.arrow.style, t.arrow), function() {
91
+ Object.keys(e.elements).forEach(function(n) {
92
+ var s = e.elements[n], o = e.attributes[n] || {}, r = Object.keys(e.styles.hasOwnProperty(n) ? e.styles[n] : t[n]).reduce(function(a, c) {
93
+ return a[c] = "", a;
94
+ }, {});
95
+ B(s) && ee(s) && (Object.assign(s.style, r), Object.keys(o).forEach(function(a) {
96
+ s.removeAttribute(a);
97
+ }));
98
+ });
99
+ };
100
+ }, requires: ["computeStyles"] };
101
+ function te(i) {
102
+ return i.split("-")[0];
103
+ }
104
+ var Ae = Math.max, at = Math.min, Pe = Math.round;
105
+ function Dt() {
106
+ var i = navigator.userAgentData;
107
+ return i != null && i.brands && Array.isArray(i.brands) ? i.brands.map(function(e) {
108
+ return e.brand + "/" + e.version;
109
+ }).join(" ") : navigator.userAgent;
110
+ }
111
+ function ki() {
112
+ return !/^((?!chrome|android).)*safari/i.test(Dt());
113
+ }
114
+ function Ne(i, e, t) {
115
+ e === void 0 && (e = !1), t === void 0 && (t = !1);
116
+ var n = i.getBoundingClientRect(), s = 1, o = 1;
117
+ e && B(i) && (s = i.offsetWidth > 0 && Pe(n.width) / i.offsetWidth || 1, o = i.offsetHeight > 0 && Pe(n.height) / i.offsetHeight || 1);
118
+ var r = (we(i) ? q(i) : window).visualViewport, a = !ki() && t, c = (n.left + (a && r ? r.offsetLeft : 0)) / s, h = (n.top + (a && r ? r.offsetTop : 0)) / o, d = n.width / s, u = n.height / o;
119
+ return { width: d, height: u, top: h, right: c + d, bottom: h + u, left: c, x: c, y: h };
120
+ }
121
+ function It(i) {
122
+ var e = Ne(i), t = i.offsetWidth, n = i.offsetHeight;
123
+ return Math.abs(e.width - t) <= 1 && (t = e.width), Math.abs(e.height - n) <= 1 && (n = e.height), { x: i.offsetLeft, y: i.offsetTop, width: t, height: n };
124
+ }
125
+ function Si(i, e) {
126
+ var t = e.getRootNode && e.getRootNode();
127
+ if (i.contains(e)) return !0;
128
+ if (t && Lt(t)) {
129
+ var n = e;
130
+ do {
131
+ if (n && i.isSameNode(n)) return !0;
132
+ n = n.parentNode || n.host;
133
+ } while (n);
134
+ }
135
+ return !1;
136
+ }
137
+ function oe(i) {
138
+ return q(i).getComputedStyle(i);
139
+ }
140
+ function fs(i) {
141
+ return ["table", "td", "th"].indexOf(ee(i)) >= 0;
142
+ }
143
+ function de(i) {
144
+ return ((we(i) ? i.ownerDocument : i.document) || window.document).documentElement;
145
+ }
146
+ function lt(i) {
147
+ return ee(i) === "html" ? i : i.assignedSlot || i.parentNode || (Lt(i) ? i.host : null) || de(i);
148
+ }
149
+ function Li(i) {
150
+ return B(i) && oe(i).position !== "fixed" ? i.offsetParent : null;
151
+ }
152
+ function Je(i) {
153
+ for (var e = q(i), t = Li(i); t && fs(t) && oe(t).position === "static"; ) t = Li(t);
154
+ return t && (ee(t) === "html" || ee(t) === "body" && oe(t).position === "static") ? e : t || (function(n) {
155
+ var s = /firefox/i.test(Dt());
156
+ if (/Trident/i.test(Dt()) && B(n) && oe(n).position === "fixed") return null;
157
+ var o = lt(n);
158
+ for (Lt(o) && (o = o.host); B(o) && ["html", "body"].indexOf(ee(o)) < 0; ) {
159
+ var r = oe(o);
160
+ if (r.transform !== "none" || r.perspective !== "none" || r.contain === "paint" || ["transform", "perspective"].indexOf(r.willChange) !== -1 || s && r.willChange === "filter" || s && r.filter && r.filter !== "none") return o;
161
+ o = o.parentNode;
162
+ }
163
+ return null;
164
+ })(i) || e;
165
+ }
166
+ function Pt(i) {
167
+ return ["top", "bottom"].indexOf(i) >= 0 ? "x" : "y";
168
+ }
169
+ function Ge(i, e, t) {
170
+ return Ae(i, at(e, t));
171
+ }
172
+ function $i(i) {
173
+ return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, i);
174
+ }
175
+ function Di(i, e) {
176
+ return e.reduce(function(t, n) {
177
+ return t[n] = i, t;
178
+ }, {});
179
+ }
180
+ const Ii = { name: "arrow", enabled: !0, phase: "main", fn: function(i) {
181
+ var e, t = i.state, n = i.name, s = i.options, o = t.elements.arrow, r = t.modifiersData.popperOffsets, a = te(t.placement), c = Pt(a), h = [P, H].indexOf(a) >= 0 ? "height" : "width";
182
+ if (o && r) {
183
+ var d = (function(O, T) {
184
+ return $i(typeof (O = typeof O == "function" ? O(Object.assign({}, T.rects, { placement: T.placement })) : O) != "number" ? O : Di(O, $e));
185
+ })(s.padding, t), u = It(o), b = c === "y" ? D : P, p = c === "y" ? F : H, g = t.rects.reference[h] + t.rects.reference[c] - r[c] - t.rects.popper[h], m = r[c] - t.rects.reference[c], _ = Je(o), C = _ ? c === "y" ? _.clientHeight || 0 : _.clientWidth || 0 : 0, k = g / 2 - m / 2, y = d[b], A = C - u[h] - d[p], v = C / 2 - u[h] / 2 + k, w = Ge(y, v, A), E = c;
186
+ t.modifiersData[n] = ((e = {})[E] = w, e.centerOffset = w - v, e);
187
+ }
188
+ }, effect: function(i) {
189
+ var e = i.state, t = i.options.element, n = t === void 0 ? "[data-popper-arrow]" : t;
190
+ n != null && (typeof n != "string" || (n = e.elements.popper.querySelector(n))) && Si(e.elements.popper, n) && (e.elements.arrow = n);
191
+ }, requires: ["popperOffsets"], requiresIfExists: ["preventOverflow"] };
192
+ function je(i) {
193
+ return i.split("-")[1];
194
+ }
195
+ var ps = { top: "auto", right: "auto", bottom: "auto", left: "auto" };
196
+ function Pi(i) {
197
+ var e, t = i.popper, n = i.popperRect, s = i.placement, o = i.variation, r = i.offsets, a = i.position, c = i.gpuAcceleration, h = i.adaptive, d = i.roundOffsets, u = i.isFixed, b = r.x, p = b === void 0 ? 0 : b, g = r.y, m = g === void 0 ? 0 : g, _ = typeof d == "function" ? d({ x: p, y: m }) : { x: p, y: m };
198
+ p = _.x, m = _.y;
199
+ var C = r.hasOwnProperty("x"), k = r.hasOwnProperty("y"), y = P, A = D, v = window;
200
+ if (h) {
201
+ var w = Je(t), E = "clientHeight", O = "clientWidth";
202
+ w === q(t) && oe(w = de(t)).position !== "static" && a === "absolute" && (E = "scrollHeight", O = "scrollWidth"), (s === D || (s === P || s === H) && o === De) && (A = F, m -= (u && w === v && v.visualViewport ? v.visualViewport.height : w[E]) - n.height, m *= c ? 1 : -1), s !== P && (s !== D && s !== F || o !== De) || (y = H, p -= (u && w === v && v.visualViewport ? v.visualViewport.width : w[O]) - n.width, p *= c ? 1 : -1);
203
+ }
204
+ var T, L = Object.assign({ position: a }, h && ps), W = d === !0 ? (function(G, N) {
205
+ var Q = G.x, X = G.y, S = N.devicePixelRatio || 1;
206
+ return { x: Pe(Q * S) / S || 0, y: Pe(X * S) / S || 0 };
207
+ })({ x: p, y: m }, q(t)) : { x: p, y: m };
208
+ return p = W.x, m = W.y, c ? Object.assign({}, L, ((T = {})[A] = k ? "0" : "", T[y] = C ? "0" : "", T.transform = (v.devicePixelRatio || 1) <= 1 ? "translate(" + p + "px, " + m + "px)" : "translate3d(" + p + "px, " + m + "px, 0)", T)) : Object.assign({}, L, ((e = {})[A] = k ? m + "px" : "", e[y] = C ? p + "px" : "", e.transform = "", e));
209
+ }
210
+ const Nt = { name: "computeStyles", enabled: !0, phase: "beforeWrite", fn: function(i) {
211
+ var e = i.state, t = i.options, n = t.gpuAcceleration, s = n === void 0 || n, o = t.adaptive, r = o === void 0 || o, a = t.roundOffsets, c = a === void 0 || a, h = { placement: te(e.placement), variation: je(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: s, isFixed: e.options.strategy === "fixed" };
212
+ e.modifiersData.popperOffsets != null && (e.styles.popper = Object.assign({}, e.styles.popper, Pi(Object.assign({}, h, { offsets: e.modifiersData.popperOffsets, position: e.options.strategy, adaptive: r, roundOffsets: c })))), e.modifiersData.arrow != null && (e.styles.arrow = Object.assign({}, e.styles.arrow, Pi(Object.assign({}, h, { offsets: e.modifiersData.arrow, position: "absolute", adaptive: !1, roundOffsets: c })))), e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-placement": e.placement });
213
+ }, data: {} };
214
+ var ct = { passive: !0 };
215
+ const jt = { name: "eventListeners", enabled: !0, phase: "write", fn: function() {
216
+ }, effect: function(i) {
217
+ var e = i.state, t = i.instance, n = i.options, s = n.scroll, o = s === void 0 || s, r = n.resize, a = r === void 0 || r, c = q(e.elements.popper), h = [].concat(e.scrollParents.reference, e.scrollParents.popper);
218
+ return o && h.forEach(function(d) {
219
+ d.addEventListener("scroll", t.update, ct);
220
+ }), a && c.addEventListener("resize", t.update, ct), function() {
221
+ o && h.forEach(function(d) {
222
+ d.removeEventListener("scroll", t.update, ct);
223
+ }), a && c.removeEventListener("resize", t.update, ct);
224
+ };
225
+ }, data: {} };
226
+ var ms = { left: "right", right: "left", bottom: "top", top: "bottom" };
227
+ function ut(i) {
228
+ return i.replace(/left|right|bottom|top/g, function(e) {
229
+ return ms[e];
230
+ });
231
+ }
232
+ var gs = { start: "end", end: "start" };
233
+ function Ni(i) {
234
+ return i.replace(/start|end/g, function(e) {
235
+ return gs[e];
236
+ });
237
+ }
238
+ function Mt(i) {
239
+ var e = q(i);
240
+ return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset };
241
+ }
242
+ function Ft(i) {
243
+ return Ne(de(i)).left + Mt(i).scrollLeft;
244
+ }
245
+ function Ht(i) {
246
+ var e = oe(i), t = e.overflow, n = e.overflowX, s = e.overflowY;
247
+ return /auto|scroll|overlay|hidden/.test(t + s + n);
248
+ }
249
+ function ji(i) {
250
+ return ["html", "body", "#document"].indexOf(ee(i)) >= 0 ? i.ownerDocument.body : B(i) && Ht(i) ? i : ji(lt(i));
251
+ }
252
+ function Ze(i, e) {
253
+ var t;
254
+ e === void 0 && (e = []);
255
+ var n = ji(i), s = n === ((t = i.ownerDocument) == null ? void 0 : t.body), o = q(n), r = s ? [o].concat(o.visualViewport || [], Ht(n) ? n : []) : n, a = e.concat(r);
256
+ return s ? a : a.concat(Ze(lt(r)));
257
+ }
258
+ function qt(i) {
259
+ return Object.assign({}, i, { left: i.x, top: i.y, right: i.x + i.width, bottom: i.y + i.height });
260
+ }
261
+ function Mi(i, e, t) {
262
+ return e === xt ? qt((function(n, s) {
263
+ var o = q(n), r = de(n), a = o.visualViewport, c = r.clientWidth, h = r.clientHeight, d = 0, u = 0;
264
+ if (a) {
265
+ c = a.width, h = a.height;
266
+ var b = ki();
267
+ (b || !b && s === "fixed") && (d = a.offsetLeft, u = a.offsetTop);
268
+ }
269
+ return { width: c, height: h, x: d + Ft(n), y: u };
270
+ })(i, t)) : we(e) ? (function(n, s) {
271
+ var o = Ne(n, !1, s === "fixed");
272
+ return o.top = o.top + n.clientTop, o.left = o.left + n.clientLeft, o.bottom = o.top + n.clientHeight, o.right = o.left + n.clientWidth, o.width = n.clientWidth, o.height = n.clientHeight, o.x = o.left, o.y = o.top, o;
273
+ })(e, t) : qt((function(n) {
274
+ var s, o = de(n), r = Mt(n), a = (s = n.ownerDocument) == null ? void 0 : s.body, c = Ae(o.scrollWidth, o.clientWidth, a ? a.scrollWidth : 0, a ? a.clientWidth : 0), h = Ae(o.scrollHeight, o.clientHeight, a ? a.scrollHeight : 0, a ? a.clientHeight : 0), d = -r.scrollLeft + Ft(n), u = -r.scrollTop;
275
+ return oe(a || o).direction === "rtl" && (d += Ae(o.clientWidth, a ? a.clientWidth : 0) - c), { width: c, height: h, x: d, y: u };
276
+ })(de(i)));
277
+ }
278
+ function Fi(i) {
279
+ var e, t = i.reference, n = i.element, s = i.placement, o = s ? te(s) : null, r = s ? je(s) : null, a = t.x + t.width / 2 - n.width / 2, c = t.y + t.height / 2 - n.height / 2;
280
+ switch (o) {
281
+ case D:
282
+ e = { x: a, y: t.y - n.height };
283
+ break;
284
+ case F:
285
+ e = { x: a, y: t.y + t.height };
286
+ break;
287
+ case H:
288
+ e = { x: t.x + t.width, y: c };
289
+ break;
290
+ case P:
291
+ e = { x: t.x - n.width, y: c };
292
+ break;
293
+ default:
294
+ e = { x: t.x, y: t.y };
295
+ }
296
+ var h = o ? Pt(o) : null;
297
+ if (h != null) {
298
+ var d = h === "y" ? "height" : "width";
299
+ switch (r) {
300
+ case ye:
301
+ e[h] = e[h] - (t[d] / 2 - n[d] / 2);
302
+ break;
303
+ case De:
304
+ e[h] = e[h] + (t[d] / 2 - n[d] / 2);
305
+ }
306
+ }
307
+ return e;
308
+ }
309
+ function Me(i, e) {
310
+ e === void 0 && (e = {});
311
+ var t = e, n = t.placement, s = n === void 0 ? i.placement : n, o = t.strategy, r = o === void 0 ? i.strategy : o, a = t.boundary, c = a === void 0 ? gi : a, h = t.rootBoundary, d = h === void 0 ? xt : h, u = t.elementContext, b = u === void 0 ? Ie : u, p = t.altBoundary, g = p !== void 0 && p, m = t.padding, _ = m === void 0 ? 0 : m, C = $i(typeof _ != "number" ? _ : Di(_, $e)), k = b === Ie ? _i : Ie, y = i.rects.popper, A = i.elements[g ? k : b], v = (function(N, Q, X, S) {
312
+ var ne = Q === "clippingParents" ? (function(x) {
313
+ var j = Ze(lt(x)), Y = ["absolute", "fixed"].indexOf(oe(x).position) >= 0 && B(x) ? Je(x) : x;
314
+ return we(Y) ? j.filter(function(ve) {
315
+ return we(ve) && Si(ve, Y) && ee(ve) !== "body";
316
+ }) : [];
317
+ })(N) : [].concat(Q), se = [].concat(ne, [X]), Xe = se[0], I = se.reduce(function(x, j) {
318
+ var Y = Mi(N, j, S);
319
+ return x.top = Ae(Y.top, x.top), x.right = at(Y.right, x.right), x.bottom = at(Y.bottom, x.bottom), x.left = Ae(Y.left, x.left), x;
320
+ }, Mi(N, Xe, S));
321
+ return I.width = I.right - I.left, I.height = I.bottom - I.top, I.x = I.left, I.y = I.top, I;
322
+ })(we(A) ? A : A.contextElement || de(i.elements.popper), c, d, r), w = Ne(i.elements.reference), E = Fi({ reference: w, element: y, placement: s }), O = qt(Object.assign({}, y, E)), T = b === Ie ? O : w, L = { top: v.top - T.top + C.top, bottom: T.bottom - v.bottom + C.bottom, left: v.left - T.left + C.left, right: T.right - v.right + C.right }, W = i.modifiersData.offset;
323
+ if (b === Ie && W) {
324
+ var G = W[s];
325
+ Object.keys(L).forEach(function(N) {
326
+ var Q = [H, F].indexOf(N) >= 0 ? 1 : -1, X = [D, F].indexOf(N) >= 0 ? "y" : "x";
327
+ L[N] += G[X] * Q;
328
+ });
329
+ }
330
+ return L;
331
+ }
332
+ function _s(i, e) {
333
+ e === void 0 && (e = {});
334
+ var t = e, n = t.placement, s = t.boundary, o = t.rootBoundary, r = t.padding, a = t.flipVariations, c = t.allowedAutoPlacements, h = c === void 0 ? St : c, d = je(n), u = d ? a ? kt : kt.filter(function(g) {
335
+ return je(g) === d;
336
+ }) : $e, b = u.filter(function(g) {
337
+ return h.indexOf(g) >= 0;
338
+ });
339
+ b.length === 0 && (b = u);
340
+ var p = b.reduce(function(g, m) {
341
+ return g[m] = Me(i, { placement: m, boundary: s, rootBoundary: o, padding: r })[te(m)], g;
342
+ }, {});
343
+ return Object.keys(p).sort(function(g, m) {
344
+ return p[g] - p[m];
345
+ });
346
+ }
347
+ const Hi = { name: "flip", enabled: !0, phase: "main", fn: function(i) {
348
+ var e = i.state, t = i.options, n = i.name;
349
+ if (!e.modifiersData[n]._skip) {
350
+ for (var s = t.mainAxis, o = s === void 0 || s, r = t.altAxis, a = r === void 0 || r, c = t.fallbackPlacements, h = t.padding, d = t.boundary, u = t.rootBoundary, b = t.altBoundary, p = t.flipVariations, g = p === void 0 || p, m = t.allowedAutoPlacements, _ = e.options.placement, C = te(_), k = c || (C !== _ && g ? (function(x) {
351
+ if (te(x) === rt) return [];
352
+ var j = ut(x);
353
+ return [Ni(x), j, Ni(j)];
354
+ })(_) : [ut(_)]), y = [_].concat(k).reduce(function(x, j) {
355
+ return x.concat(te(j) === rt ? _s(e, { placement: j, boundary: d, rootBoundary: u, padding: h, flipVariations: g, allowedAutoPlacements: m }) : j);
356
+ }, []), A = e.rects.reference, v = e.rects.popper, w = /* @__PURE__ */ new Map(), E = !0, O = y[0], T = 0; T < y.length; T++) {
357
+ var L = y[T], W = te(L), G = je(L) === ye, N = [D, F].indexOf(W) >= 0, Q = N ? "width" : "height", X = Me(e, { placement: L, boundary: d, rootBoundary: u, altBoundary: b, padding: h }), S = N ? G ? H : P : G ? F : D;
358
+ A[Q] > v[Q] && (S = ut(S));
359
+ var ne = ut(S), se = [];
360
+ if (o && se.push(X[W] <= 0), a && se.push(X[S] <= 0, X[ne] <= 0), se.every(function(x) {
361
+ return x;
362
+ })) {
363
+ O = L, E = !1;
364
+ break;
365
+ }
366
+ w.set(L, se);
367
+ }
368
+ if (E) for (var Xe = function(x) {
369
+ var j = y.find(function(Y) {
370
+ var ve = w.get(Y);
371
+ if (ve) return ve.slice(0, x).every(function(Tt) {
372
+ return Tt;
373
+ });
374
+ });
375
+ if (j) return O = j, "break";
376
+ }, I = g ? 3 : 1; I > 0 && Xe(I) !== "break"; I--) ;
377
+ e.placement !== O && (e.modifiersData[n]._skip = !0, e.placement = O, e.reset = !0);
378
+ }
379
+ }, requiresIfExists: ["offset"], data: { _skip: !1 } };
380
+ function qi(i, e, t) {
381
+ return t === void 0 && (t = { x: 0, y: 0 }), { top: i.top - e.height - t.y, right: i.right - e.width + t.x, bottom: i.bottom - e.height + t.y, left: i.left - e.width - t.x };
382
+ }
383
+ function zi(i) {
384
+ return [D, H, F, P].some(function(e) {
385
+ return i[e] >= 0;
386
+ });
387
+ }
388
+ const Wi = { name: "hide", enabled: !0, phase: "main", requiresIfExists: ["preventOverflow"], fn: function(i) {
389
+ var e = i.state, t = i.name, n = e.rects.reference, s = e.rects.popper, o = e.modifiersData.preventOverflow, r = Me(e, { elementContext: "reference" }), a = Me(e, { altBoundary: !0 }), c = qi(r, n), h = qi(a, s, o), d = zi(c), u = zi(h);
390
+ e.modifiersData[t] = { referenceClippingOffsets: c, popperEscapeOffsets: h, isReferenceHidden: d, hasPopperEscaped: u }, e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-reference-hidden": d, "data-popper-escaped": u });
391
+ } }, Ri = { name: "offset", enabled: !0, phase: "main", requires: ["popperOffsets"], fn: function(i) {
392
+ var e = i.state, t = i.options, n = i.name, s = t.offset, o = s === void 0 ? [0, 0] : s, r = St.reduce(function(d, u) {
393
+ return d[u] = (function(b, p, g) {
394
+ var m = te(b), _ = [P, D].indexOf(m) >= 0 ? -1 : 1, C = typeof g == "function" ? g(Object.assign({}, p, { placement: b })) : g, k = C[0], y = C[1];
395
+ return k = k || 0, y = (y || 0) * _, [P, H].indexOf(m) >= 0 ? { x: y, y: k } : { x: k, y };
396
+ })(u, e.rects, o), d;
397
+ }, {}), a = r[e.placement], c = a.x, h = a.y;
398
+ e.modifiersData.popperOffsets != null && (e.modifiersData.popperOffsets.x += c, e.modifiersData.popperOffsets.y += h), e.modifiersData[n] = r;
399
+ } }, zt = { name: "popperOffsets", enabled: !0, phase: "read", fn: function(i) {
400
+ var e = i.state, t = i.name;
401
+ e.modifiersData[t] = Fi({ reference: e.rects.reference, element: e.rects.popper, placement: e.placement });
402
+ }, data: {} }, Bi = { name: "preventOverflow", enabled: !0, phase: "main", fn: function(i) {
403
+ var e = i.state, t = i.options, n = i.name, s = t.mainAxis, o = s === void 0 || s, r = t.altAxis, a = r !== void 0 && r, c = t.boundary, h = t.rootBoundary, d = t.altBoundary, u = t.padding, b = t.tether, p = b === void 0 || b, g = t.tetherOffset, m = g === void 0 ? 0 : g, _ = Me(e, { boundary: c, rootBoundary: h, padding: u, altBoundary: d }), C = te(e.placement), k = je(e.placement), y = !k, A = Pt(C), v = A === "x" ? "y" : "x", w = e.modifiersData.popperOffsets, E = e.rects.reference, O = e.rects.popper, T = typeof m == "function" ? m(Object.assign({}, e.rects, { placement: e.placement })) : m, L = typeof T == "number" ? { mainAxis: T, altAxis: T } : Object.assign({ mainAxis: 0, altAxis: 0 }, T), W = e.modifiersData.offset ? e.modifiersData.offset[e.placement] : null, G = { x: 0, y: 0 };
404
+ if (w) {
405
+ if (o) {
406
+ var N, Q = A === "y" ? D : P, X = A === "y" ? F : H, S = A === "y" ? "height" : "width", ne = w[A], se = ne + _[Q], Xe = ne - _[X], I = p ? -O[S] / 2 : 0, x = k === ye ? E[S] : O[S], j = k === ye ? -O[S] : -E[S], Y = e.elements.arrow, ve = p && Y ? It(Y) : { width: 0, height: 0 }, Tt = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : { top: 0, right: 0, bottom: 0, left: 0 }, Zn = Tt[Q], es = Tt[X], Ct = Ge(0, E[S], ve[S]), Pr = y ? E[S] / 2 - I - Ct - Zn - L.mainAxis : x - Ct - Zn - L.mainAxis, Nr = y ? -E[S] / 2 + I + Ct + es + L.mainAxis : j + Ct + es + L.mainAxis, fi = e.elements.arrow && Je(e.elements.arrow), jr = fi ? A === "y" ? fi.clientTop || 0 : fi.clientLeft || 0 : 0, ts = (N = W?.[A]) != null ? N : 0, Mr = ne + Nr - ts, is = Ge(p ? at(se, ne + Pr - ts - jr) : se, ne, p ? Ae(Xe, Mr) : Xe);
407
+ w[A] = is, G[A] = is - ne;
408
+ }
409
+ if (a) {
410
+ var ns, Fr = A === "x" ? D : P, Hr = A === "x" ? F : H, Le = w[v], Ot = v === "y" ? "height" : "width", ss = Le + _[Fr], os = Le - _[Hr], pi = [D, P].indexOf(C) !== -1, rs = (ns = W?.[v]) != null ? ns : 0, as = pi ? ss : Le - E[Ot] - O[Ot] - rs + L.altAxis, ls = pi ? Le + E[Ot] + O[Ot] - rs - L.altAxis : os, cs = p && pi ? (function(qr, zr, mi) {
411
+ var us = Ge(qr, zr, mi);
412
+ return us > mi ? mi : us;
413
+ })(as, Le, ls) : Ge(p ? as : ss, Le, p ? ls : os);
414
+ w[v] = cs, G[v] = cs - Le;
415
+ }
416
+ e.modifiersData[n] = G;
417
+ }
418
+ }, requiresIfExists: ["offset"] };
419
+ function bs(i, e, t) {
420
+ t === void 0 && (t = !1);
421
+ var n, s, o = B(e), r = B(e) && (function(u) {
422
+ var b = u.getBoundingClientRect(), p = Pe(b.width) / u.offsetWidth || 1, g = Pe(b.height) / u.offsetHeight || 1;
423
+ return p !== 1 || g !== 1;
424
+ })(e), a = de(e), c = Ne(i, r, t), h = { scrollLeft: 0, scrollTop: 0 }, d = { x: 0, y: 0 };
425
+ return (o || !o && !t) && ((ee(e) !== "body" || Ht(a)) && (h = (n = e) !== q(n) && B(n) ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop } : Mt(n)), B(e) ? ((d = Ne(e, !0)).x += e.clientLeft, d.y += e.clientTop) : a && (d.x = Ft(a))), { x: c.left + h.scrollLeft - d.x, y: c.top + h.scrollTop - d.y, width: c.width, height: c.height };
426
+ }
427
+ function vs(i) {
428
+ var e = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Set(), n = [];
429
+ function s(o) {
430
+ t.add(o.name), [].concat(o.requires || [], o.requiresIfExists || []).forEach(function(r) {
431
+ if (!t.has(r)) {
432
+ var a = e.get(r);
433
+ a && s(a);
434
+ }
435
+ }), n.push(o);
436
+ }
437
+ return i.forEach(function(o) {
438
+ e.set(o.name, o);
439
+ }), i.forEach(function(o) {
440
+ t.has(o.name) || s(o);
441
+ }), n;
442
+ }
443
+ var Vi = { placement: "bottom", modifiers: [], strategy: "absolute" };
444
+ function Ui() {
445
+ for (var i = arguments.length, e = new Array(i), t = 0; t < i; t++) e[t] = arguments[t];
446
+ return !e.some(function(n) {
447
+ return !(n && typeof n.getBoundingClientRect == "function");
448
+ });
449
+ }
450
+ function ht(i) {
451
+ i === void 0 && (i = {});
452
+ var e = i, t = e.defaultModifiers, n = t === void 0 ? [] : t, s = e.defaultOptions, o = s === void 0 ? Vi : s;
453
+ return function(r, a, c) {
454
+ c === void 0 && (c = o);
455
+ var h, d, u = { placement: "bottom", orderedModifiers: [], options: Object.assign({}, Vi, o), modifiersData: {}, elements: { reference: r, popper: a }, attributes: {}, styles: {} }, b = [], p = !1, g = { state: u, setOptions: function(_) {
456
+ var C = typeof _ == "function" ? _(u.options) : _;
457
+ m(), u.options = Object.assign({}, o, u.options, C), u.scrollParents = { reference: we(r) ? Ze(r) : r.contextElement ? Ze(r.contextElement) : [], popper: Ze(a) };
458
+ var k, y, A = (function(v) {
459
+ var w = vs(v);
460
+ return xi.reduce(function(E, O) {
461
+ return E.concat(w.filter(function(T) {
462
+ return T.phase === O;
463
+ }));
464
+ }, []);
465
+ })((k = [].concat(n, u.options.modifiers), y = k.reduce(function(v, w) {
466
+ var E = v[w.name];
467
+ return v[w.name] = E ? Object.assign({}, E, w, { options: Object.assign({}, E.options, w.options), data: Object.assign({}, E.data, w.data) }) : w, v;
468
+ }, {}), Object.keys(y).map(function(v) {
469
+ return y[v];
470
+ })));
471
+ return u.orderedModifiers = A.filter(function(v) {
472
+ return v.enabled;
473
+ }), u.orderedModifiers.forEach(function(v) {
474
+ var w = v.name, E = v.options, O = E === void 0 ? {} : E, T = v.effect;
475
+ if (typeof T == "function") {
476
+ var L = T({ state: u, name: w, instance: g, options: O });
477
+ b.push(L || function() {
478
+ });
479
+ }
480
+ }), g.update();
481
+ }, forceUpdate: function() {
482
+ if (!p) {
483
+ var _ = u.elements, C = _.reference, k = _.popper;
484
+ if (Ui(C, k)) {
485
+ u.rects = { reference: bs(C, Je(k), u.options.strategy === "fixed"), popper: It(k) }, u.reset = !1, u.placement = u.options.placement, u.orderedModifiers.forEach(function(T) {
486
+ return u.modifiersData[T.name] = Object.assign({}, T.data);
487
+ });
488
+ for (var y = 0; y < u.orderedModifiers.length; y++) if (u.reset !== !0) {
489
+ var A = u.orderedModifiers[y], v = A.fn, w = A.options, E = w === void 0 ? {} : w, O = A.name;
490
+ typeof v == "function" && (u = v({ state: u, options: E, name: O, instance: g }) || u);
491
+ } else u.reset = !1, y = -1;
492
+ }
493
+ }
494
+ }, update: (h = function() {
495
+ return new Promise(function(_) {
496
+ g.forceUpdate(), _(u);
497
+ });
498
+ }, function() {
499
+ return d || (d = new Promise(function(_) {
500
+ Promise.resolve().then(function() {
501
+ d = void 0, _(h());
502
+ });
503
+ })), d;
504
+ }), destroy: function() {
505
+ m(), p = !0;
506
+ } };
507
+ if (!Ui(r, a)) return g;
508
+ function m() {
509
+ b.forEach(function(_) {
510
+ return _();
511
+ }), b = [];
512
+ }
513
+ return g.setOptions(c).then(function(_) {
514
+ !p && c.onFirstUpdate && c.onFirstUpdate(_);
515
+ }), g;
516
+ };
517
+ }
518
+ var ys = ht(), ws = ht({ defaultModifiers: [jt, zt, Nt, $t] }), Wt = ht({ defaultModifiers: [jt, zt, Nt, $t, Ri, Hi, Bi, Ii, Wi] });
519
+ const Ki = Object.freeze(Object.defineProperty({ __proto__: null, afterMain: Ei, afterRead: yi, afterWrite: Oi, applyStyles: $t, arrow: Ii, auto: rt, basePlacements: $e, beforeMain: wi, beforeRead: bi, beforeWrite: Ti, bottom: F, clippingParents: gi, computeStyles: Nt, createPopper: Wt, createPopperBase: ys, createPopperLite: ws, detectOverflow: Me, end: De, eventListeners: jt, flip: Hi, hide: Wi, left: P, main: Ai, modifierPhases: xi, offset: Ri, placements: St, popper: Ie, popperGenerator: ht, popperOffsets: zt, preventOverflow: Bi, read: vi, reference: _i, right: H, start: ye, top: D, variationPlacements: kt, viewport: xt, write: Ci }, Symbol.toStringTag, { value: "Module" })), fe = /* @__PURE__ */ new Map(), Rt = { set(i, e, t) {
520
+ fe.has(i) || fe.set(i, /* @__PURE__ */ new Map());
521
+ const n = fe.get(i);
522
+ n.has(e) || n.size === 0 ? n.set(e, t) : console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`);
523
+ }, get: (i, e) => fe.has(i) && fe.get(i).get(e) || null, remove(i, e) {
524
+ if (!fe.has(i)) return;
525
+ const t = fe.get(i);
526
+ t.delete(e), t.size === 0 && fe.delete(i);
527
+ } }, Bt = "transitionend", Qi = (i) => (i && window.CSS && window.CSS.escape && (i = i.replace(/#([^\s"#']+)/g, (e, t) => `#${CSS.escape(t)}`)), i), As = (i) => i == null ? `${i}` : Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase(), Xi = (i) => {
528
+ i.dispatchEvent(new Event(Bt));
529
+ }, re = (i) => !(!i || typeof i != "object") && (i.jquery !== void 0 && (i = i[0]), i.nodeType !== void 0), pe = (i) => re(i) ? i.jquery ? i[0] : i : typeof i == "string" && i.length > 0 ? document.querySelector(Qi(i)) : null, Fe = (i) => {
530
+ if (!re(i) || i.getClientRects().length === 0) return !1;
531
+ const e = getComputedStyle(i).getPropertyValue("visibility") === "visible", t = i.closest("details:not([open])");
532
+ if (!t) return e;
533
+ if (t !== i) {
534
+ const n = i.closest("summary");
535
+ if (n && n.parentNode !== t || n === null) return !1;
536
+ }
537
+ return e;
538
+ }, me = (i) => !i || i.nodeType !== Node.ELEMENT_NODE || !!i.classList.contains("disabled") || (i.disabled !== void 0 ? i.disabled : i.hasAttribute("disabled") && i.getAttribute("disabled") !== "false"), Yi = (i) => {
539
+ if (!document.documentElement.attachShadow) return null;
540
+ if (typeof i.getRootNode == "function") {
541
+ const e = i.getRootNode();
542
+ return e instanceof ShadowRoot ? e : null;
543
+ }
544
+ return i instanceof ShadowRoot ? i : i.parentNode ? Yi(i.parentNode) : null;
545
+ }, dt = () => {
546
+ }, et = (i) => {
547
+ i.offsetHeight;
548
+ }, Ji = () => window.jQuery && !document.body.hasAttribute("data-bs-no-jquery") ? window.jQuery : null, Vt = [], V = () => document.documentElement.dir === "rtl", U = (i) => {
549
+ var e;
550
+ e = () => {
551
+ const t = Ji();
552
+ if (t) {
553
+ const n = i.NAME, s = t.fn[n];
554
+ t.fn[n] = i.jQueryInterface, t.fn[n].Constructor = i, t.fn[n].noConflict = () => (t.fn[n] = s, i.jQueryInterface);
555
+ }
556
+ }, document.readyState === "loading" ? (Vt.length || document.addEventListener("DOMContentLoaded", () => {
557
+ for (const t of Vt) t();
558
+ }), Vt.push(e)) : e();
559
+ }, M = (i, e = [], t = i) => typeof i == "function" ? i.call(...e) : t, Gi = (i, e, t = !0) => {
560
+ if (!t) return void M(i);
561
+ const n = ((r) => {
562
+ if (!r) return 0;
563
+ let { transitionDuration: a, transitionDelay: c } = window.getComputedStyle(r);
564
+ const h = Number.parseFloat(a), d = Number.parseFloat(c);
565
+ return h || d ? (a = a.split(",")[0], c = c.split(",")[0], 1e3 * (Number.parseFloat(a) + Number.parseFloat(c))) : 0;
566
+ })(e) + 5;
567
+ let s = !1;
568
+ const o = ({ target: r }) => {
569
+ r === e && (s = !0, e.removeEventListener(Bt, o), M(i));
570
+ };
571
+ e.addEventListener(Bt, o), setTimeout(() => {
572
+ s || Xi(e);
573
+ }, n);
574
+ }, Ut = (i, e, t, n) => {
575
+ const s = i.length;
576
+ let o = i.indexOf(e);
577
+ return o === -1 ? !t && n ? i[s - 1] : i[0] : (o += t ? 1 : -1, n && (o = (o + s) % s), i[Math.max(0, Math.min(o, s - 1))]);
578
+ }, Es = /[^.]*(?=\..*)\.|.*/, Ts = /\..*/, Cs = /::\d+$/, Kt = {};
579
+ /*!
580
+ * Bootstrap v5.3.7 (https://getbootstrap.com/)
581
+ * Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
582
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
583
+ */
584
+ let Zi = 1;
585
+ const en = { mouseenter: "mouseover", mouseleave: "mouseout" }, Os = /* @__PURE__ */ new Set(["click", "dblclick", "mouseup", "mousedown", "contextmenu", "mousewheel", "DOMMouseScroll", "mouseover", "mouseout", "mousemove", "selectstart", "selectend", "keydown", "keypress", "keyup", "orientationchange", "touchstart", "touchmove", "touchend", "touchcancel", "pointerdown", "pointermove", "pointerup", "pointerleave", "pointercancel", "gesturestart", "gesturechange", "gestureend", "focus", "blur", "change", "reset", "select", "submit", "focusin", "focusout", "load", "unload", "beforeunload", "resize", "move", "DOMContentLoaded", "readystatechange", "error", "abort", "scroll"]);
586
+ function tn(i, e) {
587
+ return e && `${e}::${Zi++}` || i.uidEvent || Zi++;
588
+ }
589
+ function nn(i) {
590
+ const e = tn(i);
591
+ return i.uidEvent = e, Kt[e] = Kt[e] || {}, Kt[e];
592
+ }
593
+ function sn(i, e, t = null) {
594
+ return Object.values(i).find((n) => n.callable === e && n.delegationSelector === t);
595
+ }
596
+ function on(i, e, t) {
597
+ const n = typeof e == "string", s = n ? t : e || t;
598
+ let o = an(i);
599
+ return Os.has(o) || (o = i), [n, s, o];
600
+ }
601
+ function rn(i, e, t, n, s) {
602
+ if (typeof e != "string" || !i) return;
603
+ let [o, r, a] = on(e, t, n);
604
+ e in en && (r = ((g) => function(m) {
605
+ if (!m.relatedTarget || m.relatedTarget !== m.delegateTarget && !m.delegateTarget.contains(m.relatedTarget)) return g.call(this, m);
606
+ })(r));
607
+ const c = nn(i), h = c[a] || (c[a] = {}), d = sn(h, r, o ? t : null);
608
+ if (d) return void (d.oneOff = d.oneOff && s);
609
+ const u = tn(r, e.replace(Es, "")), b = o ? /* @__PURE__ */ (function(p, g, m) {
610
+ return function _(C) {
611
+ const k = p.querySelectorAll(g);
612
+ for (let { target: y } = C; y && y !== this; y = y.parentNode) for (const A of k) if (A === y) return Xt(C, { delegateTarget: y }), _.oneOff && l.off(p, C.type, g, m), m.apply(y, [C]);
613
+ };
614
+ })(i, t, r) : /* @__PURE__ */ (function(p, g) {
615
+ return function m(_) {
616
+ return Xt(_, { delegateTarget: p }), m.oneOff && l.off(p, _.type, g), g.apply(p, [_]);
617
+ };
618
+ })(i, r);
619
+ b.delegationSelector = o ? t : null, b.callable = r, b.oneOff = s, b.uidEvent = u, h[u] = b, i.addEventListener(a, b, o);
620
+ }
621
+ function Qt(i, e, t, n, s) {
622
+ const o = sn(e[t], n, s);
623
+ o && (i.removeEventListener(t, o, !!s), delete e[t][o.uidEvent]);
624
+ }
625
+ function xs(i, e, t, n) {
626
+ const s = e[t] || {};
627
+ for (const [o, r] of Object.entries(s)) o.includes(n) && Qt(i, e, t, r.callable, r.delegationSelector);
628
+ }
629
+ function an(i) {
630
+ return i = i.replace(Ts, ""), en[i] || i;
631
+ }
632
+ const l = { on(i, e, t, n) {
633
+ rn(i, e, t, n, !1);
634
+ }, one(i, e, t, n) {
635
+ rn(i, e, t, n, !0);
636
+ }, off(i, e, t, n) {
637
+ if (typeof e != "string" || !i) return;
638
+ const [s, o, r] = on(e, t, n), a = r !== e, c = nn(i), h = c[r] || {}, d = e.startsWith(".");
639
+ if (o === void 0) {
640
+ if (d) for (const u of Object.keys(c)) xs(i, c, u, e.slice(1));
641
+ for (const [u, b] of Object.entries(h)) {
642
+ const p = u.replace(Cs, "");
643
+ a && !e.includes(p) || Qt(i, c, r, b.callable, b.delegationSelector);
644
+ }
645
+ } else {
646
+ if (!Object.keys(h).length) return;
647
+ Qt(i, c, r, o, s ? t : null);
648
+ }
649
+ }, trigger(i, e, t) {
650
+ if (typeof e != "string" || !i) return null;
651
+ const n = Ji();
652
+ let s = null, o = !0, r = !0, a = !1;
653
+ e !== an(e) && n && (s = n.Event(e, t), n(i).trigger(s), o = !s.isPropagationStopped(), r = !s.isImmediatePropagationStopped(), a = s.isDefaultPrevented());
654
+ const c = Xt(new Event(e, { bubbles: o, cancelable: !0 }), t);
655
+ return a && c.preventDefault(), r && i.dispatchEvent(c), c.defaultPrevented && s && s.preventDefault(), c;
656
+ } };
657
+ function Xt(i, e = {}) {
658
+ for (const [t, n] of Object.entries(e)) try {
659
+ i[t] = n;
660
+ } catch {
661
+ Object.defineProperty(i, t, { configurable: !0, get: () => n });
662
+ }
663
+ return i;
664
+ }
665
+ function ln(i) {
666
+ if (i === "true") return !0;
667
+ if (i === "false") return !1;
668
+ if (i === Number(i).toString()) return Number(i);
669
+ if (i === "" || i === "null") return null;
670
+ if (typeof i != "string") return i;
671
+ try {
672
+ return JSON.parse(decodeURIComponent(i));
673
+ } catch {
674
+ return i;
675
+ }
676
+ }
677
+ function Yt(i) {
678
+ return i.replace(/[A-Z]/g, (e) => `-${e.toLowerCase()}`);
679
+ }
680
+ const ae = { setDataAttribute(i, e, t) {
681
+ i.setAttribute(`data-bs-${Yt(e)}`, t);
682
+ }, removeDataAttribute(i, e) {
683
+ i.removeAttribute(`data-bs-${Yt(e)}`);
684
+ }, getDataAttributes(i) {
685
+ if (!i) return {};
686
+ const e = {}, t = Object.keys(i.dataset).filter((n) => n.startsWith("bs") && !n.startsWith("bsConfig"));
687
+ for (const n of t) {
688
+ let s = n.replace(/^bs/, "");
689
+ s = s.charAt(0).toLowerCase() + s.slice(1), e[s] = ln(i.dataset[n]);
690
+ }
691
+ return e;
692
+ }, getDataAttribute: (i, e) => ln(i.getAttribute(`data-bs-${Yt(e)}`)) };
693
+ class tt {
694
+ static get Default() {
695
+ return {};
696
+ }
697
+ static get DefaultType() {
698
+ return {};
699
+ }
700
+ static get NAME() {
701
+ throw new Error('You have to implement the static method "NAME", for each component!');
702
+ }
703
+ _getConfig(e) {
704
+ return e = this._mergeConfigObj(e), e = this._configAfterMerge(e), this._typeCheckConfig(e), e;
705
+ }
706
+ _configAfterMerge(e) {
707
+ return e;
708
+ }
709
+ _mergeConfigObj(e, t) {
710
+ const n = re(t) ? ae.getDataAttribute(t, "config") : {};
711
+ return { ...this.constructor.Default, ...typeof n == "object" ? n : {}, ...re(t) ? ae.getDataAttributes(t) : {}, ...typeof e == "object" ? e : {} };
712
+ }
713
+ _typeCheckConfig(e, t = this.constructor.DefaultType) {
714
+ for (const [n, s] of Object.entries(t)) {
715
+ const o = e[n], r = re(o) ? "element" : As(o);
716
+ if (!new RegExp(s).test(r)) throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`);
717
+ }
718
+ }
719
+ }
720
+ class J extends tt {
721
+ constructor(e, t) {
722
+ super(), (e = pe(e)) && (this._element = e, this._config = this._getConfig(t), Rt.set(this._element, this.constructor.DATA_KEY, this));
723
+ }
724
+ dispose() {
725
+ Rt.remove(this._element, this.constructor.DATA_KEY), l.off(this._element, this.constructor.EVENT_KEY);
726
+ for (const e of Object.getOwnPropertyNames(this)) this[e] = null;
727
+ }
728
+ _queueCallback(e, t, n = !0) {
729
+ Gi(e, t, n);
730
+ }
731
+ _getConfig(e) {
732
+ return e = this._mergeConfigObj(e, this._element), e = this._configAfterMerge(e), this._typeCheckConfig(e), e;
733
+ }
734
+ static getInstance(e) {
735
+ return Rt.get(pe(e), this.DATA_KEY);
736
+ }
737
+ static getOrCreateInstance(e, t = {}) {
738
+ return this.getInstance(e) || new this(e, typeof t == "object" ? t : null);
739
+ }
740
+ static get VERSION() {
741
+ return "5.3.7";
742
+ }
743
+ static get DATA_KEY() {
744
+ return `bs.${this.NAME}`;
745
+ }
746
+ static get EVENT_KEY() {
747
+ return `.${this.DATA_KEY}`;
748
+ }
749
+ static eventName(e) {
750
+ return `${e}${this.EVENT_KEY}`;
751
+ }
752
+ }
753
+ const Jt = (i) => {
754
+ let e = i.getAttribute("data-bs-target");
755
+ if (!e || e === "#") {
756
+ let t = i.getAttribute("href");
757
+ if (!t || !t.includes("#") && !t.startsWith(".")) return null;
758
+ t.includes("#") && !t.startsWith("#") && (t = `#${t.split("#")[1]}`), e = t && t !== "#" ? t.trim() : null;
759
+ }
760
+ return e ? e.split(",").map((t) => Qi(t)).join(",") : null;
761
+ }, f = { find: (i, e = document.documentElement) => [].concat(...Element.prototype.querySelectorAll.call(e, i)), findOne: (i, e = document.documentElement) => Element.prototype.querySelector.call(e, i), children: (i, e) => [].concat(...i.children).filter((t) => t.matches(e)), parents(i, e) {
762
+ const t = [];
763
+ let n = i.parentNode.closest(e);
764
+ for (; n; ) t.push(n), n = n.parentNode.closest(e);
765
+ return t;
766
+ }, prev(i, e) {
767
+ let t = i.previousElementSibling;
768
+ for (; t; ) {
769
+ if (t.matches(e)) return [t];
770
+ t = t.previousElementSibling;
771
+ }
772
+ return [];
773
+ }, next(i, e) {
774
+ let t = i.nextElementSibling;
775
+ for (; t; ) {
776
+ if (t.matches(e)) return [t];
777
+ t = t.nextElementSibling;
778
+ }
779
+ return [];
780
+ }, focusableChildren(i) {
781
+ const e = ["a", "button", "input", "textarea", "select", "details", "[tabindex]", '[contenteditable="true"]'].map((t) => `${t}:not([tabindex^="-"])`).join(",");
782
+ return this.find(e, i).filter((t) => !me(t) && Fe(t));
783
+ }, getSelectorFromElement(i) {
784
+ const e = Jt(i);
785
+ return e && f.findOne(e) ? e : null;
786
+ }, getElementFromSelector(i) {
787
+ const e = Jt(i);
788
+ return e ? f.findOne(e) : null;
789
+ }, getMultipleElementsFromSelector(i) {
790
+ const e = Jt(i);
791
+ return e ? f.find(e) : [];
792
+ } }, ft = (i, e = "hide") => {
793
+ const t = `click.dismiss${i.EVENT_KEY}`, n = i.NAME;
794
+ l.on(document, t, `[data-bs-dismiss="${n}"]`, function(s) {
795
+ if (["A", "AREA"].includes(this.tagName) && s.preventDefault(), me(this)) return;
796
+ const o = f.getElementFromSelector(this) || this.closest(`.${n}`);
797
+ i.getOrCreateInstance(o)[e]();
798
+ });
799
+ }, cn = ".bs.alert", ks = `close${cn}`, Ss = `closed${cn}`;
800
+ class He extends J {
801
+ static get NAME() {
802
+ return "alert";
803
+ }
804
+ close() {
805
+ if (l.trigger(this._element, ks).defaultPrevented) return;
806
+ this._element.classList.remove("show");
807
+ const e = this._element.classList.contains("fade");
808
+ this._queueCallback(() => this._destroyElement(), this._element, e);
809
+ }
810
+ _destroyElement() {
811
+ this._element.remove(), l.trigger(this._element, Ss), this.dispose();
812
+ }
813
+ static jQueryInterface(e) {
814
+ return this.each(function() {
815
+ const t = He.getOrCreateInstance(this);
816
+ if (typeof e == "string") {
817
+ if (t[e] === void 0 || e.startsWith("_") || e === "constructor") throw new TypeError(`No method named "${e}"`);
818
+ t[e](this);
819
+ }
820
+ });
821
+ }
822
+ }
823
+ ft(He, "close"), U(He);
824
+ const un = '[data-bs-toggle="button"]';
825
+ class qe extends J {
826
+ static get NAME() {
827
+ return "button";
828
+ }
829
+ toggle() {
830
+ this._element.setAttribute("aria-pressed", this._element.classList.toggle("active"));
831
+ }
832
+ static jQueryInterface(e) {
833
+ return this.each(function() {
834
+ const t = qe.getOrCreateInstance(this);
835
+ e === "toggle" && t[e]();
836
+ });
837
+ }
838
+ }
839
+ l.on(document, "click.bs.button.data-api", un, (i) => {
840
+ i.preventDefault();
841
+ const e = i.target.closest(un);
842
+ qe.getOrCreateInstance(e).toggle();
843
+ }), U(qe);
844
+ const ze = ".bs.swipe", Ls = `touchstart${ze}`, $s = `touchmove${ze}`, Ds = `touchend${ze}`, Is = `pointerdown${ze}`, Ps = `pointerup${ze}`, Ns = { endCallback: null, leftCallback: null, rightCallback: null }, js = { endCallback: "(function|null)", leftCallback: "(function|null)", rightCallback: "(function|null)" };
845
+ class pt extends tt {
846
+ constructor(e, t) {
847
+ super(), this._element = e, e && pt.isSupported() && (this._config = this._getConfig(t), this._deltaX = 0, this._supportPointerEvents = !!window.PointerEvent, this._initEvents());
848
+ }
849
+ static get Default() {
850
+ return Ns;
851
+ }
852
+ static get DefaultType() {
853
+ return js;
854
+ }
855
+ static get NAME() {
856
+ return "swipe";
857
+ }
858
+ dispose() {
859
+ l.off(this._element, ze);
860
+ }
861
+ _start(e) {
862
+ this._supportPointerEvents ? this._eventIsPointerPenTouch(e) && (this._deltaX = e.clientX) : this._deltaX = e.touches[0].clientX;
863
+ }
864
+ _end(e) {
865
+ this._eventIsPointerPenTouch(e) && (this._deltaX = e.clientX - this._deltaX), this._handleSwipe(), M(this._config.endCallback);
866
+ }
867
+ _move(e) {
868
+ this._deltaX = e.touches && e.touches.length > 1 ? 0 : e.touches[0].clientX - this._deltaX;
869
+ }
870
+ _handleSwipe() {
871
+ const e = Math.abs(this._deltaX);
872
+ if (e <= 40) return;
873
+ const t = e / this._deltaX;
874
+ this._deltaX = 0, t && M(t > 0 ? this._config.rightCallback : this._config.leftCallback);
875
+ }
876
+ _initEvents() {
877
+ this._supportPointerEvents ? (l.on(this._element, Is, (e) => this._start(e)), l.on(this._element, Ps, (e) => this._end(e)), this._element.classList.add("pointer-event")) : (l.on(this._element, Ls, (e) => this._start(e)), l.on(this._element, $s, (e) => this._move(e)), l.on(this._element, Ds, (e) => this._end(e)));
878
+ }
879
+ _eventIsPointerPenTouch(e) {
880
+ return this._supportPointerEvents && (e.pointerType === "pen" || e.pointerType === "touch");
881
+ }
882
+ static isSupported() {
883
+ return "ontouchstart" in document.documentElement || navigator.maxTouchPoints > 0;
884
+ }
885
+ }
886
+ const ge = ".bs.carousel", hn = ".data-api", Ms = "ArrowLeft", Fs = "ArrowRight", it = "next", We = "prev", Re = "left", mt = "right", Hs = `slide${ge}`, Gt = `slid${ge}`, qs = `keydown${ge}`, zs = `mouseenter${ge}`, Ws = `mouseleave${ge}`, Rs = `dragstart${ge}`, Bs = `load${ge}${hn}`, Vs = `click${ge}${hn}`, dn = "carousel", gt = "active", fn = ".active", pn = ".carousel-item", Us = fn + pn, Ks = { [Ms]: mt, [Fs]: Re }, Qs = { interval: 5e3, keyboard: !0, pause: "hover", ride: !1, touch: !0, wrap: !0 }, Xs = { interval: "(number|boolean)", keyboard: "boolean", pause: "(string|boolean)", ride: "(boolean|string)", touch: "boolean", wrap: "boolean" };
887
+ class Ee extends J {
888
+ constructor(e, t) {
889
+ super(e, t), this._interval = null, this._activeElement = null, this._isSliding = !1, this.touchTimeout = null, this._swipeHelper = null, this._indicatorsElement = f.findOne(".carousel-indicators", this._element), this._addEventListeners(), this._config.ride === dn && this.cycle();
890
+ }
891
+ static get Default() {
892
+ return Qs;
893
+ }
894
+ static get DefaultType() {
895
+ return Xs;
896
+ }
897
+ static get NAME() {
898
+ return "carousel";
899
+ }
900
+ next() {
901
+ this._slide(it);
902
+ }
903
+ nextWhenVisible() {
904
+ !document.hidden && Fe(this._element) && this.next();
905
+ }
906
+ prev() {
907
+ this._slide(We);
908
+ }
909
+ pause() {
910
+ this._isSliding && Xi(this._element), this._clearInterval();
911
+ }
912
+ cycle() {
913
+ this._clearInterval(), this._updateInterval(), this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);
914
+ }
915
+ _maybeEnableCycle() {
916
+ this._config.ride && (this._isSliding ? l.one(this._element, Gt, () => this.cycle()) : this.cycle());
917
+ }
918
+ to(e) {
919
+ const t = this._getItems();
920
+ if (e > t.length - 1 || e < 0) return;
921
+ if (this._isSliding) return void l.one(this._element, Gt, () => this.to(e));
922
+ const n = this._getItemIndex(this._getActive());
923
+ if (n === e) return;
924
+ const s = e > n ? it : We;
925
+ this._slide(s, t[e]);
926
+ }
927
+ dispose() {
928
+ this._swipeHelper && this._swipeHelper.dispose(), super.dispose();
929
+ }
930
+ _configAfterMerge(e) {
931
+ return e.defaultInterval = e.interval, e;
932
+ }
933
+ _addEventListeners() {
934
+ this._config.keyboard && l.on(this._element, qs, (e) => this._keydown(e)), this._config.pause === "hover" && (l.on(this._element, zs, () => this.pause()), l.on(this._element, Ws, () => this._maybeEnableCycle())), this._config.touch && pt.isSupported() && this._addTouchEventListeners();
935
+ }
936
+ _addTouchEventListeners() {
937
+ for (const t of f.find(".carousel-item img", this._element)) l.on(t, Rs, (n) => n.preventDefault());
938
+ const e = { leftCallback: () => this._slide(this._directionToOrder(Re)), rightCallback: () => this._slide(this._directionToOrder(mt)), endCallback: () => {
939
+ this._config.pause === "hover" && (this.pause(), this.touchTimeout && clearTimeout(this.touchTimeout), this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), 500 + this._config.interval));
940
+ } };
941
+ this._swipeHelper = new pt(this._element, e);
942
+ }
943
+ _keydown(e) {
944
+ if (/input|textarea/i.test(e.target.tagName)) return;
945
+ const t = Ks[e.key];
946
+ t && (e.preventDefault(), this._slide(this._directionToOrder(t)));
947
+ }
948
+ _getItemIndex(e) {
949
+ return this._getItems().indexOf(e);
950
+ }
951
+ _setActiveIndicatorElement(e) {
952
+ if (!this._indicatorsElement) return;
953
+ const t = f.findOne(fn, this._indicatorsElement);
954
+ t.classList.remove(gt), t.removeAttribute("aria-current");
955
+ const n = f.findOne(`[data-bs-slide-to="${e}"]`, this._indicatorsElement);
956
+ n && (n.classList.add(gt), n.setAttribute("aria-current", "true"));
957
+ }
958
+ _updateInterval() {
959
+ const e = this._activeElement || this._getActive();
960
+ if (!e) return;
961
+ const t = Number.parseInt(e.getAttribute("data-bs-interval"), 10);
962
+ this._config.interval = t || this._config.defaultInterval;
963
+ }
964
+ _slide(e, t = null) {
965
+ if (this._isSliding) return;
966
+ const n = this._getActive(), s = e === it, o = t || Ut(this._getItems(), n, s, this._config.wrap);
967
+ if (o === n) return;
968
+ const r = this._getItemIndex(o), a = (u) => l.trigger(this._element, u, { relatedTarget: o, direction: this._orderToDirection(e), from: this._getItemIndex(n), to: r });
969
+ if (a(Hs).defaultPrevented || !n || !o) return;
970
+ const c = !!this._interval;
971
+ this.pause(), this._isSliding = !0, this._setActiveIndicatorElement(r), this._activeElement = o;
972
+ const h = s ? "carousel-item-start" : "carousel-item-end", d = s ? "carousel-item-next" : "carousel-item-prev";
973
+ o.classList.add(d), et(o), n.classList.add(h), o.classList.add(h), this._queueCallback(() => {
974
+ o.classList.remove(h, d), o.classList.add(gt), n.classList.remove(gt, d, h), this._isSliding = !1, a(Gt);
975
+ }, n, this._isAnimated()), c && this.cycle();
976
+ }
977
+ _isAnimated() {
978
+ return this._element.classList.contains("slide");
979
+ }
980
+ _getActive() {
981
+ return f.findOne(Us, this._element);
982
+ }
983
+ _getItems() {
984
+ return f.find(pn, this._element);
985
+ }
986
+ _clearInterval() {
987
+ this._interval && (clearInterval(this._interval), this._interval = null);
988
+ }
989
+ _directionToOrder(e) {
990
+ return V() ? e === Re ? We : it : e === Re ? it : We;
991
+ }
992
+ _orderToDirection(e) {
993
+ return V() ? e === We ? Re : mt : e === We ? mt : Re;
994
+ }
995
+ static jQueryInterface(e) {
996
+ return this.each(function() {
997
+ const t = Ee.getOrCreateInstance(this, e);
998
+ if (typeof e != "number") {
999
+ if (typeof e == "string") {
1000
+ if (t[e] === void 0 || e.startsWith("_") || e === "constructor") throw new TypeError(`No method named "${e}"`);
1001
+ t[e]();
1002
+ }
1003
+ } else t.to(e);
1004
+ });
1005
+ }
1006
+ }
1007
+ l.on(document, Vs, "[data-bs-slide], [data-bs-slide-to]", function(i) {
1008
+ const e = f.getElementFromSelector(this);
1009
+ if (!e || !e.classList.contains(dn)) return;
1010
+ i.preventDefault();
1011
+ const t = Ee.getOrCreateInstance(e), n = this.getAttribute("data-bs-slide-to");
1012
+ return n ? (t.to(n), void t._maybeEnableCycle()) : ae.getDataAttribute(this, "slide") === "next" ? (t.next(), void t._maybeEnableCycle()) : (t.prev(), void t._maybeEnableCycle());
1013
+ }), l.on(window, Bs, () => {
1014
+ const i = f.find('[data-bs-ride="carousel"]');
1015
+ for (const e of i) Ee.getOrCreateInstance(e);
1016
+ }), U(Ee);
1017
+ const nt = ".bs.collapse", Ys = `show${nt}`, Js = `shown${nt}`, Gs = `hide${nt}`, Zs = `hidden${nt}`, eo = `click${nt}.data-api`, Zt = "show", Be = "collapse", _t = "collapsing", to = `:scope .${Be} .${Be}`, ei = '[data-bs-toggle="collapse"]', io = { parent: null, toggle: !0 }, no = { parent: "(null|element)", toggle: "boolean" };
1018
+ class Te extends J {
1019
+ constructor(e, t) {
1020
+ super(e, t), this._isTransitioning = !1, this._triggerArray = [];
1021
+ const n = f.find(ei);
1022
+ for (const s of n) {
1023
+ const o = f.getSelectorFromElement(s), r = f.find(o).filter((a) => a === this._element);
1024
+ o !== null && r.length && this._triggerArray.push(s);
1025
+ }
1026
+ this._initializeChildren(), this._config.parent || this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()), this._config.toggle && this.toggle();
1027
+ }
1028
+ static get Default() {
1029
+ return io;
1030
+ }
1031
+ static get DefaultType() {
1032
+ return no;
1033
+ }
1034
+ static get NAME() {
1035
+ return "collapse";
1036
+ }
1037
+ toggle() {
1038
+ this._isShown() ? this.hide() : this.show();
1039
+ }
1040
+ show() {
1041
+ if (this._isTransitioning || this._isShown()) return;
1042
+ let e = [];
1043
+ if (this._config.parent && (e = this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((s) => s !== this._element).map((s) => Te.getOrCreateInstance(s, { toggle: !1 }))), e.length && e[0]._isTransitioning || l.trigger(this._element, Ys).defaultPrevented) return;
1044
+ for (const s of e) s.hide();
1045
+ const t = this._getDimension();
1046
+ this._element.classList.remove(Be), this._element.classList.add(_t), this._element.style[t] = 0, this._addAriaAndCollapsedClass(this._triggerArray, !0), this._isTransitioning = !0;
1047
+ const n = `scroll${t[0].toUpperCase() + t.slice(1)}`;
1048
+ this._queueCallback(() => {
1049
+ this._isTransitioning = !1, this._element.classList.remove(_t), this._element.classList.add(Be, Zt), this._element.style[t] = "", l.trigger(this._element, Js);
1050
+ }, this._element, !0), this._element.style[t] = `${this._element[n]}px`;
1051
+ }
1052
+ hide() {
1053
+ if (this._isTransitioning || !this._isShown() || l.trigger(this._element, Gs).defaultPrevented) return;
1054
+ const e = this._getDimension();
1055
+ this._element.style[e] = `${this._element.getBoundingClientRect()[e]}px`, et(this._element), this._element.classList.add(_t), this._element.classList.remove(Be, Zt);
1056
+ for (const t of this._triggerArray) {
1057
+ const n = f.getElementFromSelector(t);
1058
+ n && !this._isShown(n) && this._addAriaAndCollapsedClass([t], !1);
1059
+ }
1060
+ this._isTransitioning = !0, this._element.style[e] = "", this._queueCallback(() => {
1061
+ this._isTransitioning = !1, this._element.classList.remove(_t), this._element.classList.add(Be), l.trigger(this._element, Zs);
1062
+ }, this._element, !0);
1063
+ }
1064
+ _isShown(e = this._element) {
1065
+ return e.classList.contains(Zt);
1066
+ }
1067
+ _configAfterMerge(e) {
1068
+ return e.toggle = !!e.toggle, e.parent = pe(e.parent), e;
1069
+ }
1070
+ _getDimension() {
1071
+ return this._element.classList.contains("collapse-horizontal") ? "width" : "height";
1072
+ }
1073
+ _initializeChildren() {
1074
+ if (!this._config.parent) return;
1075
+ const e = this._getFirstLevelChildren(ei);
1076
+ for (const t of e) {
1077
+ const n = f.getElementFromSelector(t);
1078
+ n && this._addAriaAndCollapsedClass([t], this._isShown(n));
1079
+ }
1080
+ }
1081
+ _getFirstLevelChildren(e) {
1082
+ const t = f.find(to, this._config.parent);
1083
+ return f.find(e, this._config.parent).filter((n) => !t.includes(n));
1084
+ }
1085
+ _addAriaAndCollapsedClass(e, t) {
1086
+ if (e.length) for (const n of e) n.classList.toggle("collapsed", !t), n.setAttribute("aria-expanded", t);
1087
+ }
1088
+ static jQueryInterface(e) {
1089
+ const t = {};
1090
+ return typeof e == "string" && /show|hide/.test(e) && (t.toggle = !1), this.each(function() {
1091
+ const n = Te.getOrCreateInstance(this, t);
1092
+ if (typeof e == "string") {
1093
+ if (n[e] === void 0) throw new TypeError(`No method named "${e}"`);
1094
+ n[e]();
1095
+ }
1096
+ });
1097
+ }
1098
+ }
1099
+ l.on(document, eo, ei, function(i) {
1100
+ (i.target.tagName === "A" || i.delegateTarget && i.delegateTarget.tagName === "A") && i.preventDefault();
1101
+ for (const e of f.getMultipleElementsFromSelector(this)) Te.getOrCreateInstance(e, { toggle: !1 }).toggle();
1102
+ }), U(Te);
1103
+ const mn = "dropdown", Ce = ".bs.dropdown", ti = ".data-api", so = "ArrowUp", gn = "ArrowDown", oo = `hide${Ce}`, ro = `hidden${Ce}`, ao = `show${Ce}`, lo = `shown${Ce}`, _n = `click${Ce}${ti}`, bn = `keydown${Ce}${ti}`, co = `keyup${Ce}${ti}`, Ve = "show", Oe = '[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)', uo = `${Oe}.${Ve}`, bt = ".dropdown-menu", ho = V() ? "top-end" : "top-start", fo = V() ? "top-start" : "top-end", po = V() ? "bottom-end" : "bottom-start", mo = V() ? "bottom-start" : "bottom-end", go = V() ? "left-start" : "right-start", _o = V() ? "right-start" : "left-start", bo = { autoClose: !0, boundary: "clippingParents", display: "dynamic", offset: [0, 2], popperConfig: null, reference: "toggle" }, vo = { autoClose: "(boolean|string)", boundary: "(string|element)", display: "string", offset: "(array|string|function)", popperConfig: "(null|object|function)", reference: "(string|element|object)" };
1104
+ class z extends J {
1105
+ constructor(e, t) {
1106
+ super(e, t), this._popper = null, this._parent = this._element.parentNode, this._menu = f.next(this._element, bt)[0] || f.prev(this._element, bt)[0] || f.findOne(bt, this._parent), this._inNavbar = this._detectNavbar();
1107
+ }
1108
+ static get Default() {
1109
+ return bo;
1110
+ }
1111
+ static get DefaultType() {
1112
+ return vo;
1113
+ }
1114
+ static get NAME() {
1115
+ return mn;
1116
+ }
1117
+ toggle() {
1118
+ return this._isShown() ? this.hide() : this.show();
1119
+ }
1120
+ show() {
1121
+ if (me(this._element) || this._isShown()) return;
1122
+ const e = { relatedTarget: this._element };
1123
+ if (!l.trigger(this._element, ao, e).defaultPrevented) {
1124
+ if (this._createPopper(), "ontouchstart" in document.documentElement && !this._parent.closest(".navbar-nav")) for (const t of [].concat(...document.body.children)) l.on(t, "mouseover", dt);
1125
+ this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.add(Ve), this._element.classList.add(Ve), l.trigger(this._element, lo, e);
1126
+ }
1127
+ }
1128
+ hide() {
1129
+ if (me(this._element) || !this._isShown()) return;
1130
+ const e = { relatedTarget: this._element };
1131
+ this._completeHide(e);
1132
+ }
1133
+ dispose() {
1134
+ this._popper && this._popper.destroy(), super.dispose();
1135
+ }
1136
+ update() {
1137
+ this._inNavbar = this._detectNavbar(), this._popper && this._popper.update();
1138
+ }
1139
+ _completeHide(e) {
1140
+ if (!l.trigger(this._element, oo, e).defaultPrevented) {
1141
+ if ("ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) l.off(t, "mouseover", dt);
1142
+ this._popper && this._popper.destroy(), this._menu.classList.remove(Ve), this._element.classList.remove(Ve), this._element.setAttribute("aria-expanded", "false"), ae.removeDataAttribute(this._menu, "popper"), l.trigger(this._element, ro, e), this._element.focus();
1143
+ }
1144
+ }
1145
+ _getConfig(e) {
1146
+ if (typeof (e = super._getConfig(e)).reference == "object" && !re(e.reference) && typeof e.reference.getBoundingClientRect != "function") throw new TypeError(`${mn.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);
1147
+ return e;
1148
+ }
1149
+ _createPopper() {
1150
+ if (Ki === void 0) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org/docs/v2/)");
1151
+ let e = this._element;
1152
+ this._config.reference === "parent" ? e = this._parent : re(this._config.reference) ? e = pe(this._config.reference) : typeof this._config.reference == "object" && (e = this._config.reference);
1153
+ const t = this._getPopperConfig();
1154
+ this._popper = Wt(e, this._menu, t);
1155
+ }
1156
+ _isShown() {
1157
+ return this._menu.classList.contains(Ve);
1158
+ }
1159
+ _getPlacement() {
1160
+ const e = this._parent;
1161
+ if (e.classList.contains("dropend")) return go;
1162
+ if (e.classList.contains("dropstart")) return _o;
1163
+ if (e.classList.contains("dropup-center")) return "top";
1164
+ if (e.classList.contains("dropdown-center")) return "bottom";
1165
+ const t = getComputedStyle(this._menu).getPropertyValue("--bs-position").trim() === "end";
1166
+ return e.classList.contains("dropup") ? t ? fo : ho : t ? mo : po;
1167
+ }
1168
+ _detectNavbar() {
1169
+ return this._element.closest(".navbar") !== null;
1170
+ }
1171
+ _getOffset() {
1172
+ const { offset: e } = this._config;
1173
+ return typeof e == "string" ? e.split(",").map((t) => Number.parseInt(t, 10)) : typeof e == "function" ? (t) => e(t, this._element) : e;
1174
+ }
1175
+ _getPopperConfig() {
1176
+ const e = { placement: this._getPlacement(), modifiers: [{ name: "preventOverflow", options: { boundary: this._config.boundary } }, { name: "offset", options: { offset: this._getOffset() } }] };
1177
+ return (this._inNavbar || this._config.display === "static") && (ae.setDataAttribute(this._menu, "popper", "static"), e.modifiers = [{ name: "applyStyles", enabled: !1 }]), { ...e, ...M(this._config.popperConfig, [void 0, e]) };
1178
+ }
1179
+ _selectMenuItem({ key: e, target: t }) {
1180
+ const n = f.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", this._menu).filter((s) => Fe(s));
1181
+ n.length && Ut(n, t, e === gn, !n.includes(t)).focus();
1182
+ }
1183
+ static jQueryInterface(e) {
1184
+ return this.each(function() {
1185
+ const t = z.getOrCreateInstance(this, e);
1186
+ if (typeof e == "string") {
1187
+ if (t[e] === void 0) throw new TypeError(`No method named "${e}"`);
1188
+ t[e]();
1189
+ }
1190
+ });
1191
+ }
1192
+ static clearMenus(e) {
1193
+ if (e.button === 2 || e.type === "keyup" && e.key !== "Tab") return;
1194
+ const t = f.find(uo);
1195
+ for (const n of t) {
1196
+ const s = z.getInstance(n);
1197
+ if (!s || s._config.autoClose === !1) continue;
1198
+ const o = e.composedPath(), r = o.includes(s._menu);
1199
+ if (o.includes(s._element) || s._config.autoClose === "inside" && !r || s._config.autoClose === "outside" && r || s._menu.contains(e.target) && (e.type === "keyup" && e.key === "Tab" || /input|select|option|textarea|form/i.test(e.target.tagName))) continue;
1200
+ const a = { relatedTarget: s._element };
1201
+ e.type === "click" && (a.clickEvent = e), s._completeHide(a);
1202
+ }
1203
+ }
1204
+ static dataApiKeydownHandler(e) {
1205
+ const t = /input|textarea/i.test(e.target.tagName), n = e.key === "Escape", s = [so, gn].includes(e.key);
1206
+ if (!s && !n || t && !n) return;
1207
+ e.preventDefault();
1208
+ const o = this.matches(Oe) ? this : f.prev(this, Oe)[0] || f.next(this, Oe)[0] || f.findOne(Oe, e.delegateTarget.parentNode), r = z.getOrCreateInstance(o);
1209
+ if (s) return e.stopPropagation(), r.show(), void r._selectMenuItem(e);
1210
+ r._isShown() && (e.stopPropagation(), r.hide(), o.focus());
1211
+ }
1212
+ }
1213
+ l.on(document, bn, Oe, z.dataApiKeydownHandler), l.on(document, bn, bt, z.dataApiKeydownHandler), l.on(document, _n, z.clearMenus), l.on(document, co, z.clearMenus), l.on(document, _n, Oe, function(i) {
1214
+ i.preventDefault(), z.getOrCreateInstance(this).toggle();
1215
+ }), U(z);
1216
+ const vn = "backdrop", yn = "show", wn = `mousedown.bs.${vn}`, yo = { className: "modal-backdrop", clickCallback: null, isAnimated: !1, isVisible: !0, rootElement: "body" }, wo = { className: "string", clickCallback: "(function|null)", isAnimated: "boolean", isVisible: "boolean", rootElement: "(element|string)" };
1217
+ class An extends tt {
1218
+ constructor(e) {
1219
+ super(), this._config = this._getConfig(e), this._isAppended = !1, this._element = null;
1220
+ }
1221
+ static get Default() {
1222
+ return yo;
1223
+ }
1224
+ static get DefaultType() {
1225
+ return wo;
1226
+ }
1227
+ static get NAME() {
1228
+ return vn;
1229
+ }
1230
+ show(e) {
1231
+ if (!this._config.isVisible) return void M(e);
1232
+ this._append();
1233
+ const t = this._getElement();
1234
+ this._config.isAnimated && et(t), t.classList.add(yn), this._emulateAnimation(() => {
1235
+ M(e);
1236
+ });
1237
+ }
1238
+ hide(e) {
1239
+ this._config.isVisible ? (this._getElement().classList.remove(yn), this._emulateAnimation(() => {
1240
+ this.dispose(), M(e);
1241
+ })) : M(e);
1242
+ }
1243
+ dispose() {
1244
+ this._isAppended && (l.off(this._element, wn), this._element.remove(), this._isAppended = !1);
1245
+ }
1246
+ _getElement() {
1247
+ if (!this._element) {
1248
+ const e = document.createElement("div");
1249
+ e.className = this._config.className, this._config.isAnimated && e.classList.add("fade"), this._element = e;
1250
+ }
1251
+ return this._element;
1252
+ }
1253
+ _configAfterMerge(e) {
1254
+ return e.rootElement = pe(e.rootElement), e;
1255
+ }
1256
+ _append() {
1257
+ if (this._isAppended) return;
1258
+ const e = this._getElement();
1259
+ this._config.rootElement.append(e), l.on(e, wn, () => {
1260
+ M(this._config.clickCallback);
1261
+ }), this._isAppended = !0;
1262
+ }
1263
+ _emulateAnimation(e) {
1264
+ Gi(e, this._getElement(), this._config.isAnimated);
1265
+ }
1266
+ }
1267
+ const vt = ".bs.focustrap", Ao = `focusin${vt}`, Eo = `keydown.tab${vt}`, En = "backward", To = { autofocus: !0, trapElement: null }, Co = { autofocus: "boolean", trapElement: "element" };
1268
+ class Tn extends tt {
1269
+ constructor(e) {
1270
+ super(), this._config = this._getConfig(e), this._isActive = !1, this._lastTabNavDirection = null;
1271
+ }
1272
+ static get Default() {
1273
+ return To;
1274
+ }
1275
+ static get DefaultType() {
1276
+ return Co;
1277
+ }
1278
+ static get NAME() {
1279
+ return "focustrap";
1280
+ }
1281
+ activate() {
1282
+ this._isActive || (this._config.autofocus && this._config.trapElement.focus(), l.off(document, vt), l.on(document, Ao, (e) => this._handleFocusin(e)), l.on(document, Eo, (e) => this._handleKeydown(e)), this._isActive = !0);
1283
+ }
1284
+ deactivate() {
1285
+ this._isActive && (this._isActive = !1, l.off(document, vt));
1286
+ }
1287
+ _handleFocusin(e) {
1288
+ const { trapElement: t } = this._config;
1289
+ if (e.target === document || e.target === t || t.contains(e.target)) return;
1290
+ const n = f.focusableChildren(t);
1291
+ n.length === 0 ? t.focus() : this._lastTabNavDirection === En ? n[n.length - 1].focus() : n[0].focus();
1292
+ }
1293
+ _handleKeydown(e) {
1294
+ e.key === "Tab" && (this._lastTabNavDirection = e.shiftKey ? En : "forward");
1295
+ }
1296
+ }
1297
+ const Cn = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", On = ".sticky-top", yt = "padding-right", xn = "margin-right";
1298
+ class ii {
1299
+ constructor() {
1300
+ this._element = document.body;
1301
+ }
1302
+ getWidth() {
1303
+ const e = document.documentElement.clientWidth;
1304
+ return Math.abs(window.innerWidth - e);
1305
+ }
1306
+ hide() {
1307
+ const e = this.getWidth();
1308
+ this._disableOverFlow(), this._setElementAttributes(this._element, yt, (t) => t + e), this._setElementAttributes(Cn, yt, (t) => t + e), this._setElementAttributes(On, xn, (t) => t - e);
1309
+ }
1310
+ reset() {
1311
+ this._resetElementAttributes(this._element, "overflow"), this._resetElementAttributes(this._element, yt), this._resetElementAttributes(Cn, yt), this._resetElementAttributes(On, xn);
1312
+ }
1313
+ isOverflowing() {
1314
+ return this.getWidth() > 0;
1315
+ }
1316
+ _disableOverFlow() {
1317
+ this._saveInitialAttribute(this._element, "overflow"), this._element.style.overflow = "hidden";
1318
+ }
1319
+ _setElementAttributes(e, t, n) {
1320
+ const s = this.getWidth();
1321
+ this._applyManipulationCallback(e, (o) => {
1322
+ if (o !== this._element && window.innerWidth > o.clientWidth + s) return;
1323
+ this._saveInitialAttribute(o, t);
1324
+ const r = window.getComputedStyle(o).getPropertyValue(t);
1325
+ o.style.setProperty(t, `${n(Number.parseFloat(r))}px`);
1326
+ });
1327
+ }
1328
+ _saveInitialAttribute(e, t) {
1329
+ const n = e.style.getPropertyValue(t);
1330
+ n && ae.setDataAttribute(e, t, n);
1331
+ }
1332
+ _resetElementAttributes(e, t) {
1333
+ this._applyManipulationCallback(e, (n) => {
1334
+ const s = ae.getDataAttribute(n, t);
1335
+ s !== null ? (ae.removeDataAttribute(n, t), n.style.setProperty(t, s)) : n.style.removeProperty(t);
1336
+ });
1337
+ }
1338
+ _applyManipulationCallback(e, t) {
1339
+ if (re(e)) t(e);
1340
+ else for (const n of f.find(e, this._element)) t(n);
1341
+ }
1342
+ }
1343
+ const K = ".bs.modal", Oo = `hide${K}`, xo = `hidePrevented${K}`, kn = `hidden${K}`, Sn = `show${K}`, ko = `shown${K}`, So = `resize${K}`, Lo = `click.dismiss${K}`, $o = `mousedown.dismiss${K}`, Do = `keydown.dismiss${K}`, Io = `click${K}.data-api`, Ln = "modal-open", $n = "show", ni = "modal-static", Po = { backdrop: !0, focus: !0, keyboard: !0 }, No = { backdrop: "(boolean|string)", focus: "boolean", keyboard: "boolean" };
1344
+ class _e extends J {
1345
+ constructor(e, t) {
1346
+ super(e, t), this._dialog = f.findOne(".modal-dialog", this._element), this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._isShown = !1, this._isTransitioning = !1, this._scrollBar = new ii(), this._addEventListeners();
1347
+ }
1348
+ static get Default() {
1349
+ return Po;
1350
+ }
1351
+ static get DefaultType() {
1352
+ return No;
1353
+ }
1354
+ static get NAME() {
1355
+ return "modal";
1356
+ }
1357
+ toggle(e) {
1358
+ return this._isShown ? this.hide() : this.show(e);
1359
+ }
1360
+ show(e) {
1361
+ this._isShown || this._isTransitioning || l.trigger(this._element, Sn, { relatedTarget: e }).defaultPrevented || (this._isShown = !0, this._isTransitioning = !0, this._scrollBar.hide(), document.body.classList.add(Ln), this._adjustDialog(), this._backdrop.show(() => this._showElement(e)));
1362
+ }
1363
+ hide() {
1364
+ this._isShown && !this._isTransitioning && (l.trigger(this._element, Oo).defaultPrevented || (this._isShown = !1, this._isTransitioning = !0, this._focustrap.deactivate(), this._element.classList.remove($n), this._queueCallback(() => this._hideModal(), this._element, this._isAnimated())));
1365
+ }
1366
+ dispose() {
1367
+ l.off(window, K), l.off(this._dialog, K), this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose();
1368
+ }
1369
+ handleUpdate() {
1370
+ this._adjustDialog();
1371
+ }
1372
+ _initializeBackDrop() {
1373
+ return new An({ isVisible: !!this._config.backdrop, isAnimated: this._isAnimated() });
1374
+ }
1375
+ _initializeFocusTrap() {
1376
+ return new Tn({ trapElement: this._element });
1377
+ }
1378
+ _showElement(e) {
1379
+ document.body.contains(this._element) || document.body.append(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.scrollTop = 0;
1380
+ const t = f.findOne(".modal-body", this._dialog);
1381
+ t && (t.scrollTop = 0), et(this._element), this._element.classList.add($n), this._queueCallback(() => {
1382
+ this._config.focus && this._focustrap.activate(), this._isTransitioning = !1, l.trigger(this._element, ko, { relatedTarget: e });
1383
+ }, this._dialog, this._isAnimated());
1384
+ }
1385
+ _addEventListeners() {
1386
+ l.on(this._element, Do, (e) => {
1387
+ e.key === "Escape" && (this._config.keyboard ? this.hide() : this._triggerBackdropTransition());
1388
+ }), l.on(window, So, () => {
1389
+ this._isShown && !this._isTransitioning && this._adjustDialog();
1390
+ }), l.on(this._element, $o, (e) => {
1391
+ l.one(this._element, Lo, (t) => {
1392
+ this._element === e.target && this._element === t.target && (this._config.backdrop !== "static" ? this._config.backdrop && this.hide() : this._triggerBackdropTransition());
1393
+ });
1394
+ });
1395
+ }
1396
+ _hideModal() {
1397
+ this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._isTransitioning = !1, this._backdrop.hide(() => {
1398
+ document.body.classList.remove(Ln), this._resetAdjustments(), this._scrollBar.reset(), l.trigger(this._element, kn);
1399
+ });
1400
+ }
1401
+ _isAnimated() {
1402
+ return this._element.classList.contains("fade");
1403
+ }
1404
+ _triggerBackdropTransition() {
1405
+ if (l.trigger(this._element, xo).defaultPrevented) return;
1406
+ const e = this._element.scrollHeight > document.documentElement.clientHeight, t = this._element.style.overflowY;
1407
+ t === "hidden" || this._element.classList.contains(ni) || (e || (this._element.style.overflowY = "hidden"), this._element.classList.add(ni), this._queueCallback(() => {
1408
+ this._element.classList.remove(ni), this._queueCallback(() => {
1409
+ this._element.style.overflowY = t;
1410
+ }, this._dialog);
1411
+ }, this._dialog), this._element.focus());
1412
+ }
1413
+ _adjustDialog() {
1414
+ const e = this._element.scrollHeight > document.documentElement.clientHeight, t = this._scrollBar.getWidth(), n = t > 0;
1415
+ if (n && !e) {
1416
+ const s = V() ? "paddingLeft" : "paddingRight";
1417
+ this._element.style[s] = `${t}px`;
1418
+ }
1419
+ if (!n && e) {
1420
+ const s = V() ? "paddingRight" : "paddingLeft";
1421
+ this._element.style[s] = `${t}px`;
1422
+ }
1423
+ }
1424
+ _resetAdjustments() {
1425
+ this._element.style.paddingLeft = "", this._element.style.paddingRight = "";
1426
+ }
1427
+ static jQueryInterface(e, t) {
1428
+ return this.each(function() {
1429
+ const n = _e.getOrCreateInstance(this, e);
1430
+ if (typeof e == "string") {
1431
+ if (n[e] === void 0) throw new TypeError(`No method named "${e}"`);
1432
+ n[e](t);
1433
+ }
1434
+ });
1435
+ }
1436
+ }
1437
+ l.on(document, Io, '[data-bs-toggle="modal"]', function(i) {
1438
+ const e = f.getElementFromSelector(this);
1439
+ ["A", "AREA"].includes(this.tagName) && i.preventDefault(), l.one(e, Sn, (n) => {
1440
+ n.defaultPrevented || l.one(e, kn, () => {
1441
+ Fe(this) && this.focus();
1442
+ });
1443
+ });
1444
+ const t = f.findOne(".modal.show");
1445
+ t && _e.getInstance(t).hide(), _e.getOrCreateInstance(e).toggle(this);
1446
+ }), ft(_e), U(_e);
1447
+ const le = ".bs.offcanvas", Dn = ".data-api", jo = `load${le}${Dn}`, In = "show", Pn = "showing", Nn = "hiding", jn = ".offcanvas.show", Mo = `show${le}`, Fo = `shown${le}`, Ho = `hide${le}`, Mn = `hidePrevented${le}`, Fn = `hidden${le}`, qo = `resize${le}`, zo = `click${le}${Dn}`, Wo = `keydown.dismiss${le}`, Ro = { backdrop: !0, keyboard: !0, scroll: !1 }, Bo = { backdrop: "(boolean|string)", keyboard: "boolean", scroll: "boolean" };
1448
+ class ie extends J {
1449
+ constructor(e, t) {
1450
+ super(e, t), this._isShown = !1, this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._addEventListeners();
1451
+ }
1452
+ static get Default() {
1453
+ return Ro;
1454
+ }
1455
+ static get DefaultType() {
1456
+ return Bo;
1457
+ }
1458
+ static get NAME() {
1459
+ return "offcanvas";
1460
+ }
1461
+ toggle(e) {
1462
+ return this._isShown ? this.hide() : this.show(e);
1463
+ }
1464
+ show(e) {
1465
+ this._isShown || l.trigger(this._element, Mo, { relatedTarget: e }).defaultPrevented || (this._isShown = !0, this._backdrop.show(), this._config.scroll || new ii().hide(), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.classList.add(Pn), this._queueCallback(() => {
1466
+ this._config.scroll && !this._config.backdrop || this._focustrap.activate(), this._element.classList.add(In), this._element.classList.remove(Pn), l.trigger(this._element, Fo, { relatedTarget: e });
1467
+ }, this._element, !0));
1468
+ }
1469
+ hide() {
1470
+ this._isShown && (l.trigger(this._element, Ho).defaultPrevented || (this._focustrap.deactivate(), this._element.blur(), this._isShown = !1, this._element.classList.add(Nn), this._backdrop.hide(), this._queueCallback(() => {
1471
+ this._element.classList.remove(In, Nn), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._config.scroll || new ii().reset(), l.trigger(this._element, Fn);
1472
+ }, this._element, !0)));
1473
+ }
1474
+ dispose() {
1475
+ this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose();
1476
+ }
1477
+ _initializeBackDrop() {
1478
+ const e = !!this._config.backdrop;
1479
+ return new An({ className: "offcanvas-backdrop", isVisible: e, isAnimated: !0, rootElement: this._element.parentNode, clickCallback: e ? () => {
1480
+ this._config.backdrop !== "static" ? this.hide() : l.trigger(this._element, Mn);
1481
+ } : null });
1482
+ }
1483
+ _initializeFocusTrap() {
1484
+ return new Tn({ trapElement: this._element });
1485
+ }
1486
+ _addEventListeners() {
1487
+ l.on(this._element, Wo, (e) => {
1488
+ e.key === "Escape" && (this._config.keyboard ? this.hide() : l.trigger(this._element, Mn));
1489
+ });
1490
+ }
1491
+ static jQueryInterface(e) {
1492
+ return this.each(function() {
1493
+ const t = ie.getOrCreateInstance(this, e);
1494
+ if (typeof e == "string") {
1495
+ if (t[e] === void 0 || e.startsWith("_") || e === "constructor") throw new TypeError(`No method named "${e}"`);
1496
+ t[e](this);
1497
+ }
1498
+ });
1499
+ }
1500
+ }
1501
+ l.on(document, zo, '[data-bs-toggle="offcanvas"]', function(i) {
1502
+ const e = f.getElementFromSelector(this);
1503
+ if (["A", "AREA"].includes(this.tagName) && i.preventDefault(), me(this)) return;
1504
+ l.one(e, Fn, () => {
1505
+ Fe(this) && this.focus();
1506
+ });
1507
+ const t = f.findOne(jn);
1508
+ t && t !== e && ie.getInstance(t).hide(), ie.getOrCreateInstance(e).toggle(this);
1509
+ }), l.on(window, jo, () => {
1510
+ for (const i of f.find(jn)) ie.getOrCreateInstance(i).show();
1511
+ }), l.on(window, qo, () => {
1512
+ for (const i of f.find("[aria-modal][class*=show][class*=offcanvas-]")) getComputedStyle(i).position !== "fixed" && ie.getOrCreateInstance(i).hide();
1513
+ }), ft(ie), U(ie);
1514
+ const Hn = { "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i], a: ["target", "href", "title", "rel"], area: [], b: [], br: [], col: [], code: [], dd: [], div: [], dl: [], dt: [], em: [], hr: [], h1: [], h2: [], h3: [], h4: [], h5: [], h6: [], i: [], img: ["src", "srcset", "alt", "title", "width", "height"], li: [], ol: [], p: [], pre: [], s: [], small: [], span: [], sub: [], sup: [], strong: [], u: [], ul: [] }, Vo = /* @__PURE__ */ new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), Uo = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i, Ko = (i, e) => {
1515
+ const t = i.nodeName.toLowerCase();
1516
+ return e.includes(t) ? !Vo.has(t) || !!Uo.test(i.nodeValue) : e.filter((n) => n instanceof RegExp).some((n) => n.test(t));
1517
+ }, Qo = { allowList: Hn, content: {}, extraClass: "", html: !1, sanitize: !0, sanitizeFn: null, template: "<div></div>" }, Xo = { allowList: "object", content: "object", extraClass: "(string|function)", html: "boolean", sanitize: "boolean", sanitizeFn: "(null|function)", template: "string" }, Yo = { entry: "(string|element|function|null)", selector: "(string|element)" };
1518
+ class Jo extends tt {
1519
+ constructor(e) {
1520
+ super(), this._config = this._getConfig(e);
1521
+ }
1522
+ static get Default() {
1523
+ return Qo;
1524
+ }
1525
+ static get DefaultType() {
1526
+ return Xo;
1527
+ }
1528
+ static get NAME() {
1529
+ return "TemplateFactory";
1530
+ }
1531
+ getContent() {
1532
+ return Object.values(this._config.content).map((e) => this._resolvePossibleFunction(e)).filter(Boolean);
1533
+ }
1534
+ hasContent() {
1535
+ return this.getContent().length > 0;
1536
+ }
1537
+ changeContent(e) {
1538
+ return this._checkContent(e), this._config.content = { ...this._config.content, ...e }, this;
1539
+ }
1540
+ toHtml() {
1541
+ const e = document.createElement("div");
1542
+ e.innerHTML = this._maybeSanitize(this._config.template);
1543
+ for (const [s, o] of Object.entries(this._config.content)) this._setContent(e, o, s);
1544
+ const t = e.children[0], n = this._resolvePossibleFunction(this._config.extraClass);
1545
+ return n && t.classList.add(...n.split(" ")), t;
1546
+ }
1547
+ _typeCheckConfig(e) {
1548
+ super._typeCheckConfig(e), this._checkContent(e.content);
1549
+ }
1550
+ _checkContent(e) {
1551
+ for (const [t, n] of Object.entries(e)) super._typeCheckConfig({ selector: t, entry: n }, Yo);
1552
+ }
1553
+ _setContent(e, t, n) {
1554
+ const s = f.findOne(n, e);
1555
+ s && ((t = this._resolvePossibleFunction(t)) ? re(t) ? this._putElementInTemplate(pe(t), s) : this._config.html ? s.innerHTML = this._maybeSanitize(t) : s.textContent = t : s.remove());
1556
+ }
1557
+ _maybeSanitize(e) {
1558
+ return this._config.sanitize ? (function(t, n, s) {
1559
+ if (!t.length) return t;
1560
+ if (s && typeof s == "function") return s(t);
1561
+ const o = new window.DOMParser().parseFromString(t, "text/html"), r = [].concat(...o.body.querySelectorAll("*"));
1562
+ for (const a of r) {
1563
+ const c = a.nodeName.toLowerCase();
1564
+ if (!Object.keys(n).includes(c)) {
1565
+ a.remove();
1566
+ continue;
1567
+ }
1568
+ const h = [].concat(...a.attributes), d = [].concat(n["*"] || [], n[c] || []);
1569
+ for (const u of h) Ko(u, d) || a.removeAttribute(u.nodeName);
1570
+ }
1571
+ return o.body.innerHTML;
1572
+ })(e, this._config.allowList, this._config.sanitizeFn) : e;
1573
+ }
1574
+ _resolvePossibleFunction(e) {
1575
+ return M(e, [void 0, this]);
1576
+ }
1577
+ _putElementInTemplate(e, t) {
1578
+ if (this._config.html) return t.innerHTML = "", void t.append(e);
1579
+ t.textContent = e.textContent;
1580
+ }
1581
+ }
1582
+ const Go = /* @__PURE__ */ new Set(["sanitize", "allowList", "sanitizeFn"]), si = "fade", wt = "show", Zo = ".tooltip-inner", qn = ".modal", zn = "hide.bs.modal", st = "hover", oi = "focus", ri = "click", er = { AUTO: "auto", TOP: "top", RIGHT: V() ? "left" : "right", BOTTOM: "bottom", LEFT: V() ? "right" : "left" }, tr = { allowList: Hn, animation: !0, boundary: "clippingParents", container: !1, customClass: "", delay: 0, fallbackPlacements: ["top", "right", "bottom", "left"], html: !1, offset: [0, 6], placement: "top", popperConfig: null, sanitize: !0, sanitizeFn: null, selector: !1, template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', title: "", trigger: "hover focus" }, ir = { allowList: "object", animation: "boolean", boundary: "(string|element)", container: "(string|element|boolean)", customClass: "(string|function)", delay: "(number|object)", fallbackPlacements: "array", html: "boolean", offset: "(array|string|function)", placement: "(string|function)", popperConfig: "(null|object|function)", sanitize: "boolean", sanitizeFn: "(null|function)", selector: "(string|boolean)", template: "string", title: "(string|element|function)", trigger: "string" };
1583
+ class ce extends J {
1584
+ constructor(e, t) {
1585
+ if (Ki === void 0) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org/docs/v2/)");
1586
+ super(e, t), this._isEnabled = !0, this._timeout = 0, this._isHovered = null, this._activeTrigger = {}, this._popper = null, this._templateFactory = null, this._newContent = null, this.tip = null, this._setListeners(), this._config.selector || this._fixTitle();
1587
+ }
1588
+ static get Default() {
1589
+ return tr;
1590
+ }
1591
+ static get DefaultType() {
1592
+ return ir;
1593
+ }
1594
+ static get NAME() {
1595
+ return "tooltip";
1596
+ }
1597
+ enable() {
1598
+ this._isEnabled = !0;
1599
+ }
1600
+ disable() {
1601
+ this._isEnabled = !1;
1602
+ }
1603
+ toggleEnabled() {
1604
+ this._isEnabled = !this._isEnabled;
1605
+ }
1606
+ toggle() {
1607
+ this._isEnabled && (this._isShown() ? this._leave() : this._enter());
1608
+ }
1609
+ dispose() {
1610
+ clearTimeout(this._timeout), l.off(this._element.closest(qn), zn, this._hideModalHandler), this._element.getAttribute("data-bs-original-title") && this._element.setAttribute("title", this._element.getAttribute("data-bs-original-title")), this._disposePopper(), super.dispose();
1611
+ }
1612
+ show() {
1613
+ if (this._element.style.display === "none") throw new Error("Please use show on visible elements");
1614
+ if (!this._isWithContent() || !this._isEnabled) return;
1615
+ const e = l.trigger(this._element, this.constructor.eventName("show")), t = (Yi(this._element) || this._element.ownerDocument.documentElement).contains(this._element);
1616
+ if (e.defaultPrevented || !t) return;
1617
+ this._disposePopper();
1618
+ const n = this._getTipElement();
1619
+ this._element.setAttribute("aria-describedby", n.getAttribute("id"));
1620
+ const { container: s } = this._config;
1621
+ if (this._element.ownerDocument.documentElement.contains(this.tip) || (s.append(n), l.trigger(this._element, this.constructor.eventName("inserted"))), this._popper = this._createPopper(n), n.classList.add(wt), "ontouchstart" in document.documentElement) for (const o of [].concat(...document.body.children)) l.on(o, "mouseover", dt);
1622
+ this._queueCallback(() => {
1623
+ l.trigger(this._element, this.constructor.eventName("shown")), this._isHovered === !1 && this._leave(), this._isHovered = !1;
1624
+ }, this.tip, this._isAnimated());
1625
+ }
1626
+ hide() {
1627
+ if (this._isShown() && !l.trigger(this._element, this.constructor.eventName("hide")).defaultPrevented) {
1628
+ if (this._getTipElement().classList.remove(wt), "ontouchstart" in document.documentElement) for (const e of [].concat(...document.body.children)) l.off(e, "mouseover", dt);
1629
+ this._activeTrigger[ri] = !1, this._activeTrigger[oi] = !1, this._activeTrigger[st] = !1, this._isHovered = null, this._queueCallback(() => {
1630
+ this._isWithActiveTrigger() || (this._isHovered || this._disposePopper(), this._element.removeAttribute("aria-describedby"), l.trigger(this._element, this.constructor.eventName("hidden")));
1631
+ }, this.tip, this._isAnimated());
1632
+ }
1633
+ }
1634
+ update() {
1635
+ this._popper && this._popper.update();
1636
+ }
1637
+ _isWithContent() {
1638
+ return !!this._getTitle();
1639
+ }
1640
+ _getTipElement() {
1641
+ return this.tip || (this.tip = this._createTipElement(this._newContent || this._getContentForTemplate())), this.tip;
1642
+ }
1643
+ _createTipElement(e) {
1644
+ const t = this._getTemplateFactory(e).toHtml();
1645
+ if (!t) return null;
1646
+ t.classList.remove(si, wt), t.classList.add(`bs-${this.constructor.NAME}-auto`);
1647
+ const n = ((s) => {
1648
+ do
1649
+ s += Math.floor(1e6 * Math.random());
1650
+ while (document.getElementById(s));
1651
+ return s;
1652
+ })(this.constructor.NAME).toString();
1653
+ return t.setAttribute("id", n), this._isAnimated() && t.classList.add(si), t;
1654
+ }
1655
+ setContent(e) {
1656
+ this._newContent = e, this._isShown() && (this._disposePopper(), this.show());
1657
+ }
1658
+ _getTemplateFactory(e) {
1659
+ return this._templateFactory ? this._templateFactory.changeContent(e) : this._templateFactory = new Jo({ ...this._config, content: e, extraClass: this._resolvePossibleFunction(this._config.customClass) }), this._templateFactory;
1660
+ }
1661
+ _getContentForTemplate() {
1662
+ return { [Zo]: this._getTitle() };
1663
+ }
1664
+ _getTitle() {
1665
+ return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute("data-bs-original-title");
1666
+ }
1667
+ _initializeOnDelegatedTarget(e) {
1668
+ return this.constructor.getOrCreateInstance(e.delegateTarget, this._getDelegateConfig());
1669
+ }
1670
+ _isAnimated() {
1671
+ return this._config.animation || this.tip && this.tip.classList.contains(si);
1672
+ }
1673
+ _isShown() {
1674
+ return this.tip && this.tip.classList.contains(wt);
1675
+ }
1676
+ _createPopper(e) {
1677
+ const t = M(this._config.placement, [this, e, this._element]), n = er[t.toUpperCase()];
1678
+ return Wt(this._element, e, this._getPopperConfig(n));
1679
+ }
1680
+ _getOffset() {
1681
+ const { offset: e } = this._config;
1682
+ return typeof e == "string" ? e.split(",").map((t) => Number.parseInt(t, 10)) : typeof e == "function" ? (t) => e(t, this._element) : e;
1683
+ }
1684
+ _resolvePossibleFunction(e) {
1685
+ return M(e, [this._element, this._element]);
1686
+ }
1687
+ _getPopperConfig(e) {
1688
+ const t = { placement: e, modifiers: [{ name: "flip", options: { fallbackPlacements: this._config.fallbackPlacements } }, { name: "offset", options: { offset: this._getOffset() } }, { name: "preventOverflow", options: { boundary: this._config.boundary } }, { name: "arrow", options: { element: `.${this.constructor.NAME}-arrow` } }, { name: "preSetPlacement", enabled: !0, phase: "beforeMain", fn: (n) => {
1689
+ this._getTipElement().setAttribute("data-popper-placement", n.state.placement);
1690
+ } }] };
1691
+ return { ...t, ...M(this._config.popperConfig, [void 0, t]) };
1692
+ }
1693
+ _setListeners() {
1694
+ const e = this._config.trigger.split(" ");
1695
+ for (const t of e) if (t === "click") l.on(this._element, this.constructor.eventName("click"), this._config.selector, (n) => {
1696
+ const s = this._initializeOnDelegatedTarget(n);
1697
+ s._activeTrigger[ri] = !(s._isShown() && s._activeTrigger[ri]), s.toggle();
1698
+ });
1699
+ else if (t !== "manual") {
1700
+ const n = t === st ? this.constructor.eventName("mouseenter") : this.constructor.eventName("focusin"), s = t === st ? this.constructor.eventName("mouseleave") : this.constructor.eventName("focusout");
1701
+ l.on(this._element, n, this._config.selector, (o) => {
1702
+ const r = this._initializeOnDelegatedTarget(o);
1703
+ r._activeTrigger[o.type === "focusin" ? oi : st] = !0, r._enter();
1704
+ }), l.on(this._element, s, this._config.selector, (o) => {
1705
+ const r = this._initializeOnDelegatedTarget(o);
1706
+ r._activeTrigger[o.type === "focusout" ? oi : st] = r._element.contains(o.relatedTarget), r._leave();
1707
+ });
1708
+ }
1709
+ this._hideModalHandler = () => {
1710
+ this._element && this.hide();
1711
+ }, l.on(this._element.closest(qn), zn, this._hideModalHandler);
1712
+ }
1713
+ _fixTitle() {
1714
+ const e = this._element.getAttribute("title");
1715
+ e && (this._element.getAttribute("aria-label") || this._element.textContent.trim() || this._element.setAttribute("aria-label", e), this._element.setAttribute("data-bs-original-title", e), this._element.removeAttribute("title"));
1716
+ }
1717
+ _enter() {
1718
+ this._isShown() || this._isHovered ? this._isHovered = !0 : (this._isHovered = !0, this._setTimeout(() => {
1719
+ this._isHovered && this.show();
1720
+ }, this._config.delay.show));
1721
+ }
1722
+ _leave() {
1723
+ this._isWithActiveTrigger() || (this._isHovered = !1, this._setTimeout(() => {
1724
+ this._isHovered || this.hide();
1725
+ }, this._config.delay.hide));
1726
+ }
1727
+ _setTimeout(e, t) {
1728
+ clearTimeout(this._timeout), this._timeout = setTimeout(e, t);
1729
+ }
1730
+ _isWithActiveTrigger() {
1731
+ return Object.values(this._activeTrigger).includes(!0);
1732
+ }
1733
+ _getConfig(e) {
1734
+ const t = ae.getDataAttributes(this._element);
1735
+ for (const n of Object.keys(t)) Go.has(n) && delete t[n];
1736
+ return e = { ...t, ...typeof e == "object" && e ? e : {} }, e = this._mergeConfigObj(e), e = this._configAfterMerge(e), this._typeCheckConfig(e), e;
1737
+ }
1738
+ _configAfterMerge(e) {
1739
+ return e.container = e.container === !1 ? document.body : pe(e.container), typeof e.delay == "number" && (e.delay = { show: e.delay, hide: e.delay }), typeof e.title == "number" && (e.title = e.title.toString()), typeof e.content == "number" && (e.content = e.content.toString()), e;
1740
+ }
1741
+ _getDelegateConfig() {
1742
+ const e = {};
1743
+ for (const [t, n] of Object.entries(this._config)) this.constructor.Default[t] !== n && (e[t] = n);
1744
+ return e.selector = !1, e.trigger = "manual", e;
1745
+ }
1746
+ _disposePopper() {
1747
+ this._popper && (this._popper.destroy(), this._popper = null), this.tip && (this.tip.remove(), this.tip = null);
1748
+ }
1749
+ static jQueryInterface(e) {
1750
+ return this.each(function() {
1751
+ const t = ce.getOrCreateInstance(this, e);
1752
+ if (typeof e == "string") {
1753
+ if (t[e] === void 0) throw new TypeError(`No method named "${e}"`);
1754
+ t[e]();
1755
+ }
1756
+ });
1757
+ }
1758
+ }
1759
+ U(ce);
1760
+ const nr = ".popover-header", sr = ".popover-body", or = { ...ce.Default, content: "", offset: [0, 8], placement: "right", template: '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>', trigger: "click" }, rr = { ...ce.DefaultType, content: "(null|string|element|function)" };
1761
+ class Ue extends ce {
1762
+ static get Default() {
1763
+ return or;
1764
+ }
1765
+ static get DefaultType() {
1766
+ return rr;
1767
+ }
1768
+ static get NAME() {
1769
+ return "popover";
1770
+ }
1771
+ _isWithContent() {
1772
+ return this._getTitle() || this._getContent();
1773
+ }
1774
+ _getContentForTemplate() {
1775
+ return { [nr]: this._getTitle(), [sr]: this._getContent() };
1776
+ }
1777
+ _getContent() {
1778
+ return this._resolvePossibleFunction(this._config.content);
1779
+ }
1780
+ static jQueryInterface(e) {
1781
+ return this.each(function() {
1782
+ const t = Ue.getOrCreateInstance(this, e);
1783
+ if (typeof e == "string") {
1784
+ if (t[e] === void 0) throw new TypeError(`No method named "${e}"`);
1785
+ t[e]();
1786
+ }
1787
+ });
1788
+ }
1789
+ }
1790
+ U(Ue);
1791
+ const ai = ".bs.scrollspy", ar = `activate${ai}`, Wn = `click${ai}`, lr = `load${ai}.data-api`, Ke = "active", li = "[href]", Rn = ".nav-link", cr = `${Rn}, .nav-item > ${Rn}, .list-group-item`, ur = { offset: null, rootMargin: "0px 0px -25%", smoothScroll: !1, target: null, threshold: [0.1, 0.5, 1] }, hr = { offset: "(number|null)", rootMargin: "string", smoothScroll: "boolean", target: "element", threshold: "array" };
1792
+ class Qe extends J {
1793
+ constructor(e, t) {
1794
+ super(e, t), this._targetLinks = /* @__PURE__ */ new Map(), this._observableSections = /* @__PURE__ */ new Map(), this._rootElement = getComputedStyle(this._element).overflowY === "visible" ? null : this._element, this._activeTarget = null, this._observer = null, this._previousScrollData = { visibleEntryTop: 0, parentScrollTop: 0 }, this.refresh();
1795
+ }
1796
+ static get Default() {
1797
+ return ur;
1798
+ }
1799
+ static get DefaultType() {
1800
+ return hr;
1801
+ }
1802
+ static get NAME() {
1803
+ return "scrollspy";
1804
+ }
1805
+ refresh() {
1806
+ this._initializeTargetsAndObservables(), this._maybeEnableSmoothScroll(), this._observer ? this._observer.disconnect() : this._observer = this._getNewObserver();
1807
+ for (const e of this._observableSections.values()) this._observer.observe(e);
1808
+ }
1809
+ dispose() {
1810
+ this._observer.disconnect(), super.dispose();
1811
+ }
1812
+ _configAfterMerge(e) {
1813
+ return e.target = pe(e.target) || document.body, e.rootMargin = e.offset ? `${e.offset}px 0px -30%` : e.rootMargin, typeof e.threshold == "string" && (e.threshold = e.threshold.split(",").map((t) => Number.parseFloat(t))), e;
1814
+ }
1815
+ _maybeEnableSmoothScroll() {
1816
+ this._config.smoothScroll && (l.off(this._config.target, Wn), l.on(this._config.target, Wn, li, (e) => {
1817
+ const t = this._observableSections.get(e.target.hash);
1818
+ if (t) {
1819
+ e.preventDefault();
1820
+ const n = this._rootElement || window, s = t.offsetTop - this._element.offsetTop;
1821
+ if (n.scrollTo) return void n.scrollTo({ top: s, behavior: "smooth" });
1822
+ n.scrollTop = s;
1823
+ }
1824
+ }));
1825
+ }
1826
+ _getNewObserver() {
1827
+ const e = { root: this._rootElement, threshold: this._config.threshold, rootMargin: this._config.rootMargin };
1828
+ return new IntersectionObserver((t) => this._observerCallback(t), e);
1829
+ }
1830
+ _observerCallback(e) {
1831
+ const t = (r) => this._targetLinks.get(`#${r.target.id}`), n = (r) => {
1832
+ this._previousScrollData.visibleEntryTop = r.target.offsetTop, this._process(t(r));
1833
+ }, s = (this._rootElement || document.documentElement).scrollTop, o = s >= this._previousScrollData.parentScrollTop;
1834
+ this._previousScrollData.parentScrollTop = s;
1835
+ for (const r of e) {
1836
+ if (!r.isIntersecting) {
1837
+ this._activeTarget = null, this._clearActiveClass(t(r));
1838
+ continue;
1839
+ }
1840
+ const a = r.target.offsetTop >= this._previousScrollData.visibleEntryTop;
1841
+ if (o && a) {
1842
+ if (n(r), !s) return;
1843
+ } else o || a || n(r);
1844
+ }
1845
+ }
1846
+ _initializeTargetsAndObservables() {
1847
+ this._targetLinks = /* @__PURE__ */ new Map(), this._observableSections = /* @__PURE__ */ new Map();
1848
+ const e = f.find(li, this._config.target);
1849
+ for (const t of e) {
1850
+ if (!t.hash || me(t)) continue;
1851
+ const n = f.findOne(decodeURI(t.hash), this._element);
1852
+ Fe(n) && (this._targetLinks.set(decodeURI(t.hash), t), this._observableSections.set(t.hash, n));
1853
+ }
1854
+ }
1855
+ _process(e) {
1856
+ this._activeTarget !== e && (this._clearActiveClass(this._config.target), this._activeTarget = e, e.classList.add(Ke), this._activateParents(e), l.trigger(this._element, ar, { relatedTarget: e }));
1857
+ }
1858
+ _activateParents(e) {
1859
+ if (e.classList.contains("dropdown-item")) f.findOne(".dropdown-toggle", e.closest(".dropdown")).classList.add(Ke);
1860
+ else for (const t of f.parents(e, ".nav, .list-group")) for (const n of f.prev(t, cr)) n.classList.add(Ke);
1861
+ }
1862
+ _clearActiveClass(e) {
1863
+ e.classList.remove(Ke);
1864
+ const t = f.find(`${li}.${Ke}`, e);
1865
+ for (const n of t) n.classList.remove(Ke);
1866
+ }
1867
+ static jQueryInterface(e) {
1868
+ return this.each(function() {
1869
+ const t = Qe.getOrCreateInstance(this, e);
1870
+ if (typeof e == "string") {
1871
+ if (t[e] === void 0 || e.startsWith("_") || e === "constructor") throw new TypeError(`No method named "${e}"`);
1872
+ t[e]();
1873
+ }
1874
+ });
1875
+ }
1876
+ }
1877
+ l.on(window, lr, () => {
1878
+ for (const i of f.find('[data-bs-spy="scroll"]')) Qe.getOrCreateInstance(i);
1879
+ }), U(Qe);
1880
+ const xe = ".bs.tab", dr = `hide${xe}`, fr = `hidden${xe}`, pr = `show${xe}`, mr = `shown${xe}`, gr = `click${xe}`, _r = `keydown${xe}`, br = `load${xe}`, vr = "ArrowLeft", Bn = "ArrowRight", yr = "ArrowUp", Vn = "ArrowDown", ci = "Home", Un = "End", ke = "active", Kn = "fade", ui = "show", Qn = ".dropdown-toggle", hi = `:not(${Qn})`, Xn = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]', di = `.nav-link${hi}, .list-group-item${hi}, [role="tab"]${hi}, ${Xn}`, wr = `.${ke}[data-bs-toggle="tab"], .${ke}[data-bs-toggle="pill"], .${ke}[data-bs-toggle="list"]`;
1881
+ class ue extends J {
1882
+ constructor(e) {
1883
+ super(e), this._parent = this._element.closest('.list-group, .nav, [role="tablist"]'), this._parent && (this._setInitialAttributes(this._parent, this._getChildren()), l.on(this._element, _r, (t) => this._keydown(t)));
1884
+ }
1885
+ static get NAME() {
1886
+ return "tab";
1887
+ }
1888
+ show() {
1889
+ const e = this._element;
1890
+ if (this._elemIsActive(e)) return;
1891
+ const t = this._getActiveElem(), n = t ? l.trigger(t, dr, { relatedTarget: e }) : null;
1892
+ l.trigger(e, pr, { relatedTarget: t }).defaultPrevented || n && n.defaultPrevented || (this._deactivate(t, e), this._activate(e, t));
1893
+ }
1894
+ _activate(e, t) {
1895
+ e && (e.classList.add(ke), this._activate(f.getElementFromSelector(e)), this._queueCallback(() => {
1896
+ e.getAttribute("role") === "tab" ? (e.removeAttribute("tabindex"), e.setAttribute("aria-selected", !0), this._toggleDropDown(e, !0), l.trigger(e, mr, { relatedTarget: t })) : e.classList.add(ui);
1897
+ }, e, e.classList.contains(Kn)));
1898
+ }
1899
+ _deactivate(e, t) {
1900
+ e && (e.classList.remove(ke), e.blur(), this._deactivate(f.getElementFromSelector(e)), this._queueCallback(() => {
1901
+ e.getAttribute("role") === "tab" ? (e.setAttribute("aria-selected", !1), e.setAttribute("tabindex", "-1"), this._toggleDropDown(e, !1), l.trigger(e, fr, { relatedTarget: t })) : e.classList.remove(ui);
1902
+ }, e, e.classList.contains(Kn)));
1903
+ }
1904
+ _keydown(e) {
1905
+ if (![vr, Bn, yr, Vn, ci, Un].includes(e.key)) return;
1906
+ e.stopPropagation(), e.preventDefault();
1907
+ const t = this._getChildren().filter((s) => !me(s));
1908
+ let n;
1909
+ if ([ci, Un].includes(e.key)) n = t[e.key === ci ? 0 : t.length - 1];
1910
+ else {
1911
+ const s = [Bn, Vn].includes(e.key);
1912
+ n = Ut(t, e.target, s, !0);
1913
+ }
1914
+ n && (n.focus({ preventScroll: !0 }), ue.getOrCreateInstance(n).show());
1915
+ }
1916
+ _getChildren() {
1917
+ return f.find(di, this._parent);
1918
+ }
1919
+ _getActiveElem() {
1920
+ return this._getChildren().find((e) => this._elemIsActive(e)) || null;
1921
+ }
1922
+ _setInitialAttributes(e, t) {
1923
+ this._setAttributeIfNotExists(e, "role", "tablist");
1924
+ for (const n of t) this._setInitialAttributesOnChild(n);
1925
+ }
1926
+ _setInitialAttributesOnChild(e) {
1927
+ e = this._getInnerElement(e);
1928
+ const t = this._elemIsActive(e), n = this._getOuterElement(e);
1929
+ e.setAttribute("aria-selected", t), n !== e && this._setAttributeIfNotExists(n, "role", "presentation"), t || e.setAttribute("tabindex", "-1"), this._setAttributeIfNotExists(e, "role", "tab"), this._setInitialAttributesOnTargetPanel(e);
1930
+ }
1931
+ _setInitialAttributesOnTargetPanel(e) {
1932
+ const t = f.getElementFromSelector(e);
1933
+ t && (this._setAttributeIfNotExists(t, "role", "tabpanel"), e.id && this._setAttributeIfNotExists(t, "aria-labelledby", `${e.id}`));
1934
+ }
1935
+ _toggleDropDown(e, t) {
1936
+ const n = this._getOuterElement(e);
1937
+ if (!n.classList.contains("dropdown")) return;
1938
+ const s = (o, r) => {
1939
+ const a = f.findOne(o, n);
1940
+ a && a.classList.toggle(r, t);
1941
+ };
1942
+ s(Qn, ke), s(".dropdown-menu", ui), n.setAttribute("aria-expanded", t);
1943
+ }
1944
+ _setAttributeIfNotExists(e, t, n) {
1945
+ e.hasAttribute(t) || e.setAttribute(t, n);
1946
+ }
1947
+ _elemIsActive(e) {
1948
+ return e.classList.contains(ke);
1949
+ }
1950
+ _getInnerElement(e) {
1951
+ return e.matches(di) ? e : f.findOne(di, e);
1952
+ }
1953
+ _getOuterElement(e) {
1954
+ return e.closest(".nav-item, .list-group-item") || e;
1955
+ }
1956
+ static jQueryInterface(e) {
1957
+ return this.each(function() {
1958
+ const t = ue.getOrCreateInstance(this);
1959
+ if (typeof e == "string") {
1960
+ if (t[e] === void 0 || e.startsWith("_") || e === "constructor") throw new TypeError(`No method named "${e}"`);
1961
+ t[e]();
1962
+ }
1963
+ });
1964
+ }
1965
+ }
1966
+ l.on(document, gr, Xn, function(i) {
1967
+ ["A", "AREA"].includes(this.tagName) && i.preventDefault(), me(this) || ue.getOrCreateInstance(this).show();
1968
+ }), l.on(window, br, () => {
1969
+ for (const i of f.find(wr)) ue.getOrCreateInstance(i);
1970
+ }), U(ue);
1971
+ const be = ".bs.toast", Ar = `mouseover${be}`, Er = `mouseout${be}`, Tr = `focusin${be}`, Cr = `focusout${be}`, Or = `hide${be}`, xr = `hidden${be}`, kr = `show${be}`, Sr = `shown${be}`, Yn = "hide", At = "show", Et = "showing", Lr = { animation: "boolean", autohide: "boolean", delay: "number" }, $r = { animation: !0, autohide: !0, delay: 5e3 };
1972
+ class Se extends J {
1973
+ constructor(e, t) {
1974
+ super(e, t), this._timeout = null, this._hasMouseInteraction = !1, this._hasKeyboardInteraction = !1, this._setListeners();
1975
+ }
1976
+ static get Default() {
1977
+ return $r;
1978
+ }
1979
+ static get DefaultType() {
1980
+ return Lr;
1981
+ }
1982
+ static get NAME() {
1983
+ return "toast";
1984
+ }
1985
+ show() {
1986
+ l.trigger(this._element, kr).defaultPrevented || (this._clearTimeout(), this._config.animation && this._element.classList.add("fade"), this._element.classList.remove(Yn), et(this._element), this._element.classList.add(At, Et), this._queueCallback(() => {
1987
+ this._element.classList.remove(Et), l.trigger(this._element, Sr), this._maybeScheduleHide();
1988
+ }, this._element, this._config.animation));
1989
+ }
1990
+ hide() {
1991
+ this.isShown() && (l.trigger(this._element, Or).defaultPrevented || (this._element.classList.add(Et), this._queueCallback(() => {
1992
+ this._element.classList.add(Yn), this._element.classList.remove(Et, At), l.trigger(this._element, xr);
1993
+ }, this._element, this._config.animation)));
1994
+ }
1995
+ dispose() {
1996
+ this._clearTimeout(), this.isShown() && this._element.classList.remove(At), super.dispose();
1997
+ }
1998
+ isShown() {
1999
+ return this._element.classList.contains(At);
2000
+ }
2001
+ _maybeScheduleHide() {
2002
+ this._config.autohide && (this._hasMouseInteraction || this._hasKeyboardInteraction || (this._timeout = setTimeout(() => {
2003
+ this.hide();
2004
+ }, this._config.delay)));
2005
+ }
2006
+ _onInteraction(e, t) {
2007
+ switch (e.type) {
2008
+ case "mouseover":
2009
+ case "mouseout":
2010
+ this._hasMouseInteraction = t;
2011
+ break;
2012
+ case "focusin":
2013
+ case "focusout":
2014
+ this._hasKeyboardInteraction = t;
2015
+ }
2016
+ if (t) return void this._clearTimeout();
2017
+ const n = e.relatedTarget;
2018
+ this._element === n || this._element.contains(n) || this._maybeScheduleHide();
2019
+ }
2020
+ _setListeners() {
2021
+ l.on(this._element, Ar, (e) => this._onInteraction(e, !0)), l.on(this._element, Er, (e) => this._onInteraction(e, !1)), l.on(this._element, Tr, (e) => this._onInteraction(e, !0)), l.on(this._element, Cr, (e) => this._onInteraction(e, !1));
2022
+ }
2023
+ _clearTimeout() {
2024
+ clearTimeout(this._timeout), this._timeout = null;
2025
+ }
2026
+ static jQueryInterface(e) {
2027
+ return this.each(function() {
2028
+ const t = Se.getOrCreateInstance(this, e);
2029
+ if (typeof e == "string") {
2030
+ if (t[e] === void 0) throw new TypeError(`No method named "${e}"`);
2031
+ t[e](this);
2032
+ }
2033
+ });
2034
+ }
2035
+ }
2036
+ ft(Se), U(Se);
2037
+ const Dr = Object.freeze(Object.defineProperty({ __proto__: null, Alert: He, Button: qe, Carousel: Ee, Collapse: Te, Dropdown: z, Modal: _e, Offcanvas: ie, Popover: Ue, ScrollSpy: Qe, Tab: ue, Toast: Se, Tooltip: ce }, Symbol.toStringTag, { value: "Module" }));
2038
+ [].slice.call(document.querySelectorAll('[data-bs-toggle="dropdown"]')).map(function(i) {
2039
+ let e = { boundary: i.getAttribute("data-bs-boundary") === "viewport" ? document.querySelector(".btn") : "clippingParents" };
2040
+ return new z(i, e);
2041
+ }), [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]')).map(function(i) {
2042
+ let e = { delay: { show: 50, hide: 50 }, html: i.getAttribute("data-bs-html") === "true", placement: i.getAttribute("data-bs-placement") ?? "auto" };
2043
+ return new ce(i, e);
2044
+ }), [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]')).map(function(i) {
2045
+ let e = { delay: { show: 50, hide: 50 }, html: i.getAttribute("data-bs-html") === "true", placement: i.getAttribute("data-bs-placement") ?? "auto" };
2046
+ return new Ue(i, e);
2047
+ }), [].slice.call(document.querySelectorAll('[data-bs-toggle="switch-icon"]')).map(function(i) {
2048
+ i.addEventListener("click", (e) => {
2049
+ e.stopPropagation(), i.classList.toggle("active");
2050
+ });
2051
+ }), (() => {
2052
+ const i = window.location.hash;
2053
+ i && [].slice.call(document.querySelectorAll('[data-bs-toggle="tab"]')).filter((e) => e.hash === i).map((e) => {
2054
+ new ue(e).show();
2055
+ });
2056
+ })(), [].slice.call(document.querySelectorAll('[data-bs-toggle="toast"]')).map(function(i) {
2057
+ if (!i.hasAttribute("data-bs-target")) return;
2058
+ const e = new Se(i.getAttribute("data-bs-target"));
2059
+ i.addEventListener("click", () => {
2060
+ e.show();
2061
+ });
2062
+ });
2063
+ const Jn = "tblr-", Gn = (i, e) => {
2064
+ const t = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(i);
2065
+ return t ? `rgba(${parseInt(t[1], 16)}, ${parseInt(t[2], 16)}, ${parseInt(t[3], 16)}, ${e})` : null;
2066
+ }, Ir = Object.freeze(Object.defineProperty({ __proto__: null, getColor: (i, e = 1) => {
2067
+ const t = getComputedStyle(document.body).getPropertyValue(`--${Jn}${i}`).trim();
2068
+ return e !== 1 ? Gn(t, e) : t;
2069
+ }, hexToRgba: Gn, prefix: Jn }, Symbol.toStringTag, { value: "Module" }));
2070
+ $.Alert = He, $.Button = qe, $.Carousel = Ee, $.Collapse = Te, $.Dropdown = z, $.Modal = _e, $.Offcanvas = ie, $.Popover = Ue, $.ScrollSpy = Qe, $.Tab = ue, $.Toast = Se, $.Tooltip = ce, $.bootstrap = Dr, $.tabler = Ir, Object.defineProperty($, Symbol.toStringTag, { value: "Module" });
2071
+ });
2072
+ })(ot, ot.exports)), ot.exports;
2073
+ }
2074
+ var ds = Ur();
2075
+ const Kr = /* @__PURE__ */ Br(ds), Qr = /* @__PURE__ */ Rr({
2076
+ __proto__: null,
2077
+ default: Kr
2078
+ }, [ds]), Yr = {
2079
+ // até o momento não usamos opções nem o app, mas deixei aqui caso precise no futuro
2080
+ install: (R, Ye) => {
2081
+ window.bootstrap = Qr, R.directive("required", Wr);
2082
+ }
2083
+ };
2084
+ export {
2085
+ Yr as S
2086
+ };