@kupola/kupola 1.5.4 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- class ct {
1
+ class ht {
2
2
  constructor(t = "app") {
3
3
  this.scope = t, this.hooks = /* @__PURE__ */ new Map(), this.state = "created", this.stateHistory = ["created"], this.transitions = /* @__PURE__ */ new Map([
4
4
  ["created", ["bootstrapped", "destroyed"]],
@@ -201,123 +201,123 @@ class ct {
201
201
  console.error(`[KupolaLifecycle] Unhandled error in ${t.phase}:`, t.error);
202
202
  }
203
203
  }
204
- const Ma = new ct("app");
205
- function Ta(i = "app") {
206
- return new ct(i);
204
+ const Ta = new ht("app");
205
+ function Ia(i = "app") {
206
+ return new ht(i);
207
207
  }
208
- const Se = /* @__PURE__ */ new Set(["__proto__", "prototype", "constructor"]);
209
- function Z(i) {
210
- return Se.has(i);
208
+ const Le = /* @__PURE__ */ new Set(["__proto__", "prototype", "constructor"]);
209
+ function Q(i) {
210
+ return Le.has(i);
211
211
  }
212
- function Le(i) {
212
+ function De(i) {
213
213
  return i ? i.trim() : "";
214
214
  }
215
- function De(i) {
215
+ function He(i) {
216
216
  return i ? i.replace(/^\s+/, "") : "";
217
217
  }
218
- function He(i) {
218
+ function Me(i) {
219
219
  return i ? i.replace(/\s+$/, "") : "";
220
220
  }
221
- function Me(i) {
221
+ function Te(i) {
222
222
  return i ? i.toUpperCase() : "";
223
223
  }
224
- function Te(i) {
224
+ function Ie(i) {
225
225
  return i ? i.toLowerCase() : "";
226
226
  }
227
- function Ie(i) {
227
+ function Ae(i) {
228
228
  return i ? i.charAt(0).toUpperCase() + i.slice(1) : "";
229
229
  }
230
- function Ae(i) {
230
+ function ze(i) {
231
231
  return i ? i.replace(/-(\w)/g, (t, e) => e ? e.toUpperCase() : "") : "";
232
232
  }
233
- function ze(i) {
233
+ function Pe(i) {
234
234
  return i ? i.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, "") : "";
235
235
  }
236
- function Pe(i, t, e = " ") {
236
+ function $e(i, t, e = " ") {
237
237
  return (String(i) || "").padStart(t, e);
238
238
  }
239
- function $e(i, t, e = " ") {
239
+ function Be(i, t, e = " ") {
240
240
  return (String(i) || "").padEnd(t, e);
241
241
  }
242
- function Be(i, t, e = "...") {
242
+ function qe(i, t, e = "...") {
243
243
  return !i || i.length <= t ? i || "" : i.slice(0, t) + e;
244
244
  }
245
- function qe(i, t, e) {
245
+ function Oe(i, t, e) {
246
246
  return i ? i.split(t).join(e) : "";
247
247
  }
248
- function Oe(i, t) {
248
+ function Fe(i, t) {
249
249
  return i ? i.replace(/\{\{(\w+)\}\}/g, (e, s) => t[s] !== void 0 ? t[s] : `{{${s}}}`) : "";
250
250
  }
251
- function Fe(i, t) {
251
+ function Ne(i, t) {
252
252
  return (i || "").startsWith(t);
253
253
  }
254
- function Ne(i, t) {
254
+ function Re(i, t) {
255
255
  return (i || "").endsWith(t);
256
256
  }
257
- function Re(i, t) {
257
+ function Ve(i, t) {
258
258
  return (i || "").includes(t);
259
259
  }
260
- function Ve(i, t) {
260
+ function Ke(i, t) {
261
261
  return (i || "").repeat(t);
262
262
  }
263
- function Ke(i) {
263
+ function We(i) {
264
264
  return (i || "").split("").reverse().join("");
265
265
  }
266
- function We(i, t) {
266
+ function Ue(i, t) {
267
267
  return !i || !t ? 0 : i.split(t).length - 1;
268
268
  }
269
- function Ue(i) {
269
+ function Ye(i) {
270
270
  if (!i) return "";
271
271
  const t = document.createElement("div");
272
272
  return t.textContent = i, t.innerHTML;
273
273
  }
274
- function Ye(i) {
274
+ function Xe(i) {
275
275
  if (!i) return "";
276
276
  const t = document.createElement("div");
277
277
  return t.innerHTML = i, t.textContent;
278
278
  }
279
- function Xe(i = 8) {
279
+ function je(i = 8) {
280
280
  const t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
281
281
  let e = "";
282
282
  for (let s = 0; s < i; s++)
283
283
  e += t.charAt(Math.floor(Math.random() * t.length));
284
284
  return e;
285
285
  }
286
- function je() {
286
+ function Je() {
287
287
  return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (i) => {
288
288
  const t = Math.random() * 16 | 0;
289
289
  return (i === "x" ? t : t & 3 | 8).toString(16);
290
290
  });
291
291
  }
292
- const Je = { trim: Le, trimLeft: De, trimRight: He, toUpperCase: Me, toLowerCase: Te, capitalize: Ie, camelize: Ae, hyphenate: ze, padStart: Pe, padEnd: $e, truncate: Be, replaceAll: qe, format: Oe, startsWith: Fe, endsWith: Ne, includes: Re, repeat: Ve, reverse: Ke, countOccurrences: We, escapeHtml: Ue, unescapeHtml: Ye, generateRandom: Xe, generateUUID: je };
292
+ const Ze = { trim: De, trimLeft: He, trimRight: Me, toUpperCase: Te, toLowerCase: Ie, capitalize: Ae, camelize: ze, hyphenate: Pe, padStart: $e, padEnd: Be, truncate: qe, replaceAll: Oe, format: Fe, startsWith: Ne, endsWith: Re, includes: Ve, repeat: Ke, reverse: We, countOccurrences: Ue, escapeHtml: Ye, unescapeHtml: Xe, generateRandom: je, generateUUID: Je };
293
293
  function Ge(i) {
294
294
  return Array.isArray(i);
295
295
  }
296
- function Ze(i) {
296
+ function Qe(i) {
297
297
  return !i || i.length === 0;
298
298
  }
299
- function Qe(i) {
299
+ function ts(i) {
300
300
  return i ? i.length : 0;
301
301
  }
302
- function ts(i, t) {
302
+ function es(i, t) {
303
303
  return i && i.length > 0 ? i[0] : t;
304
304
  }
305
- function es(i, t) {
305
+ function ss(i, t) {
306
306
  return i && i.length > 0 ? i[i.length - 1] : t;
307
307
  }
308
- function ss(i, t, e) {
308
+ function is(i, t, e) {
309
309
  return i && i[t] !== void 0 ? i[t] : e;
310
310
  }
311
- function is(i, t, e) {
311
+ function ns(i, t, e) {
312
312
  return i ? i.slice(t, e) : [];
313
313
  }
314
- function ns(...i) {
314
+ function rs(...i) {
315
315
  return i.reduce((t, e) => t.concat(e || []), []);
316
316
  }
317
- function rs(i, t = ",") {
317
+ function as(i, t = ",") {
318
318
  return i ? i.join(t) : "";
319
319
  }
320
- function as(i, t, e = 0) {
320
+ function os(i, t, e = 0) {
321
321
  if (!i) return -1;
322
322
  if (Number.isNaN(t)) {
323
323
  for (let s = e; s < i.length; s++)
@@ -326,7 +326,7 @@ function as(i, t, e = 0) {
326
326
  }
327
327
  return i.indexOf(t, e);
328
328
  }
329
- function os(i, t, e) {
329
+ function ls(i, t, e) {
330
330
  if (!i) return -1;
331
331
  if (Number.isNaN(t)) {
332
332
  const s = e !== void 0 ? e : i.length - 1;
@@ -336,78 +336,78 @@ function os(i, t, e) {
336
336
  }
337
337
  return i.lastIndexOf(t, e);
338
338
  }
339
- function ls(i, t) {
339
+ function cs(i, t) {
340
340
  return i ? i.includes(t) : !1;
341
341
  }
342
- function cs(i, ...t) {
342
+ function hs(i, ...t) {
343
343
  return i && i.push(...t), i;
344
344
  }
345
- function hs(i) {
345
+ function ds(i) {
346
346
  return i ? i.pop() : void 0;
347
347
  }
348
- function ds(i) {
348
+ function us(i) {
349
349
  return i ? i.shift() : void 0;
350
350
  }
351
- function us(i, ...t) {
351
+ function ps(i, ...t) {
352
352
  return i && i.unshift(...t), i;
353
353
  }
354
- function ps(i, t) {
354
+ function fs(i, t) {
355
355
  if (!i) return i;
356
356
  const e = Number.isNaN(t) ? i.findIndex((s) => Number.isNaN(s)) : i.indexOf(t);
357
357
  return e > -1 && i.splice(e, 1), i;
358
358
  }
359
- function fs(i, t) {
359
+ function ms(i, t) {
360
360
  return !i || t < 0 || t >= i.length || i.splice(t, 1), i;
361
361
  }
362
- function ms(i, t, e) {
362
+ function gs(i, t, e) {
363
363
  return i && (i.splice(t, 0, e), i);
364
364
  }
365
- function gs(i) {
365
+ function _s(i) {
366
366
  return i ? i.slice().reverse() : [];
367
367
  }
368
- function _s(i, t) {
368
+ function ys(i, t) {
369
369
  return i ? i.slice().sort(t) : [];
370
370
  }
371
- function ys(i, t, e = "asc") {
371
+ function vs(i, t, e = "asc") {
372
372
  return i ? i.slice().sort((s, n) => {
373
373
  const r = typeof s == "object" ? s[t] : s, a = typeof n == "object" ? n[t] : n;
374
374
  return r < a ? e === "asc" ? -1 : 1 : r > a ? e === "asc" ? 1 : -1 : 0;
375
375
  }) : [];
376
376
  }
377
- function vs(i, t) {
377
+ function bs(i, t) {
378
378
  return i ? i.filter(t) : [];
379
379
  }
380
- function bs(i, t) {
380
+ function xs(i, t) {
381
381
  return i ? i.map(t) : [];
382
382
  }
383
- function xs(i, t, e) {
383
+ function Es(i, t, e) {
384
384
  return i ? i.reduce(t, e) : e;
385
385
  }
386
- function Es(i, t) {
386
+ function ws(i, t) {
387
387
  i && i.forEach(t);
388
388
  }
389
- function ws(i, t) {
389
+ function ks(i, t) {
390
390
  return i ? i.every(t) : !0;
391
391
  }
392
- function ks(i, t) {
392
+ function Cs(i, t) {
393
393
  return i ? i.some(t) : !1;
394
394
  }
395
- function Cs(i, t) {
395
+ function Ss(i, t) {
396
396
  return i ? i.find(t) : void 0;
397
397
  }
398
- function Ss(i, t) {
398
+ function Ls(i, t) {
399
399
  return i ? i.findIndex(t) : -1;
400
400
  }
401
- function Ls(i, t = 1) {
401
+ function Ds(i, t = 1) {
402
402
  return i ? i.flat(t) : [];
403
403
  }
404
- function Ct(i) {
405
- return i ? i.reduce((t, e) => Array.isArray(e) ? t.concat(Ct(e)) : t.concat(e), []) : [];
404
+ function St(i) {
405
+ return i ? i.reduce((t, e) => Array.isArray(e) ? t.concat(St(e)) : t.concat(e), []) : [];
406
406
  }
407
- function Ds(i) {
407
+ function Hs(i) {
408
408
  return i ? [...new Set(i)] : [];
409
409
  }
410
- function Hs(i, t) {
410
+ function Ms(i, t) {
411
411
  if (!i) return [];
412
412
  const e = /* @__PURE__ */ new Set();
413
413
  return i.filter((s) => {
@@ -415,14 +415,14 @@ function Hs(i, t) {
415
415
  return e.has(n) ? !1 : (e.add(n), !0);
416
416
  });
417
417
  }
418
- function Ms(i, t) {
418
+ function Ts(i, t) {
419
419
  if (!i || t <= 0) return [];
420
420
  const e = [];
421
421
  for (let s = 0; s < i.length; s += t)
422
422
  e.push(i.slice(s, s + t));
423
423
  return e;
424
424
  }
425
- function Ts(i) {
425
+ function Is(i) {
426
426
  if (!i) return [];
427
427
  const t = i.slice();
428
428
  for (let e = t.length - 1; e > 0; e--) {
@@ -431,103 +431,103 @@ function Ts(i) {
431
431
  }
432
432
  return t;
433
433
  }
434
- function St(i) {
434
+ function Lt(i) {
435
435
  return i ? i.reduce((t, e) => t + (Number(e) || 0), 0) : 0;
436
436
  }
437
- function Is(i) {
438
- return !i || i.length === 0 ? 0 : St(i) / i.length;
439
- }
440
437
  function As(i) {
441
- return i && i.length > 0 ? Math.max(...i) : -1 / 0;
438
+ return !i || i.length === 0 ? 0 : Lt(i) / i.length;
442
439
  }
443
440
  function zs(i) {
441
+ return i && i.length > 0 ? Math.max(...i) : -1 / 0;
442
+ }
443
+ function Ps(i) {
444
444
  return i && i.length > 0 ? Math.min(...i) : 1 / 0;
445
445
  }
446
- function Ps(...i) {
446
+ function $s(...i) {
447
447
  return i.length === 0 ? [] : i.reduce((t, e) => t.filter((s) => e && e.includes(s)));
448
448
  }
449
- function $s(...i) {
449
+ function Bs(...i) {
450
450
  return [...new Set(i.flat().filter(Boolean))];
451
451
  }
452
- function Bs(i, t) {
452
+ function qs(i, t) {
453
453
  return i ? i.filter((e) => !t || !t.includes(e)) : [];
454
454
  }
455
- function qs(...i) {
455
+ function Os(...i) {
456
456
  if (i.length === 0) return [];
457
457
  const t = Math.max(...i.map((e) => e ? e.length : 0));
458
458
  return Array.from({ length: t }, (e, s) => i.map((n) => n && n[s]));
459
459
  }
460
- const Os = { isArray: Ge, isEmpty: Ze, size: Qe, first: ts, last: es, get: ss, slice: is, concat: ns, join: rs, indexOf: as, lastIndexOf: os, includes: ls, push: cs, pop: hs, shift: ds, unshift: us, remove: ps, removeAt: fs, insert: ms, reverse: gs, sort: _s, sortBy: ys, filter: vs, map: bs, reduce: xs, forEach: Es, every: ws, some: ks, find: Cs, findIndex: Ss, flat: Ls, flattenDeep: Ct, unique: Ds, uniqueBy: Hs, chunk: Ms, shuffle: Ts, sum: St, average: Is, max: As, min: zs, intersection: Ps, union: $s, difference: Bs, zip: qs };
461
- function nt(i) {
460
+ const Fs = { isArray: Ge, isEmpty: Qe, size: ts, first: es, last: ss, get: is, slice: ns, concat: rs, join: as, indexOf: os, lastIndexOf: ls, includes: cs, push: hs, pop: ds, shift: us, unshift: ps, remove: fs, removeAt: ms, insert: gs, reverse: _s, sort: ys, sortBy: vs, filter: bs, map: xs, reduce: Es, forEach: ws, every: ks, some: Cs, find: Ss, findIndex: Ls, flat: Ds, flattenDeep: St, unique: Hs, uniqueBy: Ms, chunk: Ts, shuffle: Is, sum: Lt, average: As, max: zs, min: Ps, intersection: $s, union: Bs, difference: qs, zip: Os };
461
+ function rt(i) {
462
462
  return i !== null && typeof i == "object" && !Array.isArray(i);
463
463
  }
464
- function Fs(i) {
464
+ function Ns(i) {
465
465
  return !i || typeof i != "object" ? !0 : Object.keys(i).length === 0;
466
466
  }
467
- function Ns(i) {
467
+ function Rs(i) {
468
468
  return i ? Object.keys(i) : [];
469
469
  }
470
- function Rs(i) {
470
+ function Vs(i) {
471
471
  return i ? Object.values(i) : [];
472
472
  }
473
- function Vs(i) {
473
+ function Ks(i) {
474
474
  return i ? Object.entries(i) : [];
475
475
  }
476
- function Ks(i, t) {
476
+ function Ws(i, t) {
477
477
  return i ? Object.prototype.hasOwnProperty.call(i, t) : !1;
478
478
  }
479
- function Ws(i, t, e) {
479
+ function Us(i, t, e) {
480
480
  if (!i) return e;
481
481
  const s = t.split(".");
482
- return s.some(Z) ? e : s.reduce((n, r) => n && n[r], i) ?? e;
482
+ return s.some(Q) ? e : s.reduce((n, r) => n && n[r], i) ?? e;
483
483
  }
484
- function Us(i, t, e) {
484
+ function Ys(i, t, e) {
485
485
  if (!i || typeof i != "object") return i;
486
486
  const s = t.split(".");
487
- if (s.some(Z)) return i;
487
+ if (s.some(Q)) return i;
488
488
  const n = s.pop();
489
489
  let r = i;
490
490
  return s.forEach((a) => {
491
491
  (!r[a] || typeof r[a] != "object") && (r[a] = {}), r = r[a];
492
492
  }), r[n] = e, i;
493
493
  }
494
- function Ys(i, t) {
494
+ function Xs(i, t) {
495
495
  return i ? t.reduce((e, s) => (i[s] !== void 0 && (e[s] = i[s]), e), {}) : {};
496
496
  }
497
- function Xs(i, t) {
497
+ function js(i, t) {
498
498
  return i ? Object.keys(i).reduce((e, s) => (t.includes(s) || (e[s] = i[s]), e), {}) : {};
499
499
  }
500
- function Lt(...i) {
500
+ function Dt(...i) {
501
501
  return i.reduce((t, e) => (e && typeof e == "object" && Object.keys(e).forEach((s) => {
502
- Z(s) || (nt(e[s]) && nt(t[s]) ? t[s] = Lt(t[s], e[s]) : t[s] = e[s]);
502
+ Q(s) || (rt(e[s]) && rt(t[s]) ? t[s] = Dt(t[s], e[s]) : t[s] = e[s]);
503
503
  }), t), {});
504
504
  }
505
- function js(i) {
505
+ function Js(i) {
506
506
  return i && JSON.parse(JSON.stringify(i));
507
507
  }
508
- function U(i, t = /* @__PURE__ */ new WeakMap()) {
508
+ function Y(i, t = /* @__PURE__ */ new WeakMap()) {
509
509
  if (!i || typeof i != "object") return i;
510
510
  if (t.has(i)) return t.get(i);
511
511
  if (i instanceof Date) return new Date(i);
512
512
  if (i instanceof RegExp) return new RegExp(i);
513
513
  if (i instanceof Map) {
514
514
  const s = /* @__PURE__ */ new Map();
515
- return t.set(i, s), i.forEach((n, r) => s.set(r, U(n, t))), s;
515
+ return t.set(i, s), i.forEach((n, r) => s.set(r, Y(n, t))), s;
516
516
  }
517
517
  if (i instanceof Set) {
518
518
  const s = /* @__PURE__ */ new Set();
519
- return t.set(i, s), i.forEach((n) => s.add(U(n, t))), s;
519
+ return t.set(i, s), i.forEach((n) => s.add(Y(n, t))), s;
520
520
  }
521
521
  if (Array.isArray(i)) {
522
522
  const s = [];
523
- return t.set(i, s), i.forEach((n) => s.push(U(n, t))), s;
523
+ return t.set(i, s), i.forEach((n) => s.push(Y(n, t))), s;
524
524
  }
525
525
  const e = {};
526
526
  return t.set(i, e), Object.keys(i).forEach((s) => {
527
- Z(s) || (e[s] = U(i[s], t));
527
+ Q(s) || (e[s] = Y(i[s], t));
528
528
  }), e;
529
529
  }
530
- function Js(i, t) {
530
+ function Zs(i, t) {
531
531
  i && Object.keys(i).forEach((e) => t(i[e], e, i));
532
532
  }
533
533
  function Gs(i, t) {
@@ -537,286 +537,286 @@ function Gs(i, t) {
537
537
  e[s] = t(i[s], s, i);
538
538
  }), e;
539
539
  }
540
- function Zs(i, t) {
540
+ function Qs(i, t) {
541
541
  if (!i) return {};
542
542
  const e = {};
543
543
  return Object.keys(i).forEach((s) => {
544
544
  t(i[s], s, i) && (e[s] = i[s]);
545
545
  }), e;
546
546
  }
547
- function Qs(i, t, e) {
547
+ function ti(i, t, e) {
548
548
  return i ? Object.keys(i).reduce((s, n) => t(s, i[n], n, i), e) : e;
549
549
  }
550
- function ti(i) {
550
+ function ei(i) {
551
551
  return i ? Object.keys(i).map((t) => ({ key: t, value: i[t] })) : [];
552
552
  }
553
- function ei(i, t, e) {
553
+ function si(i, t, e) {
554
554
  return i ? i.reduce((s, n) => {
555
555
  const r = typeof n == "object" ? n[t] : n, a = e ? n[e] : n;
556
556
  return r !== void 0 && (s[r] = a), s;
557
557
  }, {}) : {};
558
558
  }
559
- function si(i) {
559
+ function ii(i) {
560
560
  return i ? Object.keys(i).length : 0;
561
561
  }
562
- function ii(i) {
562
+ function ni(i) {
563
563
  if (!i) return {};
564
564
  const t = {};
565
565
  return Object.keys(i).forEach((e) => {
566
566
  t[i[e]] = e;
567
567
  }), t;
568
568
  }
569
- function Dt(i, t) {
569
+ function Ht(i, t) {
570
570
  if (i === t) return !0;
571
571
  if (!i || !t || typeof i != "object" || typeof t != "object") return !1;
572
572
  const e = Object.keys(i), s = Object.keys(t);
573
- return e.length !== s.length ? !1 : e.every((n) => Dt(i[n], t[n]));
573
+ return e.length !== s.length ? !1 : e.every((n) => Ht(i[n], t[n]));
574
574
  }
575
- function Ht(i) {
575
+ function Mt(i) {
576
576
  return i && (Object.freeze(i), Object.keys(i).forEach((t) => {
577
- typeof i[t] == "object" && Ht(i[t]);
577
+ typeof i[t] == "object" && Mt(i[t]);
578
578
  }), i);
579
579
  }
580
- function ni(i) {
580
+ function ri(i) {
581
581
  return i && Object.seal(i);
582
582
  }
583
- const ri = { isObject: nt, isEmpty: Fs, keys: Ns, values: Rs, entries: Vs, has: Ks, get: Ws, set: Us, pick: Ys, omit: Xs, merge: Lt, clone: js, deepClone: U, forEach: Js, map: Gs, filter: Zs, reduce: Qs, toArray: ti, fromArray: ei, size: si, invert: ii, isEqual: Dt, freeze: Ht, seal: ni };
583
+ const ai = { isObject: rt, isEmpty: Ns, keys: Rs, values: Vs, entries: Ks, has: Ws, get: Us, set: Ys, pick: Xs, omit: js, merge: Dt, clone: Js, deepClone: Y, forEach: Zs, map: Gs, filter: Qs, reduce: ti, toArray: ei, fromArray: si, size: ii, invert: ni, isEqual: Ht, freeze: Mt, seal: ri };
584
584
  function L(i) {
585
585
  return typeof i == "number" && !isNaN(i);
586
586
  }
587
- function ai(i) {
587
+ function oi(i) {
588
588
  return Number.isInteger(i);
589
589
  }
590
- function oi(i) {
590
+ function li(i) {
591
591
  return L(i) && !Number.isInteger(i);
592
592
  }
593
- function li(i) {
593
+ function ci(i) {
594
594
  return L(i) && i > 0;
595
595
  }
596
- function ci(i) {
596
+ function hi(i) {
597
597
  return L(i) && i < 0;
598
598
  }
599
- function hi(i) {
599
+ function di(i) {
600
600
  return L(i) && i === 0;
601
601
  }
602
- function di(i, t, e) {
602
+ function ui(i, t, e) {
603
603
  return L(i) ? Math.min(Math.max(i, t), e) : i;
604
604
  }
605
- function ui(i, t = 0) {
605
+ function pi(i, t = 0) {
606
606
  if (!L(i)) return i;
607
607
  const e = Math.pow(10, t);
608
608
  return Math.round(i * e) / e;
609
609
  }
610
- function pi(i) {
610
+ function fi(i) {
611
611
  return L(i) ? Math.floor(i) : i;
612
612
  }
613
- function fi(i) {
613
+ function mi(i) {
614
614
  return L(i) ? Math.ceil(i) : i;
615
615
  }
616
- function mi(i) {
616
+ function gi(i) {
617
617
  return L(i) ? Math.abs(i) : i;
618
618
  }
619
- function gi(...i) {
619
+ function _i(...i) {
620
620
  const t = i.filter(L);
621
621
  return t.length > 0 ? Math.min(...t) : void 0;
622
622
  }
623
- function _i(...i) {
623
+ function yi(...i) {
624
624
  const t = i.filter(L);
625
625
  return t.length > 0 ? Math.max(...t) : void 0;
626
626
  }
627
- function Mt(...i) {
627
+ function Tt(...i) {
628
628
  return i.flat().filter(L).reduce((e, s) => e + s, 0);
629
629
  }
630
- function yi(...i) {
630
+ function vi(...i) {
631
631
  const t = i.flat().filter(L);
632
- return t.length > 0 ? Mt(t) / t.length : 0;
632
+ return t.length > 0 ? Tt(t) / t.length : 0;
633
633
  }
634
- function Tt(i = 0, t = 1) {
634
+ function It(i = 0, t = 1) {
635
635
  return Math.random() * (t - i) + i;
636
636
  }
637
- function vi(i, t) {
638
- return Math.floor(Tt(i, t + 1));
637
+ function bi(i, t) {
638
+ return Math.floor(It(i, t + 1));
639
639
  }
640
- function bi(i, t = 2) {
640
+ function xi(i, t = 2) {
641
641
  return L(i) ? i.toFixed(t) : String(i);
642
642
  }
643
- function xi(i, t = "CNY", e = 2) {
643
+ function Ei(i, t = "CNY", e = 2) {
644
644
  return L(i) ? new Intl.NumberFormat("zh-CN", { style: "currency", currency: t, minimumFractionDigits: e, maximumFractionDigits: e }).format(i) : String(i);
645
645
  }
646
- function Ei(i, t = 0) {
646
+ function wi(i, t = 0) {
647
647
  return L(i) ? `${(i * 100).toFixed(t)}%` : String(i);
648
648
  }
649
- function wi(i, t = 0) {
649
+ function ki(i, t = 0) {
650
650
  return L(i) ? i.toFixed(t) : String(i);
651
651
  }
652
- function ki(i, t = 6) {
652
+ function Ci(i, t = 6) {
653
653
  return L(i) ? i.toPrecision(t) : String(i);
654
654
  }
655
- function Ci(i) {
655
+ function Si(i) {
656
656
  return Number.isNaN(i);
657
657
  }
658
- function Si(i) {
658
+ function Li(i) {
659
659
  return Number.isFinite(i);
660
660
  }
661
- function Li(i, t = 10) {
661
+ function Di(i, t = 10) {
662
662
  return Number.parseInt(i, t);
663
663
  }
664
- function Di(i) {
664
+ function Hi(i) {
665
665
  return Number.parseFloat(i);
666
666
  }
667
- function Hi(i, t = 0) {
667
+ function Mi(i, t = 0) {
668
668
  const e = Number(i);
669
669
  return isNaN(e) ? t : e;
670
670
  }
671
- function Mi(i, t, e = 0) {
671
+ function Ti(i, t, e = 0) {
672
672
  return !L(i) || !L(t) || t === 0 ? e : i / t;
673
673
  }
674
- function Ti(...i) {
674
+ function Ii(...i) {
675
675
  return i.reduce((t, e) => !L(t) || !L(e) ? 0 : t * e, 1);
676
676
  }
677
- const Ii = { isNumber: L, isInteger: ai, isFloat: oi, isPositive: li, isNegative: ci, isZero: hi, clamp: di, round: ui, floor: pi, ceil: fi, abs: mi, min: gi, max: _i, sum: Mt, average: yi, random: Tt, randomInt: vi, format: bi, formatCurrency: xi, formatPercent: Ei, toFixed: wi, toPrecision: ki, isNaN: Ci, isFinite: Si, parseInt: Li, parseFloat: Di, toNumber: Hi, safeDivide: Mi, safeMultiply: Ti };
678
- function Q() {
677
+ const Ai = { isNumber: L, isInteger: oi, isFloat: li, isPositive: ci, isNegative: hi, isZero: di, clamp: ui, round: pi, floor: fi, ceil: mi, abs: gi, min: _i, max: yi, sum: Tt, average: vi, random: It, randomInt: bi, format: xi, formatCurrency: Ei, formatPercent: wi, toFixed: ki, toPrecision: Ci, isNaN: Si, isFinite: Li, parseInt: Di, parseFloat: Hi, toNumber: Mi, safeDivide: Ti, safeMultiply: Ii };
678
+ function tt() {
679
679
  return Date.now();
680
680
  }
681
681
  function K() {
682
682
  const i = /* @__PURE__ */ new Date();
683
683
  return i.setHours(0, 0, 0, 0), i;
684
684
  }
685
- function Ai() {
685
+ function zi() {
686
686
  const i = K();
687
687
  return i.setDate(i.getDate() + 1), i;
688
688
  }
689
- function zi() {
689
+ function Pi() {
690
690
  const i = K();
691
691
  return i.setDate(i.getDate() - 1), i;
692
692
  }
693
693
  function w(i) {
694
694
  return i instanceof Date && !isNaN(i.getTime());
695
695
  }
696
- function It(i) {
696
+ function At(i) {
697
697
  return w(i);
698
698
  }
699
- function Pi(i) {
699
+ function $i(i) {
700
700
  const t = new Date(i);
701
- return It(t) ? t : null;
701
+ return At(t) ? t : null;
702
702
  }
703
- function $i(i, t = "YYYY-MM-DD HH:mm:ss") {
703
+ function Bi(i, t = "YYYY-MM-DD HH:mm:ss") {
704
704
  if (!w(i)) return "";
705
705
  const e = i.getFullYear(), s = String(i.getMonth() + 1).padStart(2, "0"), n = String(i.getDate()).padStart(2, "0"), r = String(i.getHours()).padStart(2, "0"), a = String(i.getMinutes()).padStart(2, "0"), o = String(i.getSeconds()).padStart(2, "0"), l = String(i.getMilliseconds()).padStart(3, "0"), h = ["日", "一", "二", "三", "四", "五", "六"][i.getDay()];
706
706
  return t.replace("YYYY", e).replace("MM", s).replace("DD", n).replace("HH", r).replace("mm", a).replace("ss", o).replace("SSS", l).replace("D", i.getDate()).replace("M", i.getMonth() + 1).replace("H", i.getHours()).replace("m", i.getMinutes()).replace("s", i.getSeconds()).replace("W", h);
707
707
  }
708
- function Bi(i) {
708
+ function qi(i) {
709
709
  return w(i) ? i.toISOString() : "";
710
710
  }
711
- function qi(i) {
711
+ function Oi(i) {
712
712
  return w(i) ? new Date(i.toUTCString()) : null;
713
713
  }
714
- function Oi(i, t) {
714
+ function Fi(i, t) {
715
715
  if (!w(i)) return i;
716
716
  const e = new Date(i);
717
717
  return e.setDate(e.getDate() + t), e;
718
718
  }
719
- function Fi(i, t) {
719
+ function Ni(i, t) {
720
720
  if (!w(i)) return i;
721
721
  const e = new Date(i);
722
722
  return e.setHours(e.getHours() + t), e;
723
723
  }
724
- function Ni(i, t) {
724
+ function Ri(i, t) {
725
725
  if (!w(i)) return i;
726
726
  const e = new Date(i);
727
727
  return e.setMinutes(e.getMinutes() + t), e;
728
728
  }
729
- function Ri(i, t) {
729
+ function Vi(i, t) {
730
730
  if (!w(i)) return i;
731
731
  const e = new Date(i);
732
732
  return e.setSeconds(e.getSeconds() + t), e;
733
733
  }
734
- function tt(i, t) {
734
+ function et(i, t) {
735
735
  if (!w(i) || !w(t)) return 0;
736
736
  const e = new Date(i);
737
737
  e.setHours(0, 0, 0, 0);
738
738
  const s = new Date(t);
739
739
  return s.setHours(0, 0, 0, 0), Math.floor((e.getTime() - s.getTime()) / (1e3 * 60 * 60 * 24));
740
740
  }
741
- function Vi(i, t) {
741
+ function Ki(i, t) {
742
742
  return !w(i) || !w(t) ? 0 : Math.floor((i.getTime() - t.getTime()) / (1e3 * 60 * 60));
743
743
  }
744
- function Ki(i, t) {
744
+ function Wi(i, t) {
745
745
  return !w(i) || !w(t) ? 0 : Math.floor((i.getTime() - t.getTime()) / (1e3 * 60));
746
746
  }
747
- function Wi(i, t) {
747
+ function Ui(i, t) {
748
748
  return !w(i) || !w(t) ? 0 : Math.floor((i.getTime() - t.getTime()) / 1e3);
749
749
  }
750
- function Ui(i) {
751
- return w(i) ? tt(i, K()) === 0 : !1;
752
- }
753
750
  function Yi(i) {
754
- return w(i) ? tt(i, K()) === -1 : !1;
751
+ return w(i) ? et(i, K()) === 0 : !1;
755
752
  }
756
753
  function Xi(i) {
757
- return w(i) ? tt(i, K()) === 1 : !1;
754
+ return w(i) ? et(i, K()) === -1 : !1;
758
755
  }
759
756
  function ji(i) {
760
- return w(i) ? i.getTime() > Q() : !1;
757
+ return w(i) ? et(i, K()) === 1 : !1;
761
758
  }
762
759
  function Ji(i) {
763
- return w(i) ? i.getTime() < Q() : !1;
760
+ return w(i) ? i.getTime() > tt() : !1;
761
+ }
762
+ function Zi(i) {
763
+ return w(i) ? i.getTime() < tt() : !1;
764
764
  }
765
765
  function Gi(i) {
766
766
  if (!w(i)) return !1;
767
767
  const t = i.getFullYear();
768
768
  return t % 4 === 0 && (t % 100 !== 0 || t % 400 === 0);
769
769
  }
770
- function Zi(i) {
770
+ function Qi(i) {
771
771
  return w(i) ? new Date(i.getFullYear(), i.getMonth() + 1, 0).getDate() : 0;
772
772
  }
773
- function Qi(i) {
773
+ function tn(i) {
774
774
  if (!w(i)) return 0;
775
775
  const t = new Date(i.getFullYear(), 0, 1), e = i.getTime() - t.getTime();
776
776
  return Math.ceil(e / (1e3 * 60 * 60 * 24 * 7));
777
777
  }
778
- function tn(i) {
778
+ function en(i) {
779
779
  return w(i) ? Math.ceil((i.getMonth() + 1) / 3) : 0;
780
780
  }
781
- function en(i) {
781
+ function sn(i) {
782
782
  if (!w(i)) return i;
783
783
  const t = new Date(i);
784
784
  return t.setHours(0, 0, 0, 0), t;
785
785
  }
786
- function sn(i) {
786
+ function nn(i) {
787
787
  if (!w(i)) return i;
788
788
  const t = new Date(i);
789
789
  return t.setHours(23, 59, 59, 999), t;
790
790
  }
791
- function nn(i) {
791
+ function rn(i) {
792
792
  return w(i) ? new Date(i.getFullYear(), i.getMonth(), 1) : i;
793
793
  }
794
- function rn(i) {
794
+ function an(i) {
795
795
  return w(i) ? new Date(i.getFullYear(), i.getMonth() + 1, 0, 23, 59, 59, 999) : i;
796
796
  }
797
- function At(i, t = 1) {
797
+ function zt(i, t = 1) {
798
798
  if (!w(i)) return i;
799
799
  const e = new Date(i), s = e.getDay(), n = s >= t ? s - t : s + (7 - t);
800
800
  return e.setDate(e.getDate() - n), e.setHours(0, 0, 0, 0), e;
801
801
  }
802
- function an(i, t = 1) {
802
+ function on(i, t = 1) {
803
803
  if (!w(i)) return i;
804
- const e = At(i, t), s = new Date(e);
804
+ const e = zt(i, t), s = new Date(e);
805
805
  return s.setDate(s.getDate() + 6), s.setHours(23, 59, 59, 999), s;
806
806
  }
807
- function on(i) {
807
+ function ln(i) {
808
808
  if (!w(i)) return 0;
809
809
  const t = /* @__PURE__ */ new Date();
810
810
  let e = t.getFullYear() - i.getFullYear();
811
811
  return (t.getMonth() < i.getMonth() || t.getMonth() === i.getMonth() && t.getDate() < i.getDate()) && e--, Math.max(0, e);
812
812
  }
813
- function ln(i) {
813
+ function cn(i) {
814
814
  if (!w(i)) return "";
815
- const e = Q() - i.getTime(), s = 60 * 1e3, n = 60 * s, r = 24 * n, a = 7 * r, o = 30 * r, l = 365 * r;
815
+ const e = tt() - i.getTime(), s = 60 * 1e3, n = 60 * s, r = 24 * n, a = 7 * r, o = 30 * r, l = 365 * r;
816
816
  return e < s ? "刚刚" : e < n ? `${Math.floor(e / s)}分钟前` : e < r ? `${Math.floor(e / n)}小时前` : e < a ? `${Math.floor(e / r)}天前` : e < o ? `${Math.floor(e / a)}周前` : e < l ? `${Math.floor(e / o)}个月前` : `${Math.floor(e / l)}年前`;
817
817
  }
818
- const cn = { now: Q, today: K, tomorrow: Ai, yesterday: zi, isDate: w, isValid: It, parse: Pi, format: $i, toISO: Bi, toUTC: qi, addDays: Oi, addHours: Fi, addMinutes: Ni, addSeconds: Ri, diffDays: tt, diffHours: Vi, diffMinutes: Ki, diffSeconds: Wi, isToday: Ui, isYesterday: Yi, isTomorrow: Xi, isFuture: ji, isPast: Ji, isLeapYear: Gi, getDaysInMonth: Zi, getWeekOfYear: Qi, getQuarter: tn, startOfDay: en, endOfDay: sn, startOfMonth: nn, endOfMonth: rn, startOfWeek: At, endOfWeek: an, getAge: on, fromNow: ln };
819
- function hn(i, t, e = {}) {
818
+ const hn = { now: tt, today: K, tomorrow: zi, yesterday: Pi, isDate: w, isValid: At, parse: $i, format: Bi, toISO: qi, toUTC: Oi, addDays: Fi, addHours: Ni, addMinutes: Ri, addSeconds: Vi, diffDays: et, diffHours: Ki, diffMinutes: Wi, diffSeconds: Ui, isToday: Yi, isYesterday: Xi, isTomorrow: ji, isFuture: Ji, isPast: Zi, isLeapYear: Gi, getDaysInMonth: Qi, getWeekOfYear: tn, getQuarter: en, startOfDay: sn, endOfDay: nn, startOfMonth: rn, endOfMonth: an, startOfWeek: zt, endOfWeek: on, getAge: ln, fromNow: cn };
819
+ function dn(i, t, e = {}) {
820
820
  let s = null, n = null, r = null, a = 0;
821
821
  const o = e.leading || !1, l = e.trailing !== !1;
822
822
  function c() {
@@ -835,7 +835,7 @@ function hn(i, t, e = {}) {
835
835
  n = f, r = this, a = Date.now(), s ? (clearTimeout(s), s = setTimeout(d, u())) : h();
836
836
  };
837
837
  }
838
- function dn(i, t, e = {}) {
838
+ function un(i, t, e = {}) {
839
839
  let s = !1;
840
840
  const n = e.trailing || !1;
841
841
  let r = null, a = null;
@@ -848,31 +848,31 @@ function dn(i, t, e = {}) {
848
848
  }, t));
849
849
  };
850
850
  }
851
- function un(i) {
851
+ function pn(i) {
852
852
  return /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(i || "");
853
853
  }
854
- function pn(i) {
854
+ function fn(i) {
855
855
  return /^1[3-9]\d{9}$/.test(i || "");
856
856
  }
857
- function fn(i) {
857
+ function mn(i) {
858
858
  return /^(https?:\/\/)?([\da-z.-]+)\.([a-z.]{2,6})([/\w.-]*)*\/?$/.test(i || "");
859
859
  }
860
- function zt(i) {
860
+ function Pt(i) {
861
861
  return /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(i || "");
862
862
  }
863
- function Pt(i) {
863
+ function $t(i) {
864
864
  return /^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$/.test(i || "");
865
865
  }
866
- function mn(i) {
867
- return zt(i) || Pt(i);
868
- }
869
866
  function gn(i) {
870
- return /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(i || "");
867
+ return Pt(i) || $t(i);
871
868
  }
872
869
  function _n(i) {
873
- return /^[A-Z][0-9]{8}$|^[A-Z]{2}[0-9]{7}$/.test(i || "");
870
+ return /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(i || "");
874
871
  }
875
872
  function yn(i) {
873
+ return /^[A-Z][0-9]{8}$|^[A-Z]{2}[0-9]{7}$/.test(i || "");
874
+ }
875
+ function vn(i) {
876
876
  const t = /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9]{2})[0-9]{12}|3[47][0-9]{13})$/, e = i.replace(/\s/g, "");
877
877
  if (!t.test(e)) return !1;
878
878
  let s = 0, n = !1;
@@ -882,113 +882,113 @@ function yn(i) {
882
882
  }
883
883
  return s % 10 === 0;
884
884
  }
885
- function $t(i) {
885
+ function Bt(i) {
886
886
  return /^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(i || "");
887
887
  }
888
- function Bt(i) {
888
+ function qt(i) {
889
889
  const t = /^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/.exec(i || "");
890
890
  return t ? t.slice(1).every((e) => parseInt(e) >= 0 && parseInt(e) <= 255) : !1;
891
891
  }
892
- function qt(i) {
892
+ function Ot(i) {
893
893
  const t = /^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*([01]|0\.\d+)\)$/.exec(i || "");
894
894
  if (!t) return !1;
895
895
  const [, e, s, n, r] = t;
896
896
  return parseInt(e) >= 0 && parseInt(e) <= 255 && parseInt(s) >= 0 && parseInt(s) <= 255 && parseInt(n) >= 0 && parseInt(n) <= 255 && parseFloat(r) >= 0 && parseFloat(r) <= 1;
897
897
  }
898
- function vn(i) {
899
- return $t(i) || Bt(i) || qt(i);
900
- }
901
898
  function bn(i) {
902
- return !isNaN(new Date(i).getTime());
899
+ return Bt(i) || qt(i) || Ot(i);
903
900
  }
904
901
  function xn(i) {
902
+ return !isNaN(new Date(i).getTime());
903
+ }
904
+ function En(i) {
905
905
  try {
906
906
  return JSON.parse(i), !0;
907
907
  } catch {
908
908
  return !1;
909
909
  }
910
910
  }
911
- function En(i) {
911
+ function wn(i) {
912
912
  return !i || i.trim() === "";
913
913
  }
914
- function wn(i) {
914
+ function kn(i) {
915
915
  return /^\s+$/.test(i || "");
916
916
  }
917
- function kn(i) {
917
+ function Cn(i) {
918
918
  return !isNaN(parseFloat(i)) && isFinite(i);
919
919
  }
920
- function Cn(i) {
920
+ function Sn(i) {
921
921
  return /^-?\d+$/.test(i || "");
922
922
  }
923
- function Sn(i) {
923
+ function Ln(i) {
924
924
  return /^-?\d+\.\d+$/.test(i || "");
925
925
  }
926
- function Ln(i) {
926
+ function Dn(i) {
927
927
  const t = parseFloat(i);
928
928
  return !isNaN(t) && t > 0;
929
929
  }
930
- function Dn(i) {
930
+ function Hn(i) {
931
931
  const t = parseFloat(i);
932
932
  return !isNaN(t) && t < 0;
933
933
  }
934
- function Hn(i) {
934
+ function Mn(i) {
935
935
  return /^[a-zA-Z]+$/.test(i || "");
936
936
  }
937
- function Mn(i) {
937
+ function Tn(i) {
938
938
  return /^[a-zA-Z0-9]+$/.test(i || "");
939
939
  }
940
- function Tn(i) {
940
+ function In(i) {
941
941
  return /^[\u4e00-\u9fa5]+$/.test(i || "");
942
942
  }
943
- function In(i, t, e) {
943
+ function An(i, t, e) {
944
944
  const s = (i || "").length;
945
945
  return s >= t && (e === void 0 || s <= e);
946
946
  }
947
- function An(i, t) {
947
+ function zn(i, t) {
948
948
  return (i || "").length >= t;
949
949
  }
950
- function zn(i, t) {
950
+ function Pn(i, t) {
951
951
  return (i || "").length <= t;
952
952
  }
953
- function Pn(i, t) {
953
+ function $n(i, t) {
954
954
  return t instanceof RegExp ? t.test(i || "") : !1;
955
955
  }
956
- function $n(i, t) {
956
+ function Bn(i, t) {
957
957
  return String(i) === String(t);
958
958
  }
959
- function Ot(i, t) {
959
+ function Ft(i, t) {
960
960
  return (i || "").includes(t);
961
961
  }
962
- function Bn(i, t) {
963
- return !Ot(i, t);
962
+ function qn(i, t) {
963
+ return !Ft(i, t);
964
964
  }
965
- function qn(i) {
965
+ function On(i) {
966
966
  return Array.isArray(i);
967
967
  }
968
- function On(i, t, e) {
968
+ function Fn(i, t, e) {
969
969
  const s = i ? i.length : 0;
970
970
  return s >= t && (e === void 0 || s <= e);
971
971
  }
972
- function Fn(i, t) {
972
+ function Nn(i, t) {
973
973
  return i ? i.length >= t : !1;
974
974
  }
975
- function Nn(i, t) {
975
+ function Rn(i, t) {
976
976
  return i ? i.length <= t : !1;
977
977
  }
978
- function Rn(i) {
978
+ function Vn(i) {
979
979
  return i !== null && typeof i == "object" && !Array.isArray(i);
980
980
  }
981
- function Vn(i, t) {
981
+ function Kn(i, t) {
982
982
  return !i || !t || !Array.isArray(t) ? !1 : t.every((e) => Object.prototype.hasOwnProperty.call(i, e));
983
983
  }
984
- function Kn(i, t) {
984
+ function Wn(i, t) {
985
985
  const e = {};
986
986
  return Object.keys(t).forEach((s) => {
987
987
  const n = i[s], r = t[s], a = [];
988
988
  r.forEach((o) => {
989
989
  if (typeof o == "string") {
990
990
  const [l, ...c] = o.split(":");
991
- Ft[l](n, ...c) || a.push(l);
991
+ Nt[l](n, ...c) || a.push(l);
992
992
  } else if (typeof o == "function") {
993
993
  const l = o(n, i);
994
994
  l !== !0 && a.push(l || "validation_failed");
@@ -996,8 +996,8 @@ function Kn(i, t) {
996
996
  }), a.length > 0 && (e[s] = a);
997
997
  }), { valid: Object.keys(e).length === 0, errors: e };
998
998
  }
999
- const Ft = { isEmail: un, isPhone: pn, isURL: fn, isIPv4: zt, isIPv6: Pt, isIP: mn, isIDCard: gn, isPassport: _n, isCreditCard: yn, isHexColor: $t, isRGB: Bt, isRGBA: qt, isColor: vn, isDate: bn, isJSON: xn, isEmpty: En, isWhitespace: wn, isNumber: kn, isInteger: Cn, isFloat: Sn, isPositive: Ln, isNegative: Dn, isAlpha: Hn, isAlphaNumeric: Mn, isChinese: Tn, isLength: In, minLength: An, maxLength: zn, matches: Pn, equals: $n, contains: Ot, notContains: Bn, isArray: qn, arrayLength: On, arrayMinLength: Fn, arrayMaxLength: Nn, isObject: Rn, hasKeys: Vn, validate: Kn };
1000
- function Wn(i) {
999
+ const Nt = { isEmail: pn, isPhone: fn, isURL: mn, isIPv4: Pt, isIPv6: $t, isIP: gn, isIDCard: _n, isPassport: yn, isCreditCard: vn, isHexColor: Bt, isRGB: qt, isRGBA: Ot, isColor: bn, isDate: xn, isJSON: En, isEmpty: wn, isWhitespace: kn, isNumber: Cn, isInteger: Sn, isFloat: Ln, isPositive: Dn, isNegative: Hn, isAlpha: Mn, isAlphaNumeric: Tn, isChinese: In, isLength: An, minLength: zn, maxLength: Pn, matches: $n, equals: Bn, contains: Ft, notContains: qn, isArray: On, arrayLength: Fn, arrayMinLength: Nn, arrayMaxLength: Rn, isObject: Vn, hasKeys: Kn, validate: Wn };
1000
+ function Un(i) {
1001
1001
  const t = i ? String(i) : "", e = [1732584193, 4023233417, 2562383102, 271733878], s = [3614090360, 3905402710, 606105819, 3250441966, 4118548399, 1200080426, 2821735955, 4249261313, 1770035416, 2336552879, 4294925233, 2304563134, 1804603682, 4254626195, 2792965006, 1236535329, 4129170786, 3225465664, 643717713, 3921069994, 3593408605, 38016083, 3634488961, 3889429448, 568446438, 3275163606, 4107603335, 1163531501, 2850285829, 4243563512, 1735328473, 2368359562, 4294588738, 2272392833, 1839030562, 4259657740, 2763975236, 1272893353, 4139469664, 3200236656, 681279174, 3936430074, 3572445317, 76029189, 3654602809, 3873151461, 530742520, 3299628645, 4096336452, 1126891415, 2878612391, 4237533241, 1700485571, 2399980690, 4293915773, 2240044497, 1873313359, 4264355552, 2734768916, 1309151649, 4149444226, 3174756917, 718787259, 3951481745], n = [[7, 12, 17, 22], [5, 9, 14, 20], [4, 11, 16, 23], [6, 10, 15, 21]];
1002
1002
  function r(d, u) {
1003
1003
  return d << u | d >>> 32 - u;
@@ -1037,7 +1037,7 @@ function Wn(i) {
1037
1037
  h += (d >>> 8 * u & 255).toString(16).padStart(2, "0");
1038
1038
  }), h;
1039
1039
  }
1040
- function Un(i) {
1040
+ function Yn(i) {
1041
1041
  const t = i ? String(i) : "", e = [1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, 2428436474, 2756734187, 3204031479, 3329325298];
1042
1042
  function s(c, h) {
1043
1043
  return c >>> h | c << 32 - h;
@@ -1078,7 +1078,7 @@ function Un(i) {
1078
1078
  l += (c >>> 8 * h & 255).toString(16).padStart(2, "0");
1079
1079
  }), l;
1080
1080
  }
1081
- function Yn(i) {
1081
+ function Xn(i) {
1082
1082
  const t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
1083
1083
  let e = "", s = 0;
1084
1084
  const n = i ? i.split("").map((r) => r.charCodeAt(0)) : [];
@@ -1088,7 +1088,7 @@ function Yn(i) {
1088
1088
  }
1089
1089
  return e;
1090
1090
  }
1091
- function Xn(i) {
1091
+ function jn(i) {
1092
1092
  const t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
1093
1093
  let e = "", s = 0;
1094
1094
  for (i = i.replace(/[^A-Za-z0-9+/=]/g, ""); s < i.length; ) {
@@ -1097,14 +1097,14 @@ function Xn(i) {
1097
1097
  }
1098
1098
  return e;
1099
1099
  }
1100
- function jn() {
1100
+ function Jn() {
1101
1101
  return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (i) => {
1102
1102
  const t = Math.random() * 16 | 0;
1103
1103
  return (i === "x" ? t : t & 3 | 8).toString(16);
1104
1104
  });
1105
1105
  }
1106
- const Jn = { md5: Wn, sha256: Un, base64Encode: Yn, base64Decode: Xn, uuid: jn }, B = /* @__PURE__ */ new Map();
1107
- async function J(i, t = {}) {
1106
+ const Zn = { md5: Un, sha256: Yn, base64Encode: Xn, base64Decode: jn, uuid: Jn }, B = /* @__PURE__ */ new Map();
1107
+ async function Z(i, t = {}) {
1108
1108
  const { crossOrigin: e = "anonymous" } = t;
1109
1109
  return B.has(i) ? B.get(i) : new Promise((s, n) => {
1110
1110
  const r = new Image();
@@ -1117,13 +1117,13 @@ async function J(i, t = {}) {
1117
1117
  }
1118
1118
  async function Gn(i, t = {}) {
1119
1119
  const { parallel: e = !0 } = t;
1120
- if (e) return Promise.all(i.map((n) => J(n, t)));
1120
+ if (e) return Promise.all(i.map((n) => Z(n, t)));
1121
1121
  const s = [];
1122
1122
  for (const n of i)
1123
- s.push(await J(n, t));
1123
+ s.push(await Z(n, t));
1124
1124
  return s;
1125
1125
  }
1126
- async function Nt(i, t = {}) {
1126
+ async function Rt(i, t = {}) {
1127
1127
  const { type: e = "text/javascript", async: s = !0, defer: n = !1 } = t;
1128
1128
  return B.has(i) ? B.get(i) : new Promise((r, a) => {
1129
1129
  const o = document.createElement("script");
@@ -1134,7 +1134,7 @@ async function Nt(i, t = {}) {
1134
1134
  }, o.src = i, document.head.appendChild(o);
1135
1135
  });
1136
1136
  }
1137
- async function Rt(i, t = {}) {
1137
+ async function Vt(i, t = {}) {
1138
1138
  const { media: e = "all" } = t;
1139
1139
  return B.has(i) ? B.get(i) : new Promise((s, n) => {
1140
1140
  const r = document.createElement("link");
@@ -1145,7 +1145,7 @@ async function Rt(i, t = {}) {
1145
1145
  }, document.head.appendChild(r);
1146
1146
  });
1147
1147
  }
1148
- async function Zn(i, t, e = {}) {
1148
+ async function Qn(i, t, e = {}) {
1149
1149
  const { weight: s = "normal", style: n = "normal" } = e, r = new FontFace(i, `url(${t})`, { weight: s, style: n });
1150
1150
  try {
1151
1151
  return await r.load(), document.fonts.add(r), r;
@@ -1153,41 +1153,41 @@ async function Zn(i, t, e = {}) {
1153
1153
  throw new Error(`Failed to load font: ${i}`);
1154
1154
  }
1155
1155
  }
1156
- async function Qn(i, t = "image") {
1156
+ async function tr(i, t = "image") {
1157
1157
  switch (t) {
1158
1158
  case "image":
1159
- return J(i);
1159
+ return Z(i);
1160
1160
  case "script":
1161
- return Nt(i);
1161
+ return Rt(i);
1162
1162
  case "stylesheet":
1163
1163
  case "style":
1164
- return Rt(i);
1164
+ return Vt(i);
1165
1165
  default:
1166
1166
  throw new Error(`Unsupported preload type: ${t}`);
1167
1167
  }
1168
1168
  }
1169
- function tr(i) {
1169
+ function er(i) {
1170
1170
  return B.has(i);
1171
1171
  }
1172
- function er() {
1172
+ function sr() {
1173
1173
  B.clear();
1174
1174
  }
1175
- function sr(i) {
1175
+ function ir(i) {
1176
1176
  B.delete(i);
1177
1177
  }
1178
- const ir = { loadImage: J, loadImages: Gn, loadScript: Nt, loadStylesheet: Rt, loadFont: Zn, preload: Qn, isLoaded: tr, clearCache: er, clearCacheByUrl: sr }, Ia = {
1179
- string: Je,
1180
- array: Os,
1181
- object: ri,
1182
- number: Ii,
1183
- date: cn,
1184
- debounce: hn,
1185
- throttle: dn,
1186
- validator: Ft,
1187
- crypto: Jn,
1188
- preload: ir
1178
+ const nr = { loadImage: Z, loadImages: Gn, loadScript: Rt, loadStylesheet: Vt, loadFont: Qn, preload: tr, isLoaded: er, clearCache: sr, clearCacheByUrl: ir }, Aa = {
1179
+ string: Ze,
1180
+ array: Fs,
1181
+ object: ai,
1182
+ number: Ai,
1183
+ date: hn,
1184
+ debounce: dn,
1185
+ throttle: un,
1186
+ validator: Nt,
1187
+ crypto: Zn,
1188
+ preload: nr
1189
1189
  };
1190
- function nr(i) {
1190
+ function rr(i) {
1191
1191
  if (!i) return "";
1192
1192
  let t = String(i);
1193
1193
  const e = /<\s*(script|iframe|object|embed|applet|form|base|link|meta|style)\b[^>]*>[\s\S]*?<\s*\/\s*\1\s*>|<\s*(script|iframe|object|embed|applet|form|base|link|meta|style)\b[^>]*\/?>/gi;
@@ -1197,20 +1197,20 @@ function nr(i) {
1197
1197
  while (t !== s);
1198
1198
  return t = t.replace(/\bon\w+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi, ""), t = t.replace(/(href|src|action|background)\s*=\s*(?:"[^"]*(?:javascript|vbscript|data)\s*:[^"]*"|'[^']*(?:javascript|vbscript|data)\s*:[^']*'|[^\s>]*(?:javascript|vbscript|data)\s*:[^\s>]*)/gi, '$1=""'), t = t.replace(/expression\s*\([^)]*\)/gi, ""), t;
1199
1199
  }
1200
- class ft {
1200
+ class mt {
1201
1201
  constructor() {
1202
1202
  this.children = {}, this.keys = [];
1203
1203
  }
1204
1204
  }
1205
- class it {
1205
+ class nt {
1206
1206
  constructor() {
1207
- this.root = new ft();
1207
+ this.root = new mt();
1208
1208
  }
1209
1209
  insert(t) {
1210
1210
  let e = this.root;
1211
1211
  const s = t.split(".");
1212
1212
  s.forEach((n, r) => {
1213
- e.children[n] || (e.children[n] = new ft()), e = e.children[n], r === s.length - 1 && e.keys.push(t);
1213
+ e.children[n] || (e.children[n] = new mt()), e = e.children[n], r === s.length - 1 && e.keys.push(t);
1214
1214
  });
1215
1215
  }
1216
1216
  getSubKeys(t) {
@@ -1242,9 +1242,9 @@ const g = {
1242
1242
  path: Symbol("reactive_path"),
1243
1243
  isReactive: Symbol("reactive_is_reactive")
1244
1244
  };
1245
- class rr {
1245
+ class ar {
1246
1246
  constructor() {
1247
- this.rawData = {}, this.data = null, this.observers = {}, this.elements = {}, this.computedProperties = {}, this.pathTrie = new it(), this.updateQueue = /* @__PURE__ */ new Map(), this.isProcessing = !1, this.pendingComputed = /* @__PURE__ */ new Set(), this.persistedKeys = /* @__PURE__ */ new Map(), this.snapshots = [], this.snapshotLimit = 10, this._proxyCache = /* @__PURE__ */ new WeakMap(), this.createReactiveData();
1247
+ this.rawData = {}, this.data = null, this.observers = {}, this.elements = {}, this.computedProperties = {}, this.pathTrie = new nt(), this.updateQueue = /* @__PURE__ */ new Map(), this.isProcessing = !1, this.pendingComputed = /* @__PURE__ */ new Set(), this.persistedKeys = /* @__PURE__ */ new Map(), this.snapshots = [], this.snapshotLimit = 10, this._proxyCache = /* @__PURE__ */ new WeakMap(), this.createReactiveData();
1248
1248
  }
1249
1249
  createReactiveData() {
1250
1250
  const t = {
@@ -1382,7 +1382,7 @@ class rr {
1382
1382
  t.textContent !== String(e ?? "") && (t.textContent = e ?? "");
1383
1383
  break;
1384
1384
  case "html":
1385
- const c = nr(e);
1385
+ const c = rr(e);
1386
1386
  t.innerHTML !== c && (t.innerHTML = c);
1387
1387
  break;
1388
1388
  case "value":
@@ -1440,7 +1440,7 @@ class rr {
1440
1440
  }), this.processComputed();
1441
1441
  }
1442
1442
  reset() {
1443
- this.rawData = {}, this.observers = {}, this.elements = {}, this.computedProperties = {}, this.pathTrie = new it(), this.updateQueue.clear(), this.snapshots = [], this.createReactiveData(), this.bind();
1443
+ this.rawData = {}, this.observers = {}, this.elements = {}, this.computedProperties = {}, this.pathTrie = new nt(), this.updateQueue.clear(), this.snapshots = [], this.createReactiveData(), this.bind();
1444
1444
  }
1445
1445
  persist(t, e = {}) {
1446
1446
  const {
@@ -1706,10 +1706,10 @@ class rr {
1706
1706
  });
1707
1707
  }), this.persistedKeys.forEach((t, e) => {
1708
1708
  t.timeout && clearTimeout(t.timeout);
1709
- }), this.persistedKeys.clear(), this.rawData = {}, this.observers = {}, this.elements = {}, this.computedProperties = {}, this.pathTrie = new it(), this.updateQueue.clear(), this.snapshots = [];
1709
+ }), this.persistedKeys.clear(), this.rawData = {}, this.observers = {}, this.elements = {}, this.computedProperties = {}, this.pathTrie = new nt(), this.updateQueue.clear(), this.snapshots = [];
1710
1710
  }
1711
1711
  }
1712
- class mt {
1712
+ class gt {
1713
1713
  constructor(t, e = {}) {
1714
1714
  this.name = t, this._stateKey = `__store_${t}__`;
1715
1715
  const s = e.state ? e.state() : {};
@@ -1779,25 +1779,25 @@ class mt {
1779
1779
  };
1780
1780
  }
1781
1781
  }
1782
- class ar {
1782
+ class or {
1783
1783
  constructor() {
1784
1784
  this.stores = /* @__PURE__ */ new Map();
1785
1785
  }
1786
1786
  createStore(t, e) {
1787
- const s = new mt(t, e);
1787
+ const s = new gt(t, e);
1788
1788
  return this.stores.set(t, s), s;
1789
1789
  }
1790
1790
  getStore(t) {
1791
1791
  return this.stores.get(t);
1792
1792
  }
1793
1793
  registerStore(t) {
1794
- t instanceof mt && this.stores.set(t.name, t);
1794
+ t instanceof gt && this.stores.set(t.name, t);
1795
1795
  }
1796
1796
  dispose() {
1797
1797
  this.stores.clear();
1798
1798
  }
1799
1799
  }
1800
- class or {
1800
+ class lr {
1801
1801
  constructor() {
1802
1802
  this.events = {}, this.delegatedEvents = {}, this.eventListeners = {};
1803
1803
  }
@@ -1874,12 +1874,12 @@ function I(i = null) {
1874
1874
  }
1875
1875
  }), t;
1876
1876
  }
1877
- const O = new rr(), Aa = new or(), Vt = new ar();
1878
- function za(i, t) {
1879
- return Vt.createStore(i, t);
1877
+ const O = new ar(), za = new lr(), Kt = new or();
1878
+ function Pa(i, t) {
1879
+ return Kt.createStore(i, t);
1880
1880
  }
1881
- function Pa(i) {
1882
- return Vt.getStore(i);
1881
+ function $a(i) {
1882
+ return Kt.getStore(i);
1883
1883
  }
1884
1884
  const T = {
1885
1885
  paths: {
@@ -1900,6 +1900,16 @@ const T = {
1900
1900
  headers: {},
1901
1901
  withCredentials: !1
1902
1902
  },
1903
+ zIndex: {
1904
+ modal: 1e3,
1905
+ dropdown: 2e3,
1906
+ tooltip: 2100,
1907
+ popover: 2200,
1908
+ datepicker: 2300,
1909
+ message: 3e3,
1910
+ notification: 3100,
1911
+ loading: 5e3
1912
+ },
1903
1913
  ui: {
1904
1914
  defaultSize: "md",
1905
1915
  modal: {
@@ -1966,54 +1976,57 @@ const T = {
1966
1976
  silentErrors: !1
1967
1977
  }
1968
1978
  };
1969
- function $a(i) {
1970
- Wt(T, i);
1979
+ function Ba(i) {
1980
+ Ut(T, i);
1971
1981
  }
1972
- function ht(i) {
1973
- return i ? fr(T, i) : T;
1982
+ function dt(i) {
1983
+ return i ? mr(T, i) : T;
1974
1984
  }
1975
- function Kt() {
1985
+ function Wt() {
1976
1986
  return T.paths.base + T.paths.icons.replace(/^\//, "");
1977
1987
  }
1978
- function Ba() {
1988
+ function qa() {
1979
1989
  return T.paths.base;
1980
1990
  }
1981
- function lr() {
1991
+ function cr() {
1982
1992
  return T.theme.default;
1983
1993
  }
1984
- function cr() {
1994
+ function hr() {
1985
1995
  return T.theme.brand;
1986
1996
  }
1987
- function qa() {
1997
+ function Oa() {
1988
1998
  return T.http;
1989
1999
  }
1990
- function X() {
2000
+ function j() {
1991
2001
  return T.ui;
1992
2002
  }
1993
- function et() {
2003
+ function W() {
2004
+ return T.zIndex;
2005
+ }
2006
+ function st() {
1994
2007
  return T.security;
1995
2008
  }
1996
- function hr() {
2009
+ function dr() {
1997
2010
  return T.performance;
1998
2011
  }
1999
- function dr() {
2012
+ function ur() {
2000
2013
  return T.message;
2001
2014
  }
2002
- function ur() {
2015
+ function pr() {
2003
2016
  return T.notification;
2004
2017
  }
2005
- function pr() {
2018
+ function fr() {
2006
2019
  return T.validation;
2007
2020
  }
2008
- function Wt(i, t) {
2021
+ function Ut(i, t) {
2009
2022
  for (const e in t)
2010
- t[e] instanceof Object && e in i && i[e] instanceof Object ? Wt(i[e], t[e]) : i[e] = t[e];
2023
+ t[e] instanceof Object && e in i && i[e] instanceof Object ? Ut(i[e], t[e]) : i[e] = t[e];
2011
2024
  return i;
2012
2025
  }
2013
- function fr(i, t) {
2026
+ function mr(i, t) {
2014
2027
  return t.split(".").reduce((e, s) => (e && e[s]) !== void 0 ? e[s] : void 0, i);
2015
2028
  }
2016
- const Ut = "kupola-theme", Yt = "kupola-brand", Y = [
2029
+ const Yt = "kupola-theme", Xt = "kupola-brand", X = [
2017
2030
  { id: "green", name: "翠绿", color: "#32F08C" },
2018
2031
  { id: "xionghuang", name: "雄黄", color: "#FF9900" },
2019
2032
  { id: "jianghuang", name: "姜黄", color: "#E2C027" },
@@ -2027,11 +2040,11 @@ const Ut = "kupola-theme", Yt = "kupola-brand", Y = [
2027
2040
  { id: "roulan", name: "柔蓝", color: "#106898" }
2028
2041
  ];
2029
2042
  function R() {
2030
- return localStorage.getItem(Ut) || lr();
2043
+ return localStorage.getItem(Yt) || cr();
2031
2044
  }
2032
- function rt(i) {
2045
+ function at(i) {
2033
2046
  if (i !== "dark" && i !== "light") return;
2034
- document.documentElement.setAttribute("data-theme", i), localStorage.setItem(Ut, i);
2047
+ document.documentElement.setAttribute("data-theme", i), localStorage.setItem(Yt, i);
2035
2048
  const t = document.querySelector("[data-theme-toggle]");
2036
2049
  if (t) {
2037
2050
  t.setAttribute("data-current-theme", i);
@@ -2042,13 +2055,13 @@ function rt(i) {
2042
2055
  }
2043
2056
  }
2044
2057
  }
2045
- function j() {
2046
- return localStorage.getItem(Yt) || cr();
2058
+ function J() {
2059
+ return localStorage.getItem(Xt) || hr();
2047
2060
  }
2048
- function at(i) {
2049
- const t = Y.find((n) => n.id === i);
2061
+ function ot(i) {
2062
+ const t = X.find((n) => n.id === i);
2050
2063
  if (!t) return;
2051
- document.documentElement.setAttribute("data-brand", i), localStorage.setItem(Yt, i);
2064
+ document.documentElement.setAttribute("data-brand", i), localStorage.setItem(Xt, i);
2052
2065
  const e = document.querySelector("[data-brand-toggle]");
2053
2066
  if (e) {
2054
2067
  e.setAttribute("data-current-brand", i);
@@ -2061,30 +2074,30 @@ function at(i) {
2061
2074
  n.getAttribute("data-brand-btn") === i ? n.classList.add("is-active") : n.classList.remove("is-active");
2062
2075
  });
2063
2076
  }
2064
- function gt(i) {
2077
+ function _t(i) {
2065
2078
  const t = i.querySelector(".theme-icon");
2066
2079
  if (t) {
2067
- const e = R(), s = Kt();
2080
+ const e = R(), s = Wt();
2068
2081
  t.src = e === "dark" ? s + "sun.svg" : s + "moon.svg";
2069
2082
  }
2070
2083
  }
2071
- function mr() {
2084
+ function gr() {
2072
2085
  const i = R();
2073
- rt(i);
2074
- const t = j();
2075
- at(t);
2086
+ at(i);
2087
+ const t = J();
2088
+ ot(t);
2076
2089
  const e = document.querySelector("[data-theme-toggle]");
2077
2090
  if (e) {
2078
- gt(e);
2091
+ _t(e);
2079
2092
  const o = e.onclick;
2080
2093
  e.onclick = function(l) {
2081
2094
  l.preventDefault();
2082
2095
  const h = R() === "dark" ? "light" : "dark";
2083
- rt(h), gt(e), typeof o == "function" && o.call(this, l);
2096
+ at(h), _t(e), typeof o == "function" && o.call(this, l);
2084
2097
  };
2085
2098
  }
2086
2099
  let s = document.getElementById("brand-picker");
2087
- s || (s = document.createElement("div"), s.id = "brand-picker", s.style.position = "fixed", s.style.top = "64px", s.style.right = "16px", s.style.zIndex = "9998", s.style.display = "none", s.style.padding = "12px", s.style.width = "200px", s.style.gridTemplateColumns = "repeat(3, 1fr)", s.style.gap = "6px", s.style.backgroundColor = "var(--bg-base-secondary)", s.style.border = "1px solid var(--border-neutral-l1)", s.style.borderRadius = "8px", s.style.boxShadow = "0 4px 20px rgba(0, 0, 0, 0.2)", s.style.overflow = "hidden", Y.forEach((o) => {
2100
+ s || (s = document.createElement("div"), s.id = "brand-picker", s.style.position = "fixed", s.style.top = "64px", s.style.right = "16px", s.style.zIndex = "9998", s.style.display = "none", s.style.padding = "12px", s.style.width = "200px", s.style.gridTemplateColumns = "repeat(3, 1fr)", s.style.gap = "6px", s.style.backgroundColor = "var(--bg-base-secondary)", s.style.border = "1px solid var(--border-neutral-l1)", s.style.borderRadius = "8px", s.style.boxShadow = "0 4px 20px rgba(0, 0, 0, 0.2)", s.style.overflow = "hidden", X.forEach((o) => {
2088
2101
  const l = document.createElement("button");
2089
2102
  l.setAttribute("data-brand-btn", o.id), l.style.display = "flex", l.style.justifyContent = "center", l.style.alignItems = "center", l.style.height = "60px", l.style.backgroundColor = o.color, l.style.color = ["#32F08C", "#FF9900", "#E2C027", "#0EB0C9", "#B1A6CC"].includes(o.color) ? "#0C0C0D" : "#FFFFFF", l.style.fontWeight = "500", l.style.borderRadius = "4px", l.style.border = "none", l.style.cursor = "pointer", l.style.margin = "0", l.style.padding = "0", l.textContent = o.name, s.appendChild(l);
2090
2103
  }), document.body.appendChild(s));
@@ -2105,34 +2118,34 @@ function mr() {
2105
2118
  o.addEventListener("click", (l) => {
2106
2119
  l.stopPropagation();
2107
2120
  const c = o.getAttribute("data-brand-btn");
2108
- at(c), s && (s.style.display = "none");
2121
+ ot(c), s && (s.style.display = "none");
2109
2122
  });
2110
2123
  });
2111
2124
  }
2112
- function Oa() {
2125
+ function Fa() {
2113
2126
  const i = document.createElement("button");
2114
2127
  i.setAttribute("data-theme-toggle", ""), i.setAttribute("data-current-theme", R()), i.className = "ds-btn ds-btn--ghost ds-btn--sm ds-btn--icon", i.style.position = "fixed", i.style.top = "16px", i.style.right = "16px", i.style.zIndex = "9999";
2115
2128
  const t = document.createElement("img");
2116
2129
  t.className = "theme-icon";
2117
- const e = Kt();
2130
+ const e = Wt();
2118
2131
  return t.src = R() === "dark" ? e + "sun.svg" : e + "moon.svg", t.width = 14, t.height = 14, t.alt = "Toggle theme", i.appendChild(t), document.body.appendChild(i), i.onclick = function(s) {
2119
2132
  s.preventDefault();
2120
2133
  const r = R() === "dark" ? "light" : "dark";
2121
- rt(r);
2134
+ at(r);
2122
2135
  }, i;
2123
2136
  }
2124
- function Fa() {
2137
+ function Na() {
2125
2138
  const i = document.createElement("div");
2126
- i.id = "brand-picker-auto", i.style.position = "fixed", i.style.top = "56px", i.style.right = "16px", i.style.zIndex = "9998", i.style.display = "none", i.style.padding = "12px", i.style.width = "200px", i.style.gridTemplateColumns = "repeat(3, 1fr)", i.style.gap = "6px", i.style.backgroundColor = "var(--bg-base-secondary)", i.style.border = "1px solid var(--border-neutral-l1)", i.style.borderRadius = "8px", i.style.boxShadow = "0 4px 20px rgba(0, 0, 0, 0.2)", i.style.overflow = "hidden", Y.forEach((a) => {
2139
+ i.id = "brand-picker-auto", i.style.position = "fixed", i.style.top = "56px", i.style.right = "16px", i.style.zIndex = "9998", i.style.display = "none", i.style.padding = "12px", i.style.width = "200px", i.style.gridTemplateColumns = "repeat(3, 1fr)", i.style.gap = "6px", i.style.backgroundColor = "var(--bg-base-secondary)", i.style.border = "1px solid var(--border-neutral-l1)", i.style.borderRadius = "8px", i.style.boxShadow = "0 4px 20px rgba(0, 0, 0, 0.2)", i.style.overflow = "hidden", X.forEach((a) => {
2127
2140
  const o = document.createElement("button");
2128
2141
  o.setAttribute("data-brand-btn", a.id), o.style.display = "flex", o.style.justifyContent = "center", o.style.alignItems = "center", o.style.height = "60px", o.style.backgroundColor = a.color, o.style.color = ["#32F08C", "#FF9900", "#E2C027", "#0EB0C9", "#B1A6CC"].includes(a.color) ? "#0C0C0D" : "#FFFFFF", o.style.fontWeight = "500", o.style.borderRadius = "4px", o.style.border = "none", o.style.cursor = "pointer", o.style.margin = "0", o.style.padding = "0", o.textContent = a.name, i.appendChild(o);
2129
2142
  }), document.body.appendChild(i);
2130
2143
  const t = document.createElement("button");
2131
- t.setAttribute("data-brand-toggle", ""), t.setAttribute("data-current-brand", j()), t.className = "ds-btn ds-btn--ghost ds-btn--sm", t.style.position = "fixed", t.style.top = "16px", t.style.right = "56px", t.style.zIndex = "9999", t.style.display = "flex", t.style.alignItems = "center", t.style.gap = "6px";
2144
+ t.setAttribute("data-brand-toggle", ""), t.setAttribute("data-current-brand", J()), t.className = "ds-btn ds-btn--ghost ds-btn--sm", t.style.position = "fixed", t.style.top = "16px", t.style.right = "56px", t.style.zIndex = "9999", t.style.display = "flex", t.style.alignItems = "center", t.style.gap = "6px";
2132
2145
  const e = document.createElement("span");
2133
- e.className = "brand-icon", e.style.width = "12px", e.style.height = "12px", e.style.borderRadius = "50%", e.style.backgroundColor = Y.find((a) => a.id === j()).color;
2146
+ e.className = "brand-icon", e.style.width = "12px", e.style.height = "12px", e.style.borderRadius = "50%", e.style.backgroundColor = X.find((a) => a.id === J()).color;
2134
2147
  const s = document.createElement("span");
2135
- s.className = "brand-name", s.style.fontSize = "11px", s.textContent = Y.find((a) => a.id === j()).name, t.appendChild(e), t.appendChild(s), document.body.appendChild(t), t.onclick = function(a) {
2148
+ s.className = "brand-name", s.style.fontSize = "11px", s.textContent = X.find((a) => a.id === J()).name, t.appendChild(e), t.appendChild(s), document.body.appendChild(t), t.onclick = function(a) {
2136
2149
  a.stopPropagation(), a.preventDefault();
2137
2150
  const o = i.style.display === "none";
2138
2151
  i.style.display = o ? "grid" : "none", o ? setTimeout(() => {
@@ -2148,12 +2161,12 @@ function Fa() {
2148
2161
  a.addEventListener("click", (o) => {
2149
2162
  o.stopPropagation();
2150
2163
  const l = a.getAttribute("data-brand-btn");
2151
- at(l), i.style.display = "none";
2164
+ ot(l), i.style.display = "none";
2152
2165
  });
2153
2166
  }), { toggleBtn: t, container: i };
2154
2167
  }
2155
- function Na(i, t = {}) {
2156
- const s = et()?.sanitizeHtml || {};
2168
+ function Ra(i, t = {}) {
2169
+ const s = st()?.sanitizeHtml || {};
2157
2170
  if (!s.enabled && !t.force)
2158
2171
  return i;
2159
2172
  const n = t.allowedTags || s.allowedTags || [], r = t.allowedAttributes || s.allowedAttributes || {};
@@ -2172,17 +2185,17 @@ function Na(i, t = {}) {
2172
2185
  });
2173
2186
  }), o.body.innerHTML;
2174
2187
  }
2175
- function Ra(i) {
2188
+ function Va(i) {
2176
2189
  if (typeof i != "string")
2177
2190
  return i;
2178
2191
  const t = document.createElement("div");
2179
2192
  return t.textContent = i, t.innerHTML;
2180
2193
  }
2181
- function Va(i) {
2194
+ function Ka(i) {
2182
2195
  return typeof i != "string" ? i : new DOMParser().parseFromString(i, "text/html").body.textContent || "";
2183
2196
  }
2184
- function Ka(i, t, e = {}) {
2185
- const n = et()?.maskData || {};
2197
+ function Wa(i, t, e = {}) {
2198
+ const n = st()?.maskData || {};
2186
2199
  if (!n.enabled && !e.force || i == null)
2187
2200
  return i;
2188
2201
  const a = (e.patterns || n.patterns || {})[t];
@@ -2191,8 +2204,8 @@ function Ka(i, t, e = {}) {
2191
2204
  const o = typeof a.regex == "string" ? new RegExp(a.regex) : a.regex;
2192
2205
  return String(i).replace(o, a.replace);
2193
2206
  }
2194
- function Wa(i, t) {
2195
- const s = et()?.secureId || {}, n = i || s.length || 16, r = s.charset || "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
2207
+ function Ua(i, t) {
2208
+ const s = st()?.secureId || {}, n = i || s.length || 16, r = s.charset || "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
2196
2209
  if (typeof crypto > "u" || !crypto.getRandomValues) {
2197
2210
  let l = "";
2198
2211
  for (let c = 0; c < n; c++)
@@ -2206,7 +2219,7 @@ function Wa(i, t) {
2206
2219
  o += r[a[l] % r.length];
2207
2220
  return t ? `${t}_${o}` : o;
2208
2221
  }
2209
- class gr {
2222
+ class _r {
2210
2223
  constructor() {
2211
2224
  this.initializers = /* @__PURE__ */ new Map(), this.cleanupFunctions = /* @__PURE__ */ new Map(), this.processedElements = /* @__PURE__ */ new WeakSet(), this._dataAttrs = ["data-component"], this._cssClasses = [], this._cachedSelector = null;
2212
2225
  }
@@ -2313,7 +2326,7 @@ class gr {
2313
2326
  }), await Promise.all(n);
2314
2327
  }
2315
2328
  }
2316
- const E = new gr(), _r = [
2329
+ const E = new _r(), yr = [
2317
2330
  { attr: "data-dropdown", cls: "ds-dropdown" },
2318
2331
  { attr: "data-select", cls: "ds-select" },
2319
2332
  { attr: "data-datepicker", cls: "ds-datepicker" },
@@ -2335,11 +2348,11 @@ const E = new gr(), _r = [
2335
2348
  { cls: "ds-notification" },
2336
2349
  { cls: "ds-message" }
2337
2350
  ];
2338
- for (const i of _r)
2351
+ for (const i of yr)
2339
2352
  i.attr && !E._dataAttrs.includes(i.attr) && E._dataAttrs.push(i.attr), i.cls && !E._cssClasses.includes(i.cls) && E._cssClasses.push(i.cls);
2340
2353
  class G {
2341
2354
  constructor(t) {
2342
- this.element = t, this.isMounted = !1, this.isDestroyed = !1, this.props = this._parseProps(), this.state = {}, this.slots = this._parseSlots(), this._eventListeners = {}, this._appliedMixins = [], this.lifecycle = new ct(), this.setupContext = null;
2355
+ this.element = t, this.isMounted = !1, this.isDestroyed = !1, this.props = this._parseProps(), this.state = {}, this.slots = this._parseSlots(), this._eventListeners = {}, this._appliedMixins = [], this.lifecycle = new ht(), this.setupContext = null;
2343
2356
  }
2344
2357
  _parseProps() {
2345
2358
  const t = {};
@@ -2472,7 +2485,7 @@ class G {
2472
2485
  setup() {
2473
2486
  }
2474
2487
  }
2475
- function _t(i, t) {
2488
+ function yt(i, t) {
2476
2489
  Object.keys(t).forEach((e) => {
2477
2490
  if (e !== "constructor")
2478
2491
  if (typeof t[e] == "function") {
@@ -2484,7 +2497,7 @@ function _t(i, t) {
2484
2497
  i.prototype[e] = t[e];
2485
2498
  });
2486
2499
  }
2487
- class yr {
2500
+ class vr {
2488
2501
  constructor() {
2489
2502
  this.components = /* @__PURE__ */ new Map(), this.lazyComponents = /* @__PURE__ */ new Map(), this.loadedComponents = /* @__PURE__ */ new Map(), this.instances = /* @__PURE__ */ new Map(), this.observer = null, this.mixins = /* @__PURE__ */ new Map(), this.loadingPromises = /* @__PURE__ */ new Map();
2490
2503
  }
@@ -2528,7 +2541,7 @@ class yr {
2528
2541
  useMixin(t, ...e) {
2529
2542
  e.forEach((s) => {
2530
2543
  const n = this.mixins.get(s);
2531
- n && _t(t, n);
2544
+ n && yt(t, n);
2532
2545
  });
2533
2546
  }
2534
2547
  async bootstrap(t = document) {
@@ -2569,7 +2582,7 @@ class yr {
2569
2582
  const n = t.getAttribute("data-mixins"), r = s;
2570
2583
  n && n.split(",").forEach((o) => {
2571
2584
  const l = this.mixins.get(o.trim());
2572
- l && _t(r, l);
2585
+ l && yt(r, l);
2573
2586
  });
2574
2587
  const a = new r(t);
2575
2588
  t.__kupolaInstance = a, this.instances.set(t, a), a.mount();
@@ -2615,34 +2628,34 @@ class yr {
2615
2628
  }
2616
2629
  }
2617
2630
  let M = null;
2618
- typeof window < "u" && (M = new yr());
2619
- function vr() {
2620
- if (et().xssProtection && typeof document < "u") {
2631
+ typeof window < "u" && (M = new vr());
2632
+ function br() {
2633
+ if (st().xssProtection && typeof document < "u") {
2621
2634
  let t = document.querySelector('meta[http-equiv="X-XSS-Protection"]');
2622
2635
  t || (t = document.createElement("meta"), t.setAttribute("http-equiv", "X-XSS-Protection"), t.setAttribute("content", "1; mode=block"), document.head.insertBefore(t, document.head.firstChild)), t = document.querySelector('meta[http-equiv="X-Content-Type-Options"]'), t || (t = document.createElement("meta"), t.setAttribute("http-equiv", "X-Content-Type-Options"), t.setAttribute("content", "nosniff"), document.head.insertBefore(t, document.head.firstChild)), t = document.querySelector('meta[http-equiv="X-Frame-Options"]'), t || (t = document.createElement("meta"), t.setAttribute("http-equiv", "X-Frame-Options"), t.setAttribute("content", "SAMEORIGIN"), document.head.insertBefore(t, document.head.firstChild));
2623
2636
  }
2624
2637
  }
2625
- async function yt() {
2638
+ async function vt() {
2626
2639
  if (typeof window < "u") {
2627
- vr();
2628
- const i = ht();
2629
- O.loadPersisted(), O.bind(), mr(), i.components?.autoInit !== !1 && (await E.initializeAll(), M && await M.bootstrap());
2640
+ br();
2641
+ const i = dt();
2642
+ O.loadPersisted(), O.bind(), gr(), i.components?.autoInit !== !1 && (await E.initializeAll(), M && await M.bootstrap());
2630
2643
  }
2631
2644
  }
2632
- typeof document < "u" && document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", yt) : typeof window < "u" && setTimeout(yt, 0);
2633
- function Ua(i, t) {
2645
+ typeof document < "u" && document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", vt) : typeof window < "u" && setTimeout(vt, 0);
2646
+ function Ya(i, t) {
2634
2647
  M && M.register(i, t);
2635
2648
  }
2636
- function Ya(i, t) {
2649
+ function Xa(i, t) {
2637
2650
  M && M.registerLazy(i, t);
2638
2651
  }
2639
- function Xa(i) {
2652
+ function ja(i) {
2640
2653
  return M ? M.bootstrap(i) : Promise.resolve();
2641
2654
  }
2642
- function ja(i, t) {
2655
+ function Ja(i, t) {
2643
2656
  M && M.defineMixin(i, t);
2644
2657
  }
2645
- function Ja(i, ...t) {
2658
+ function Za(i, ...t) {
2646
2659
  M && M.useMixin(i, ...t);
2647
2660
  }
2648
2661
  function Ga(i, t) {
@@ -2657,9 +2670,9 @@ function Ga(i, t) {
2657
2670
  cssClass: t.cssClass
2658
2671
  });
2659
2672
  }
2660
- class Xt {
2673
+ class jt {
2661
2674
  constructor(t = {}) {
2662
- const e = ht();
2675
+ const e = dt();
2663
2676
  this.locales = t.locales || {}, this.currentLocale = t.defaultLocale || e.i18n?.locale || "zh-CN", this.fallbackLocale = t.fallbackLocale || e.i18n?.fallbackLocale || "en-US", this.delimiter = t.delimiter || ".", this.missingHandler = t.missingHandler || ((s) => (console.warn(`Missing translation: ${s}`), s)), this._initFromDOM();
2664
2677
  }
2665
2678
  _initFromDOM() {
@@ -2755,32 +2768,32 @@ class Xt {
2755
2768
  return new Intl.RelativeTimeFormat(n, s).format(t, e);
2756
2769
  }
2757
2770
  }
2758
- const N = new Xt();
2759
- function Za(i) {
2760
- return new Xt(i);
2771
+ const N = new jt();
2772
+ function Qa(i) {
2773
+ return new jt(i);
2761
2774
  }
2762
- function Qa(i, t = {}) {
2775
+ function to(i, t = {}) {
2763
2776
  return N.t(i, t);
2764
2777
  }
2765
- function to(i, t, e = {}) {
2778
+ function eo(i, t, e = {}) {
2766
2779
  return N.n(i, t, e);
2767
2780
  }
2768
- function eo(i) {
2781
+ function so(i) {
2769
2782
  return N.setLocale(i);
2770
2783
  }
2771
- function so() {
2784
+ function io() {
2772
2785
  return N.getLocale();
2773
2786
  }
2774
- function io(i, t = {}) {
2787
+ function no(i, t = {}) {
2775
2788
  return N.formatDate(i, t);
2776
2789
  }
2777
- function no(i, t = {}) {
2790
+ function ro(i, t = {}) {
2778
2791
  return N.formatNumber(i, t);
2779
2792
  }
2780
- function ro(i, t, e = {}) {
2793
+ function ao(i, t, e = {}) {
2781
2794
  return N.formatCurrency(i, t, e);
2782
2795
  }
2783
- class br {
2796
+ class xr {
2784
2797
  constructor() {
2785
2798
  this._listeners = /* @__PURE__ */ new Map(), this._scopeListeners = /* @__PURE__ */ new Map();
2786
2799
  }
@@ -2910,41 +2923,42 @@ class br {
2910
2923
  this._listeners.clear(), this._scopeListeners.clear();
2911
2924
  }
2912
2925
  }
2913
- const H = new br();
2914
- function ao(i, t, e, s) {
2926
+ const H = new xr();
2927
+ function oo(i, t, e, s) {
2915
2928
  return H.on(i, t, e, s);
2916
2929
  }
2917
- function oo(i, t, e, s) {
2930
+ function lo(i, t, e, s) {
2918
2931
  return H.once(i, t, e, s);
2919
2932
  }
2920
- function lo(i, t, e) {
2933
+ function co(i, t, e) {
2921
2934
  H.off(i, t, e);
2922
2935
  }
2923
- function co(i, t, e) {
2936
+ function ho(i, t, e) {
2924
2937
  return H.emit(i, t, e);
2925
2938
  }
2926
- function ho(i, t) {
2939
+ function uo(i, t) {
2927
2940
  return H.emitGlobal(i, t);
2928
2941
  }
2929
- function uo(i) {
2942
+ function po(i) {
2930
2943
  H.offByScope(i);
2931
2944
  }
2932
- function po(i, t) {
2945
+ function fo(i, t) {
2933
2946
  H.offAll(i, t);
2934
2947
  }
2935
- function fo(i, t) {
2948
+ function mo(i, t) {
2936
2949
  return H.getListenerCount(i, t);
2937
2950
  }
2938
- class xr {
2951
+ class Er {
2939
2952
  constructor(t, e = {}) {
2940
2953
  this.element = t, this.trigger = t.querySelector(".ds-dropdown__trigger"), this.menu = t.querySelector(".ds-dropdown__menu"), this.triggerText = this.trigger ? this.trigger.querySelector("span") : null, this.scope = `dropdown-${Math.random().toString(36).substr(2, 9)}`;
2941
- const s = X();
2954
+ const s = j();
2942
2955
  this.triggerMode = e.trigger || t.getAttribute("data-dropdown-trigger") || "click", this.hoverDelay = e.hoverDelay || parseInt(t.getAttribute("data-dropdown-hover-delay")) || 150, this.disabled = e.disabled || t.hasAttribute("data-dropdown-disabled"), this.keyboardNav = e.keyboardNav !== !1, this.autoPosition = e.autoPosition !== !1, this.closeOnClick = e.closeOnClick !== void 0 ? e.closeOnClick : s.dropdown?.closeOnClick !== void 0 ? s.dropdown.closeOnClick : !0, this.appendToBody = e.appendToBody !== !1, this.onSelect = e.onSelect || null, this.onShow = e.onShow || null, this.onHide = e.onHide || null, this.isOpen = !1, this.focusIndex = -1, this._hoverTimer = null, this._hoverLeaveTimer = null, this._originalParent = null, this._originalPosition = null, this._triggerClickHandler = null, this._documentClickHandler = null, this._documentClickListener = null, this._itemClickHandler = null, this._keydownHandler = null, this._mouseenterHandler = null, this._mouseleaveHandler = null, this._triggerMouseenterHandler = null, this._triggerMouseleaveHandler = null, this._triggerKeydownHandler = null;
2943
2956
  }
2944
2957
  init() {
2945
2958
  !this.trigger || !this.menu || this.element.__kupolaInitialized || (this._itemClickHandler = (t) => {
2959
+ t.stopPropagation();
2946
2960
  const e = t.currentTarget;
2947
- e.classList.contains("is-disabled") || e.classList.contains("ds-dropdown__divider") || (this.triggerText && !e.hasAttribute("data-no-update-trigger") && (this.triggerText.textContent = e.textContent.trim()), this.onSelect && this.onSelect({ item: e, value: e.getAttribute("data-value"), text: e.textContent.trim() }), this.closeOnClick && (this.hideMenu(), this.trigger.focus()));
2961
+ e.classList.contains("is-disabled") || e.classList.contains("ds-dropdown__divider") || (this.menu.querySelectorAll(".ds-dropdown__item").forEach((s) => s.classList.remove("is-selected")), e.classList.add("is-selected"), this.triggerText && !e.hasAttribute("data-no-update-trigger") && (this.triggerText.textContent = e.textContent.trim()), this.element.setAttribute("data-value", e.getAttribute("data-value") || ""), this.onSelect && this.onSelect({ item: e, value: e.getAttribute("data-value"), text: e.textContent.trim() }), this.closeOnClick && (this.hideMenu(), this.trigger.focus()));
2948
2962
  }, this._bindMenuItems(), this._triggerClickHandler = (t) => {
2949
2963
  t.stopPropagation(), !this.disabled && this.toggleMenu();
2950
2964
  }, this._triggerMouseenterHandler = () => {
@@ -3018,10 +3032,13 @@ class xr {
3018
3032
  this.isOpen && (this.isOpen = !1, this.menu.style.display = "none", this.element.classList.remove("is-open"), this.appendToBody && (this._restoreMenuFromBody(), this._removeScrollListener()), this.menu.querySelectorAll(".ds-dropdown__item").forEach((t) => t.classList.remove("is-focused")), this.onHide && this.onHide(), this.element.dispatchEvent(new CustomEvent("kupola:dropdown-hide", { bubbles: !0 })));
3019
3033
  }
3020
3034
  _appendMenuToBody() {
3021
- this.menu && (this._originalParent = this.menu.parentNode, this._originalPosition = this.menu.style.position, this._originalTop = this.menu.style.top, this._originalLeft = this.menu.style.left, this._originalRight = this.menu.style.right, this._originalBottom = this.menu.style.bottom, this._originalMarginBottom = this.menu.style.marginBottom, this._originalWidth = this.menu.style.width, this.menu.style.position = "fixed", this.menu.style.zIndex = "9999", document.body.appendChild(this.menu));
3035
+ if (!this.menu) return;
3036
+ this._originalParent = this.menu.parentNode, this._originalPosition = this.menu.style.position, this._originalTop = this.menu.style.top, this._originalLeft = this.menu.style.left, this._originalRight = this.menu.style.right, this._originalBottom = this.menu.style.bottom, this._originalMarginBottom = this.menu.style.marginBottom, this._originalWidth = this.menu.style.width, this._originalTransform = this.menu.style.transform, this._originalZIndex = this.menu.style.zIndex;
3037
+ const t = W().dropdown;
3038
+ this.menu.style.position = "fixed", this.menu.style.zIndex = t, this.menu.style.transform = "translateZ(0)", document.body.appendChild(this.menu);
3022
3039
  }
3023
3040
  _restoreMenuFromBody() {
3024
- !this.menu || !this._originalParent || (this._originalParent.appendChild(this.menu), this.menu.style.position = this._originalPosition || "", this.menu.style.top = this._originalTop || "", this.menu.style.left = this._originalLeft || "", this.menu.style.right = this._originalRight || "", this.menu.style.bottom = this._originalBottom || "", this.menu.style.marginBottom = this._originalMarginBottom || "", this.menu.style.width = this._originalWidth || "", this.menu.style.zIndex = "", this._originalParent = null);
3041
+ !this.menu || !this._originalParent || (this._originalParent.appendChild(this.menu), this.menu.style.position = this._originalPosition || "", this.menu.style.top = this._originalTop || "", this.menu.style.left = this._originalLeft || "", this.menu.style.right = this._originalRight || "", this.menu.style.bottom = this._originalBottom || "", this.menu.style.marginBottom = this._originalMarginBottom || "", this.menu.style.width = this._originalWidth || "", this.menu.style.zIndex = this._originalZIndex || "", this.menu.style.transform = this._originalTransform || "", this._originalParent = null);
3025
3042
  }
3026
3043
  _addScrollListener() {
3027
3044
  this._scrollHandler = () => {
@@ -3060,30 +3077,31 @@ class xr {
3060
3077
  }), this._mouseenterHandler && this.menu.removeEventListener("mouseenter", this._mouseenterHandler), this._mouseleaveHandler && this.menu.removeEventListener("mouseleave", this._mouseleaveHandler)), this._keydownHandler && document.removeEventListener("keydown", this._keydownHandler), this._documentClickListener && this._documentClickListener.unsubscribe ? this._documentClickListener.unsubscribe() : this._documentClickHandler && document.removeEventListener("click", this._documentClickHandler), this.appendToBody && this._originalParent && this._restoreMenuFromBody(), this._documentClickHandler = null, this._documentClickListener = null, this._triggerClickHandler = null, this._itemClickHandler = null, this._keydownHandler = null, this._mouseenterHandler = null, this._mouseleaveHandler = null, this._triggerMouseenterHandler = null, this._triggerMouseleaveHandler = null, this._triggerKeydownHandler = null, this.element.__kupolaInitialized = !1);
3061
3078
  }
3062
3079
  }
3063
- function jt(i, t) {
3064
- const e = new xr(i, t);
3080
+ function Jt(i, t) {
3081
+ const e = new Er(i, t);
3065
3082
  e.init(), i._kupolaDropdown = e;
3066
3083
  }
3067
- function mo(i = document) {
3084
+ function go(i = document) {
3068
3085
  i.querySelectorAll(".ds-dropdown").forEach((t) => {
3069
- jt(t);
3086
+ Jt(t);
3070
3087
  });
3071
3088
  }
3072
- function Jt(i) {
3089
+ function Zt(i) {
3073
3090
  i._kupolaDropdown && (i._kupolaDropdown.destroy(), i._kupolaDropdown = null);
3074
3091
  }
3075
- function go() {
3092
+ function _o() {
3076
3093
  document.querySelectorAll(".ds-dropdown").forEach((i) => {
3077
- Jt(i);
3094
+ Zt(i);
3078
3095
  });
3079
3096
  }
3080
- E.register("dropdown", jt, Jt);
3081
- class Er {
3097
+ E.register("dropdown", Jt, Zt);
3098
+ class wr {
3082
3099
  constructor(t, e = {}) {
3083
3100
  this.element = t, this.trigger = t.querySelector(".ds-select__trigger"), this.valueEl = t.querySelector(".ds-select__value") || t.querySelector(".ds-select__trigger span"), this.optionsEl = t.querySelector(".ds-select__options") || t.querySelector(".ds-select__menu"), this.nativeSelect = t.querySelector("select"), this.icon = t.querySelector(".ds-select__icon"), this.scope = `select-${Math.random().toString(36).substr(2, 9)}`, this.multiple = e.multiple || t.hasAttribute("data-select-multiple"), this.searchable = e.searchable || t.hasAttribute("data-select-search"), this.clearable = e.clearable || t.hasAttribute("data-select-clear"), this.placeholder = e.placeholder || t.getAttribute("data-select-placeholder") || "", this.disabled = e.disabled || t.hasAttribute("data-select-disabled"), this.maxSelection = e.maxSelection || parseInt(t.getAttribute("data-select-max")) || 1 / 0, this.remoteMethod = e.remoteMethod || null, this.onChange = e.onChange || null, this.appendToBody = e.appendToBody !== !1, this.isOpen = !1, this.selectedValues = /* @__PURE__ */ new Set(), this.allOptions = [], this.filteredOptions = [], this.focusIndex = -1, this.searchInput = null, this.clearBtn = null, this.tagsWrap = null, this._originalParent = null, this._originalPosition = null, this._triggerClickHandler = null, this._documentClickHandler = null, this._documentClickListener = null, this._optionClickHandler = null, this._keydownHandler = null;
3084
3101
  }
3085
3102
  init() {
3086
3103
  !this.trigger || !this.optionsEl || this.element.__kupolaInitialized || (this._collectOptions(), this.searchable && this._createSearchInput(), this.clearable && this._createClearButton(), this.multiple && this._createTagsWrap(), this.placeholder && this.valueEl && (this.valueEl.setAttribute("data-placeholder", this.placeholder), this.selectedValues.size || (this.valueEl.classList.add("ds-select__value--placeholder"), this.valueEl.textContent = this.placeholder)), this._optionClickHandler = (t) => {
3104
+ t.stopPropagation();
3087
3105
  const e = t.currentTarget;
3088
3106
  if (e.classList.contains("is-disabled")) return;
3089
3107
  const s = e.getAttribute("data-value");
@@ -3265,10 +3283,13 @@ class Er {
3265
3283
  this._scrollHandler && (window.removeEventListener("scroll", this._scrollHandler, !0), this._scrollHandler = null);
3266
3284
  }
3267
3285
  _appendOptionsToBody() {
3268
- this.optionsEl && (this._originalParent = this.optionsEl.parentNode, this._originalPosition = this.optionsEl.style.position, this._originalTop = this.optionsEl.style.top, this._originalLeft = this.optionsEl.style.left, this._originalRight = this.optionsEl.style.right, this._originalWidth = this.optionsEl.style.width, this.optionsEl.style.position = "fixed", this.optionsEl.style.zIndex = "9999", document.body.appendChild(this.optionsEl));
3286
+ if (!this.optionsEl) return;
3287
+ this._originalParent = this.optionsEl.parentNode, this._originalPosition = this.optionsEl.style.position, this._originalTop = this.optionsEl.style.top, this._originalLeft = this.optionsEl.style.left, this._originalRight = this.optionsEl.style.right, this._originalWidth = this.optionsEl.style.width, this._originalTransform = this.optionsEl.style.transform, this._originalZIndex = this.optionsEl.style.zIndex;
3288
+ const t = W().dropdown;
3289
+ this.optionsEl.style.position = "fixed", this.optionsEl.style.zIndex = t, this.optionsEl.style.transform = "translateZ(0)", document.body.appendChild(this.optionsEl);
3269
3290
  }
3270
3291
  _restoreOptionsFromBody() {
3271
- !this.optionsEl || !this._originalParent || (this._originalParent.appendChild(this.optionsEl), this.optionsEl.style.position = this._originalPosition || "", this.optionsEl.style.top = this._originalTop || "", this.optionsEl.style.left = this._originalLeft || "", this.optionsEl.style.right = this._originalRight || "", this.optionsEl.style.width = this._originalWidth || "", this.optionsEl.style.zIndex = "", this._originalParent = null);
3292
+ !this.optionsEl || !this._originalParent || (this._originalParent.appendChild(this.optionsEl), this.optionsEl.style.position = this._originalPosition || "", this.optionsEl.style.top = this._originalTop || "", this.optionsEl.style.left = this._originalLeft || "", this.optionsEl.style.right = this._originalRight || "", this.optionsEl.style.width = this._originalWidth || "", this.optionsEl.style.zIndex = this._originalZIndex || "", this.optionsEl.style.transform = this._originalTransform || "", this._originalParent = null);
3272
3293
  }
3273
3294
  _calculateOptionsPosition() {
3274
3295
  if (!this.appendToBody || !this.optionsEl) return;
@@ -3313,22 +3334,22 @@ class Er {
3313
3334
  }
3314
3335
  }
3315
3336
  function Gt(i, t) {
3316
- const e = new Er(i, t);
3337
+ const e = new wr(i, t);
3317
3338
  e.init(), i._kupolaSelect = e;
3318
3339
  }
3319
- function _o(i = document) {
3340
+ function yo(i = document) {
3320
3341
  i.querySelectorAll(".ds-select").forEach((t) => {
3321
3342
  Gt(t);
3322
3343
  });
3323
3344
  }
3324
- function wr(i) {
3345
+ function kr(i) {
3325
3346
  i._kupolaSelect && (i._kupolaSelect.destroy(), i._kupolaSelect = null);
3326
3347
  }
3327
- E.register("select", Gt, wr);
3328
- class kr {
3348
+ E.register("select", Gt, kr);
3349
+ class Cr {
3329
3350
  constructor(t, e = {}) {
3330
3351
  this.element = t, this.input = t.querySelector("input"), this.endInput = t.querySelector(".ds-datepicker__end-input"), this.icon = t.querySelector(".ds-datepicker__icon"), this.calendarEl = t.querySelector(".ds-datepicker__calendar"), this.scope = `datepicker-${Math.random().toString(36).substr(2, 9)}`;
3331
- const s = X(), n = s.datepicker?.weekStart !== void 0 ? s.datepicker.weekStart : 1;
3352
+ const s = j(), n = s.datepicker?.weekStart !== void 0 ? s.datepicker.weekStart : 1;
3332
3353
  this.format = e.format || t.getAttribute("data-datepicker-format") || "YYYY-MM-DD", this.range = e.range || t.hasAttribute("data-datepicker-range"), this.minDate = e.minDate || t.getAttribute("data-datepicker-min") || null, this.maxDate = e.maxDate || t.getAttribute("data-datepicker-max") || null, this.disabledDate = e.disabledDate || null, this.weekStart = e.weekStart !== void 0 ? e.weekStart : parseInt(t.getAttribute("data-datepicker-week-start")) || n, this.appendToBody = e.appendToBody !== !1, this.placeholder = e.placeholder || t.getAttribute("data-datepicker-placeholder") || "", this.showToday = e.showToday !== !1, this.showWeekNumber = e.showWeekNumber || t.hasAttribute("data-datepicker-week-number"), this.onChange = e.onChange || null, this.months = e.months || ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], this.weekDays = e.weekDays || ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], this.todayText = e.todayText || "Today", this.clearText = e.clearText || "Clear", this.currentDate = /* @__PURE__ */ new Date(), this.viewMode = "days", this.selectedDate = null, this.rangeStart = null, this.rangeEnd = null, this.isSelectingEnd = !1, this._iconClickHandler = null, this._inputClickHandler = null, this._endInputClickHandler = null, this._documentClickHandler = null, this._originalParent = null, this._documentClickListener = null, this._resizeHandler = null, this._resizeListener = null, this._keydownHandler = null;
3333
3354
  }
3334
3355
  init() {
@@ -3407,10 +3428,13 @@ class kr {
3407
3428
  this._scrollHandler && (window.removeEventListener("scroll", this._scrollHandler, !0), this._scrollHandler = null);
3408
3429
  }
3409
3430
  _appendCalendarToBody() {
3410
- this.calendarEl && (this._originalParent = this.calendarEl.parentNode, this._originalPosition = this.calendarEl.style.position, this._originalTop = this.calendarEl.style.top, this._originalLeft = this.calendarEl.style.left, this._originalWidth = this.calendarEl.style.width, this.calendarEl.style.position = "fixed", this.calendarEl.style.zIndex = "9999", document.body.appendChild(this.calendarEl));
3431
+ if (!this.calendarEl) return;
3432
+ this._originalParent = this.calendarEl.parentNode, this._originalPosition = this.calendarEl.style.position, this._originalTop = this.calendarEl.style.top, this._originalLeft = this.calendarEl.style.left, this._originalWidth = this.calendarEl.style.width, this._originalTransform = this.calendarEl.style.transform, this._originalZIndex = this.calendarEl.style.zIndex;
3433
+ const t = W().datepicker;
3434
+ this.calendarEl.style.position = "fixed", this.calendarEl.style.zIndex = t, this.calendarEl.style.transform = "translateZ(0)", document.body.appendChild(this.calendarEl);
3411
3435
  }
3412
3436
  _restoreCalendarFromBody() {
3413
- !this.calendarEl || !this._originalParent || (this._originalParent.appendChild(this.calendarEl), this.calendarEl.style.position = this._originalPosition || "", this.calendarEl.style.top = this._originalTop || "", this.calendarEl.style.left = this._originalLeft || "", this.calendarEl.style.width = this._originalWidth || "", this.calendarEl.style.zIndex = "", this._originalParent = null);
3437
+ !this.calendarEl || !this._originalParent || (this._originalParent.appendChild(this.calendarEl), this.calendarEl.style.position = this._originalPosition || "", this.calendarEl.style.top = this._originalTop || "", this.calendarEl.style.left = this._originalLeft || "", this.calendarEl.style.width = this._originalWidth || "", this.calendarEl.style.zIndex = this._originalZIndex || "", this.calendarEl.style.transform = this._originalTransform || "", this._originalParent = null);
3414
3438
  }
3415
3439
  resizeHandler() {
3416
3440
  this.calendarEl.style.display === "block" && this.calculatePosition();
@@ -3585,20 +3609,20 @@ class kr {
3585
3609
  }), this.appendToBody && this._originalParent && this._restoreCalendarFromBody(), this._documentClickHandler = null, this._resizeHandler = null, this._documentClickListener = null, this._resizeListener = null, this._iconClickHandler = null, this._inputClickHandler = null, this._endInputClickHandler = null, this._keydownHandler = null, this.element.__kupolaInitialized = !1);
3586
3610
  }
3587
3611
  }
3588
- function Zt(i, t) {
3589
- const e = new kr(i, t);
3612
+ function Qt(i, t) {
3613
+ const e = new Cr(i, t);
3590
3614
  e.init(), i._kupolaDatepicker = e;
3591
3615
  }
3592
- function yo(i = document) {
3616
+ function vo(i = document) {
3593
3617
  i.querySelectorAll(".ds-datepicker").forEach((t) => {
3594
- Zt(t);
3618
+ Qt(t);
3595
3619
  });
3596
3620
  }
3597
- function Cr(i) {
3621
+ function Sr(i) {
3598
3622
  i._kupolaDatepicker && (i._kupolaDatepicker.destroy(), i._kupolaDatepicker = null);
3599
3623
  }
3600
- E.register("datepicker", Zt, Cr);
3601
- class Sr {
3624
+ E.register("datepicker", Qt, Sr);
3625
+ class Lr {
3602
3626
  constructor(t, e = {}) {
3603
3627
  this.element = t, this.input = t.querySelector("input"), this.inputWrap = t.querySelector(".ds-timepicker__input-wrap"), this.panelEl = null, this.scope = `timepicker-${Math.random().toString(36).substr(2, 9)}`, this.showSeconds = e.showSeconds || t.hasAttribute("data-timepicker-seconds"), this.use12Hour = e.use12Hour || t.hasAttribute("data-timepicker-12h"), this.hourStep = e.hourStep || parseInt(t.getAttribute("data-timepicker-hour-step")) || 1, this.minuteStep = e.minuteStep || parseInt(t.getAttribute("data-timepicker-minute-step")) || 5, this.secondStep = e.secondStep || parseInt(t.getAttribute("data-timepicker-second-step")) || 5, this.minTime = e.minTime || t.getAttribute("data-timepicker-min") || null, this.maxTime = e.maxTime || t.getAttribute("data-timepicker-max") || null, this.disabledTime = e.disabledTime || null, this.placeholder = e.placeholder || t.getAttribute("data-timepicker-placeholder") || "", this.clearable = e.clearable || t.hasAttribute("data-timepicker-clear"), this.onChange = e.onChange || null, this.selectedHour = 12, this.selectedMinute = 0, this.selectedSecond = 0, this.isPM = !1, this._inputWrapClickHandler = null, this._documentClickHandler = null, this._documentClickListener = null, this._resizeHandler = null, this._resizeListener = null, this._keydownHandler = null;
3604
3628
  }
@@ -3780,20 +3804,20 @@ class Sr {
3780
3804
  this.element.__kupolaInitialized && (this.inputWrap && this._inputWrapClickHandler && this.inputWrap.removeEventListener("click", this._inputWrapClickHandler), this._documentClickListener && this._documentClickListener.unsubscribe ? this._documentClickListener.unsubscribe() : this._documentClickHandler && document.removeEventListener("click", this._documentClickHandler), this._resizeListener && this._resizeListener.unsubscribe ? this._resizeListener.unsubscribe() : this._resizeHandler && window.removeEventListener("resize", this._resizeHandler), this._keydownHandler && document.removeEventListener("keydown", this._keydownHandler), this.panelEl && (this.panelEl.remove(), this.panelEl = null), this._inputWrapClickHandler = null, this._documentClickHandler = null, this._documentClickListener = null, this._resizeHandler = null, this._resizeListener = null, this._keydownHandler = null, this.element.__kupolaInitialized = !1);
3781
3805
  }
3782
3806
  }
3783
- function Qt(i, t) {
3784
- const e = new Sr(i, t);
3807
+ function te(i, t) {
3808
+ const e = new Lr(i, t);
3785
3809
  e.init(), i._kupolaTimepicker = e;
3786
3810
  }
3787
- function vo(i = document) {
3811
+ function bo(i = document) {
3788
3812
  i.querySelectorAll(".ds-timepicker").forEach((t) => {
3789
- Qt(t);
3813
+ te(t);
3790
3814
  });
3791
3815
  }
3792
- function Lr(i) {
3816
+ function Dr(i) {
3793
3817
  i._kupolaTimepicker && (i._kupolaTimepicker.destroy(), i._kupolaTimepicker = null);
3794
3818
  }
3795
- E.register("timepicker", Qt, Lr);
3796
- class Dr {
3819
+ E.register("timepicker", te, Dr);
3820
+ class Hr {
3797
3821
  constructor(t, e = {}) {
3798
3822
  if (this.element = t, this.track = t.querySelector(".ds-slider__track"), this.fill = t.querySelector(".ds-slider__fill"), this.input = t.querySelector(".ds-slider__input"), this.valueEl = t.querySelector(".ds-slider__value"), this.range = e.range || t.hasAttribute("data-slider-range"), this.vertical = e.vertical || t.hasAttribute("data-slider-vertical"), this.disabled = e.disabled || t.hasAttribute("data-slider-disabled"), this.showTooltip = e.showTooltip !== !1, this.showMarks = e.marks || t.hasAttribute("data-slider-marks"), this.markStep = e.markStep || parseInt(t.getAttribute("data-slider-mark-step")) || 10, this.tooltipFormat = e.tooltipFormat || ((s) => s), this.onChange = e.onChange || null, this.onInput = e.onInput || null, this.inputEnd = t.querySelector(".ds-slider__input--end"), this.fillEnd = null, this.thumbStart = null, this.thumbEnd = null, this.tooltipStart = null, this.tooltipEnd = null, this.marksEl = null, this._listeners = [], this._isDragging = !1, this._activeThumb = null, !this.track || !this.fill)
3799
3823
  throw new Error("Slider: Missing required elements");
@@ -3941,26 +3965,26 @@ class Dr {
3941
3965
  this.disabled = !0, this.element.classList.add("is-disabled");
3942
3966
  }
3943
3967
  }
3944
- function te(i, t) {
3968
+ function ee(i, t) {
3945
3969
  if (!i.__kupolaInitialized)
3946
3970
  try {
3947
- const e = new Dr(i, t);
3971
+ const e = new Hr(i, t);
3948
3972
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
3949
3973
  } catch (e) {
3950
3974
  console.error("[Slider] Error initializing:", e);
3951
3975
  }
3952
3976
  }
3953
- function Hr(i) {
3977
+ function Mr(i) {
3954
3978
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
3955
3979
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
3956
3980
  }
3957
- function bo() {
3981
+ function xo() {
3958
3982
  document.querySelectorAll(".ds-slider").forEach((i) => {
3959
- te(i);
3983
+ ee(i);
3960
3984
  });
3961
3985
  }
3962
- E.register("slider", te, Hr);
3963
- class Mr {
3986
+ E.register("slider", ee, Mr);
3987
+ class Tr {
3964
3988
  constructor(t, e = {}) {
3965
3989
  this.element = t, this.track = t.querySelector(".ds-carousel__track"), this.items = t.querySelectorAll(".ds-carousel__item"), this.prevBtn = t.querySelector(".ds-carousel__prev"), this.nextBtn = t.querySelector(".ds-carousel__next"), this.indicators = t.querySelectorAll(".ds-carousel__indicator"), this.autoBtn = t.querySelector(".ds-carousel__auto"), this.mode = e.mode || t.getAttribute("data-carousel-mode") || "slide", this.vertical = e.vertical || t.hasAttribute("data-carousel-vertical"), this.autoPlay = e.autoPlay !== !1, this.interval = e.interval || parseInt(t.getAttribute("data-carousel-interval")) || 3e3, this.transitionDuration = e.transitionDuration || parseInt(t.getAttribute("data-carousel-duration")) || 500, this.loop = e.loop !== !1, this.pauseOnHover = e.pauseOnHover !== !1, this.swipe = e.swipe !== !1, this.swipeThreshold = e.swipeThreshold || 50, this.keyboardNav = e.keyboardNav || t.hasAttribute("data-carousel-keyboard"), this.onChange = e.onChange || null, this.currentIndex = 0, this.totalItems = this.items.length, this.autoPlayTimer = null, this.isAutoPlaying = !1, this.isTransitioning = !1, this.touchStartX = 0, this.touchStartY = 0, this.touchDeltaX = 0, this.touchDeltaY = 0, this.isSwiping = !1, this._mouseEnterHandler = () => {
3966
3990
  this.pauseOnHover && this.stopAutoPlay();
@@ -4041,22 +4065,22 @@ class Mr {
4041
4065
  }), this._touchStartHandler && this.element.removeEventListener("touchstart", this._touchStartHandler), this._touchMoveHandler && this.element.removeEventListener("touchmove", this._touchMoveHandler), this._touchEndHandler && this.element.removeEventListener("touchend", this._touchEndHandler), this._keydownHandler && this.element.removeEventListener("keydown", this._keydownHandler), this._prevClickHandler = null, this._nextClickHandler = null, this._autoClickHandler = null, this._indicatorClickHandlers = null;
4042
4066
  }
4043
4067
  }
4044
- function ee(i, t) {
4068
+ function se(i, t) {
4045
4069
  if (i.__kupolaInitialized) return;
4046
- const e = new Mr(i, t);
4070
+ const e = new Tr(i, t);
4047
4071
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
4048
4072
  }
4049
- function xo(i = document) {
4073
+ function Eo(i = document) {
4050
4074
  i.querySelectorAll(".ds-carousel").forEach((t) => {
4051
- ee(t);
4075
+ se(t);
4052
4076
  });
4053
4077
  }
4054
- function Tr(i) {
4078
+ function Ir(i) {
4055
4079
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
4056
4080
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
4057
4081
  }
4058
- E.register("carousel", ee, Tr);
4059
- class Ir {
4082
+ E.register("carousel", se, Ir);
4083
+ class Ar {
4060
4084
  constructor(t, e = {}) {
4061
4085
  this.element = t, this.mask = t.querySelector(".ds-drawer-mask"), this.drawerEl = t.querySelector(".ds-drawer"), this.placement = e.placement || t.getAttribute("data-drawer-placement") || "right", this.width = e.width || t.getAttribute("data-drawer-width") || "400px", this.height = e.height || t.getAttribute("data-drawer-height") || "400px", this.escClose = e.escClose !== !1, this.maskClosable = e.maskClosable !== !1, this.showMask = e.showMask !== !1, this.onOpen = e.onOpen || null, this.onClose = e.onClose || null, this.onBeforeClose = e.onBeforeClose || null, this._keydownHandler = null, this._bindEvents();
4062
4086
  }
@@ -4093,20 +4117,20 @@ class Ir {
4093
4117
  return this.drawerEl?.classList.contains("is-visible") || !1;
4094
4118
  }
4095
4119
  }
4096
- function ot(i, t) {
4120
+ function lt(i, t) {
4097
4121
  if (i.__kupolaInitialized) return;
4098
- const e = new Ir(i, t);
4122
+ const e = new Ar(i, t);
4099
4123
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
4100
4124
  }
4101
- function Ar(i) {
4125
+ function zr(i) {
4102
4126
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
4103
4127
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
4104
4128
  }
4105
- function Eo() {
4129
+ function wo() {
4106
4130
  document.querySelectorAll("[data-drawer]").forEach((i) => {
4107
4131
  i.addEventListener("click", () => {
4108
4132
  const t = i.getAttribute("data-drawer"), e = document.getElementById(t);
4109
- e && (ot(e, {
4133
+ e && (lt(e, {
4110
4134
  placement: i.getAttribute("data-drawer-placement") || "right",
4111
4135
  width: i.getAttribute("data-drawer-width"),
4112
4136
  height: i.getAttribute("data-drawer-height")
@@ -4114,14 +4138,14 @@ function Eo() {
4114
4138
  });
4115
4139
  }), document.querySelectorAll(".ds-drawer-mask").forEach((i) => {
4116
4140
  const t = i.parentElement;
4117
- t && ot(t);
4141
+ t && lt(t);
4118
4142
  });
4119
4143
  }
4120
- E.register("drawer", ot, Ar);
4144
+ E.register("drawer", lt, zr);
4121
4145
  class $ {
4122
4146
  constructor(t, e = {}) {
4123
4147
  this.element = t, this.mask = t.querySelector(".ds-modal-mask"), this.modal = t.querySelector(".ds-modal"), this.closeBtn = t.querySelector(".ds-modal__close");
4124
- const s = X(), n = s.modal?.backdropClick !== void 0 ? s.modal.backdropClick : !0;
4148
+ const s = j(), n = s.modal?.backdropClick !== void 0 ? s.modal.backdropClick : !0;
4125
4149
  this.fullscreen = e.fullscreen || t.hasAttribute("data-modal-fullscreen"), this.closableOnMask = e.closableOnMask !== void 0 ? e.closableOnMask : n, this.escClose = e.escClose !== !1, this.width = e.width || t.getAttribute("data-modal-width") || "", this.center = e.center !== !1, this.onBeforeOpen = e.onBeforeOpen || null, this.onBeforeClose = e.onBeforeClose || null, this.onOpened = e.onOpened || null, this.onClosed = e.onClosed || null, this._isOpen = !1, this._keydownHandler = (r) => {
4126
4150
  this.escClose && r.key === "Escape" && this.isVisible() && this.close();
4127
4151
  }, this._closeBtnClickHandler = () => this.close(), this._maskClickHandler = (r) => {
@@ -4154,7 +4178,7 @@ class $ {
4154
4178
  }
4155
4179
  }
4156
4180
  $._openCount = 0;
4157
- function se(i = {}) {
4181
+ function ie(i = {}) {
4158
4182
  const {
4159
4183
  title: t = "",
4160
4184
  content: e = "",
@@ -4174,7 +4198,7 @@ function se(i = {}) {
4174
4198
  onOpen: y,
4175
4199
  onClose: _,
4176
4200
  footer: b = null,
4177
- size: x = X().defaultSize
4201
+ size: x = j().defaultSize
4178
4202
  } = i, v = x === "sm" ? "ds-btn--sm" : x === "lg" ? "ds-btn--lg" : "", C = document.createElement("div");
4179
4203
  C.className = "ds-modal-container";
4180
4204
  let S = "";
@@ -4202,8 +4226,8 @@ function se(i = {}) {
4202
4226
  const z = C.querySelector(".ds-modal__body");
4203
4227
  z && (s ? z.innerHTML = e : z.textContent = e);
4204
4228
  const D = C.querySelector("[data-modal-confirm]"), q = C.querySelector("[data-modal-cancel]");
4205
- let dt = !1;
4206
- const ut = async () => {
4229
+ let ut = !1;
4230
+ const pt = async () => {
4207
4231
  if (p) {
4208
4232
  D.disabled = !0, D.classList.add("is-loading");
4209
4233
  try {
@@ -4216,52 +4240,52 @@ function se(i = {}) {
4216
4240
  return;
4217
4241
  }
4218
4242
  }
4219
- dt = !0, k.close();
4220
- }, pt = () => {
4243
+ ut = !0, k.close();
4244
+ }, ft = () => {
4221
4245
  m && m(), k.close();
4222
4246
  };
4223
- D && D.addEventListener("click", ut), q && q.addEventListener("click", pt);
4224
- const we = () => {
4247
+ D && D.addEventListener("click", pt), q && q.addEventListener("click", ft);
4248
+ const ke = () => {
4225
4249
  setTimeout(() => {
4226
- D && D.removeEventListener("click", ut), q && q.removeEventListener("click", pt), k.destroy(), C.remove(), _ && _(dt);
4250
+ D && D.removeEventListener("click", pt), q && q.removeEventListener("click", ft), k.destroy(), C.remove(), _ && _(ut);
4227
4251
  }, 300);
4228
- }, ke = k.close.bind(k);
4252
+ }, Ce = k.close.bind(k);
4229
4253
  return k.close = () => {
4230
- ke(), we();
4254
+ Ce(), ke();
4231
4255
  }, k.open(), y && setTimeout(() => y(), 50), k;
4232
4256
  }
4233
- function wo(i) {
4234
- return typeof i == "string" && (i = { content: i }), se({
4257
+ function ko(i) {
4258
+ return typeof i == "string" && (i = { content: i }), ie({
4235
4259
  ...i,
4236
4260
  showCancel: !0,
4237
4261
  showConfirm: !0
4238
4262
  });
4239
4263
  }
4240
- function ko(i) {
4241
- return typeof i == "string" && (i = { content: i }), se({
4264
+ function Co(i) {
4265
+ return typeof i == "string" && (i = { content: i }), ie({
4242
4266
  ...i,
4243
4267
  showCancel: !1,
4244
4268
  showConfirm: !0
4245
4269
  });
4246
4270
  }
4247
- function ie(i) {
4271
+ function ne(i) {
4248
4272
  if (i.__kupolaInitialized)
4249
4273
  return;
4250
4274
  const t = new $(i);
4251
4275
  i.__kupolaInstance = t, i.__kupolaInitialized = !0;
4252
4276
  }
4253
- function zr(i) {
4277
+ function Pr(i) {
4254
4278
  if (!i.__kupolaInitialized || !i.__kupolaInstance)
4255
4279
  return;
4256
4280
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
4257
4281
  }
4258
- function Co() {
4282
+ function So() {
4259
4283
  document.querySelectorAll(".ds-modal-container").forEach((i) => {
4260
- ie(i);
4284
+ ne(i);
4261
4285
  });
4262
4286
  }
4263
- E.register("modal", ie, zr);
4264
- class So {
4287
+ E.register("modal", ne, Pr);
4288
+ class Lo {
4265
4289
  static normal(t = {}) {
4266
4290
  return this._create({ type: "normal", ...t });
4267
4291
  }
@@ -4326,7 +4350,7 @@ class So {
4326
4350
  return c.classList.add("is-visible"), document.body.style.overflow = "hidden", h && h.addEventListener("click", p), d && d.addEventListener("click", m), c.addEventListener("click", f), document.addEventListener("keydown", u), { close: y };
4327
4351
  }
4328
4352
  }
4329
- const Lo = {
4353
+ const Do = {
4330
4354
  normal: function(i) {
4331
4355
  this.show({ ...i, type: "normal" });
4332
4356
  },
@@ -4343,7 +4367,7 @@ const Lo = {
4343
4367
  this.show({ ...i, type: "info" });
4344
4368
  },
4345
4369
  show: function(i) {
4346
- const t = ur(), { title: e, message: s, type: n = "normal", duration: r = t.duration, position: a = t.position } = i, o = document.createElement("div");
4370
+ const t = pr(), { title: e, message: s, type: n = "normal", duration: r = t.duration, position: a = t.position } = i, o = document.createElement("div");
4347
4371
  o.className = `ds-notification__item ds-notification__item--${n}`;
4348
4372
  const l = {
4349
4373
  normal: '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><line x1="12" y1="16" x2="12" y2="12"/><line x1="12" y1="8" x2="12.01" y2="8"/></svg>',
@@ -4363,7 +4387,12 @@ const Lo = {
4363
4387
  </button>
4364
4388
  `, e && (o.querySelector(".ds-notification__title").textContent = e), s && (o.querySelector(".ds-notification__message").textContent = s);
4365
4389
  let c = document.querySelector(".ds-notification");
4366
- c || (c = document.createElement("div"), c.className = `ds-notification ds-notification--${a}`, document.body.appendChild(c)), c.appendChild(o), setTimeout(() => {
4390
+ if (!c) {
4391
+ c = document.createElement("div"), c.className = `ds-notification ds-notification--${a}`;
4392
+ const h = W().notification;
4393
+ c.style.zIndex = h, c.style.transform = "translateZ(0)", document.body.appendChild(c);
4394
+ }
4395
+ c.appendChild(o), setTimeout(() => {
4367
4396
  o.classList.add("is-visible");
4368
4397
  }, 10), o.querySelector(".ds-notification__close").addEventListener("click", () => {
4369
4398
  o.classList.remove("is-visible"), o.classList.add("is-exiting"), setTimeout(() => o.remove(), 300);
@@ -4372,9 +4401,9 @@ const Lo = {
4372
4401
  }, r);
4373
4402
  }
4374
4403
  };
4375
- function Do() {
4404
+ function Ho() {
4376
4405
  }
4377
- const Ho = {
4406
+ const Mo = {
4378
4407
  normal: function(i, t = {}) {
4379
4408
  this.show(i, "normal", t);
4380
4409
  },
@@ -4391,7 +4420,7 @@ const Ho = {
4391
4420
  this.show(i, "info", t);
4392
4421
  },
4393
4422
  show: function(i, t = "normal", e = {}) {
4394
- const s = dr(), { duration: n = s.duration, position: r = s.position } = e, a = s.maxCount || 5, o = document.createElement("div");
4423
+ const s = ur(), { duration: n = s.duration, position: r = s.position } = e, a = s.maxCount || 5, o = document.createElement("div");
4395
4424
  o.className = `ds-message__item ds-message__item--${t}`;
4396
4425
  const l = {
4397
4426
  normal: '<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><line x1="12" y1="16" x2="12" y2="12"/><line x1="12" y1="8" x2="12.01" y2="8"/></svg>',
@@ -4405,7 +4434,11 @@ const Ho = {
4405
4434
  <div class="ds-message__content"></div>
4406
4435
  `, o.querySelector(".ds-message__content").textContent = i;
4407
4436
  let c = document.querySelector(".ds-message");
4408
- c || (c = document.createElement("div"), c.className = `ds-message ds-message--${r}`, document.body.appendChild(c));
4437
+ if (!c) {
4438
+ c = document.createElement("div"), c.className = `ds-message ds-message--${r}`;
4439
+ const d = W().message;
4440
+ c.style.zIndex = d, c.style.transform = "translateZ(0)", document.body.appendChild(c);
4441
+ }
4409
4442
  const h = c.querySelectorAll(".ds-message__item");
4410
4443
  if (h.length >= a) {
4411
4444
  const d = h[0];
@@ -4418,12 +4451,12 @@ const Ho = {
4418
4451
  }, n);
4419
4452
  }
4420
4453
  };
4421
- function Mo() {
4454
+ function To() {
4422
4455
  }
4423
- function vt(i) {
4456
+ function bt(i) {
4424
4457
  return i ? i.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;") : "";
4425
4458
  }
4426
- class Pr {
4459
+ class $r {
4427
4460
  constructor(t) {
4428
4461
  this.element = t, this.dropzone = t.querySelector(".ds-fileupload__dropzone"), this.input = t.querySelector(".ds-fileupload__input"), this.list = t.querySelector(".ds-fileupload__list"), this.progress = t.querySelector(".ds-fileupload__preview"), this.files = [], this.maxSize = parseInt(t.getAttribute("data-max-size")) || 0, this.maxCount = parseInt(t.getAttribute("data-max-count")) || 0, this._listeners = [], this.init();
4429
4462
  }
@@ -4479,7 +4512,7 @@ class Pr {
4479
4512
  <div class="ds-fileupload__icon" style="width: 24px; height: 24px; border-radius: 4px;">
4480
4513
  ${s}
4481
4514
  </div>
4482
- <span class="ds-fileupload__filename">${this.truncateFilename(vt(t.name))}</span>
4515
+ <span class="ds-fileupload__filename">${this.truncateFilename(bt(t.name))}</span>
4483
4516
  <span class="ds-fileupload__size">${this.formatSize(t.size)}</span>
4484
4517
  <button class="ds-fileupload__remove" type="button" aria-label="Remove file">
4485
4518
  <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
@@ -4531,7 +4564,7 @@ class Pr {
4531
4564
  e.onload = (s) => {
4532
4565
  const n = document.createElement("div");
4533
4566
  n.className = "ds-fileupload__preview-item", n.innerHTML = `
4534
- <img src="${s.target.result}" alt="${vt(t.name)}">
4567
+ <img src="${s.target.result}" alt="${bt(t.name)}">
4535
4568
  <button class="ds-fileupload__preview-remove" type="button" aria-label="Remove preview">
4536
4569
  <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
4537
4570
  <path d="M18 6L6 18"/>
@@ -4581,22 +4614,22 @@ class Pr {
4581
4614
  }), this._listeners = null, this.files = [], this.dropzone = null, this.input = null, this.list = null, this.progress = null, this.preview = null, this.element = null;
4582
4615
  }
4583
4616
  }
4584
- function ne(i) {
4617
+ function re(i) {
4585
4618
  if (i.__kupolaInitialized) return;
4586
- const t = new Pr(i);
4619
+ const t = new $r(i);
4587
4620
  i.__kupolaInstance = t, i.__kupolaInitialized = !0;
4588
4621
  }
4589
- function $r(i) {
4622
+ function Br(i) {
4590
4623
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
4591
4624
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
4592
4625
  }
4593
- function To() {
4626
+ function Io() {
4594
4627
  document.querySelectorAll(".ds-fileupload").forEach((i) => {
4595
- ne(i);
4628
+ re(i);
4596
4629
  });
4597
4630
  }
4598
- E.register("fileupload", ne, $r);
4599
- class Br {
4631
+ E.register("fileupload", re, Br);
4632
+ class qr {
4600
4633
  constructor(t, e = {}) {
4601
4634
  this.element = t, this.headers = [], this._listeners = [], this.accordion = e.accordion || t.hasAttribute("data-collapse-accordion"), this.animationDuration = e.animationDuration || parseInt(t.getAttribute("data-collapse-duration")) || 300, this.disabledItems = e.disabledItems || [], this.defaultExpanded = e.defaultExpanded || [], this._init();
4602
4635
  }
@@ -4678,22 +4711,22 @@ class Br {
4678
4711
  this.headers[t] && (this.headers[t].isDisabled = !1, this.headers[t].item.classList.remove("is-disabled"));
4679
4712
  }
4680
4713
  }
4681
- function re(i, t) {
4714
+ function ae(i, t) {
4682
4715
  if (i.__kupolaInitialized) return;
4683
- const e = new Br(i, t);
4716
+ const e = new qr(i, t);
4684
4717
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
4685
4718
  }
4686
- function qr(i) {
4719
+ function Or(i) {
4687
4720
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
4688
4721
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
4689
4722
  }
4690
- function Io() {
4723
+ function Ao() {
4691
4724
  document.querySelectorAll(".ds-collapse").forEach((i) => {
4692
- re(i);
4725
+ ae(i);
4693
4726
  });
4694
4727
  }
4695
- E.register("collapse", re, qr);
4696
- class Or {
4728
+ E.register("collapse", ae, Or);
4729
+ class Fr {
4697
4730
  constructor(t, e = {}) {
4698
4731
  this.element = t, this.trigger = t.querySelector(".ds-color-picker__trigger"), this.panel = t.querySelector(".ds-color-picker__panel"), this.valueSpan = t.querySelector(".ds-color-picker__value"), this.customInput = t.querySelector(".ds-color-picker__input"), this.scope = `colorpicker-${Math.random().toString(36).substr(2, 9)}`, this.options = e, this.value = e.value || "#007bff", this.showAlpha = e.showAlpha !== !1, this.mode = e.mode || "hex", this.previousColors = e.previousColors || this._getStoredColors(), this.previousColorsLimit = e.previousColorsLimit || 12, this._triggerClickHandler = null, this._documentClickHandler = null, this._documentClickListener = null, this._colorClickHandler = null, this._inputInputHandler = null, this._alphaChangeHandler = null, this._modeChangeHandler = null, this._hueChangeHandler = null, this._saturationChangeHandler = null, this._valueChangeHandler = null, this.hue = 210, this.saturation = 100, this.brightness = 50, this.alpha = 100, this._colorStringToHSB(this.value);
4699
4732
  }
@@ -4858,20 +4891,20 @@ class Or {
4858
4891
  }), this._documentClickListener && this._documentClickListener.unsubscribe ? this._documentClickListener.unsubscribe() : this._documentClickHandler && document.removeEventListener("click", this._documentClickHandler), this._documentClickHandler = null, this._documentClickListener = null, this._triggerClickHandler = null, this._colorClickHandler = null, this._inputInputHandler = null, this._alphaChangeHandler = null, this._modeChangeHandler = null, this._hueChangeHandler = null, this._saturationChangeHandler = null, this._valueChangeHandler = null, this.element.__kupolaInitialized = !1;
4859
4892
  }
4860
4893
  }
4861
- function ae(i, t) {
4862
- const e = new Or(i, t);
4894
+ function oe(i, t) {
4895
+ const e = new Fr(i, t);
4863
4896
  e.init(), i._kupolaColorPicker = e;
4864
4897
  }
4865
- function Ao(i = document) {
4898
+ function zo(i = document) {
4866
4899
  i.querySelectorAll(".ds-color-picker").forEach((t) => {
4867
- ae(t);
4900
+ oe(t);
4868
4901
  });
4869
4902
  }
4870
- function Fr(i) {
4903
+ function Nr(i) {
4871
4904
  i._kupolaColorPicker && (i._kupolaColorPicker.destroy(), i._kupolaColorPicker = null);
4872
4905
  }
4873
- E.register("color-picker", ae, Fr);
4874
- class Nr {
4906
+ E.register("color-picker", oe, Nr);
4907
+ class Rr {
4875
4908
  constructor(t, e = {}) {
4876
4909
  if (this.element = t, this.titleEl = t.querySelector(".ds-calendar__title"), this.daysEl = t.querySelector(".ds-calendar__days"), this.prevBtn = t.querySelector(".ds-calendar__nav--prev"), this.nextBtn = t.querySelector(".ds-calendar__nav--next"), this.todayBtn = t.querySelector(".ds-calendar__nav--today"), this._listeners = [], !this.titleEl || !this.daysEl)
4877
4910
  throw new Error("Calendar: Missing required elements");
@@ -5068,26 +5101,26 @@ class Nr {
5068
5101
  this.isRangeMode = !this.isRangeMode, this.rangeStart = null, this.rangeEnd = null, this.render(), this._emitChange();
5069
5102
  }
5070
5103
  }
5071
- function oe(i, t) {
5104
+ function le(i, t) {
5072
5105
  if (!i.__kupolaInitialized)
5073
5106
  try {
5074
- const e = new Nr(i, t);
5107
+ const e = new Rr(i, t);
5075
5108
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
5076
5109
  } catch (e) {
5077
5110
  console.error("[Calendar] Error initializing:", e);
5078
5111
  }
5079
5112
  }
5080
- function Rr(i) {
5113
+ function Vr(i) {
5081
5114
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
5082
5115
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
5083
5116
  }
5084
- function zo() {
5117
+ function Po() {
5085
5118
  document.querySelectorAll(".ds-calendar").forEach((i) => {
5086
- oe(i);
5119
+ le(i);
5087
5120
  });
5088
5121
  }
5089
- E.register("calendar", oe, Rr);
5090
- class Vr {
5122
+ E.register("calendar", le, Vr);
5123
+ class Kr {
5091
5124
  constructor(t, e = {}) {
5092
5125
  this.element = t, this.input = t.querySelector(".ds-dynamic-tags__input"), this._listeners = [], this.maxCount = e.maxCount || parseInt(t.getAttribute("data-dynamic-tags-max")) || 1 / 0, this.allowDuplicates = e.allowDuplicates !== !1, this.color = e.color || t.getAttribute("data-dynamic-tags-color") || "default", this.init();
5093
5126
  }
@@ -5233,22 +5266,22 @@ class Vr {
5233
5266
  }), this._listeners = null, this.input = null, this.element = null;
5234
5267
  }
5235
5268
  }
5236
- function le(i, t) {
5269
+ function ce(i, t) {
5237
5270
  if (i.__kupolaInitialized) return;
5238
- const e = new Vr(i, t);
5271
+ const e = new Kr(i, t);
5239
5272
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
5240
5273
  }
5241
- function Kr(i) {
5274
+ function Wr(i) {
5242
5275
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
5243
5276
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
5244
5277
  }
5245
- function Po() {
5278
+ function $o() {
5246
5279
  document.querySelectorAll(".ds-dynamic-tags").forEach((i) => {
5247
- le(i);
5280
+ ce(i);
5248
5281
  });
5249
5282
  }
5250
- E.register("dynamic-tags", le, Kr);
5251
- class ce {
5283
+ E.register("dynamic-tags", ce, Wr);
5284
+ class he {
5252
5285
  constructor(t = {}) {
5253
5286
  this.images = t.images || [], this.currentIndex = t.currentIndex || 0, this.overlay = null, this.closeHandler = this.close.bind(this), this.keyHandler = this.handleKeydown.bind(this), this.clickHandler = this.handleOverlayClick.bind(this), this.zoom = 1, this.rotation = 0, this.zoomStep = t.zoomStep || 0.2, this.minZoom = t.minZoom || 0.5, this.maxZoom = t.maxZoom || 3, this.init();
5254
5287
  }
@@ -5440,18 +5473,18 @@ class ce {
5440
5473
  }
5441
5474
  }
5442
5475
  let V = null;
5443
- function $o() {
5444
- V || (V = new ce()), document.querySelectorAll("[data-image-preview]").forEach((i) => {
5476
+ function Bo() {
5477
+ V || (V = new he()), document.querySelectorAll("[data-image-preview]").forEach((i) => {
5445
5478
  i.addEventListener("click", () => {
5446
5479
  const t = JSON.parse(i.getAttribute("data-image-preview")), e = parseInt(i.getAttribute("data-image-index")) || 0;
5447
5480
  V.show(t, e);
5448
5481
  });
5449
5482
  });
5450
5483
  }
5451
- function Bo(i, t = 0) {
5452
- V || (V = new ce()), V.show(i, t);
5484
+ function qo(i, t = 0) {
5485
+ V || (V = new he()), V.show(i, t);
5453
5486
  }
5454
- class Wr {
5487
+ class Ur {
5455
5488
  constructor(t, e = {}) {
5456
5489
  this.element = t, this.closeBtn = t.querySelector(".ds-tag__close"), this.checkbox = t.querySelector(".ds-tag__checkbox"), this.editInput = t.querySelector(".ds-tag__input"), this._listeners = [], this.color = e.color || t.getAttribute("data-tag-color") || "default", this.size = e.size || t.getAttribute("data-tag-size") || "default", this.checkable = e.checkable || t.hasAttribute("data-tag-checkable"), this.checked = e.checked || t.hasAttribute("data-tag-checked"), this.editable = e.editable || t.hasAttribute("data-tag-editable"), this.maxLength = e.maxLength || parseInt(t.getAttribute("data-tag-maxlength")) || 50, this.init();
5457
5490
  }
@@ -5581,22 +5614,22 @@ class Wr {
5581
5614
  }), this._listeners = [], this.closeBtn = null, this.checkbox = null, this.editInput = null, this.element = null;
5582
5615
  }
5583
5616
  }
5584
- function he(i, t) {
5617
+ function de(i, t) {
5585
5618
  if (i.__kupolaInitialized) return;
5586
- const e = new Wr(i, t);
5619
+ const e = new Ur(i, t);
5587
5620
  i.__kupolaInstance = e, i.__kupolaInitialized = !0;
5588
5621
  }
5589
- function Ur(i) {
5622
+ function Yr(i) {
5590
5623
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
5591
5624
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
5592
5625
  }
5593
- function qo() {
5626
+ function Oo() {
5594
5627
  document.querySelectorAll(".ds-tag").forEach((i) => {
5595
- he(i);
5628
+ de(i);
5596
5629
  });
5597
5630
  }
5598
- E.register("tag", he, Ur);
5599
- class Yr {
5631
+ E.register("tag", de, Yr);
5632
+ class Xr {
5600
5633
  constructor(t) {
5601
5634
  this.element = t, this.valueElement = t.querySelector(".ds-statcard__value"), this.progressFill = t.querySelector(".ds-statcard__progress-fill"), this.animated = !1, this._observer = null, this.init();
5602
5635
  }
@@ -5656,22 +5689,22 @@ class Yr {
5656
5689
  this._observer && (this._observer.disconnect(), this._observer = null), this.animated = !1, this.valueElement = null, this.progressFill = null, this.element = null;
5657
5690
  }
5658
5691
  }
5659
- function de(i) {
5692
+ function ue(i) {
5660
5693
  if (i.__kupolaInitialized) return;
5661
- const t = new Yr(i);
5694
+ const t = new Xr(i);
5662
5695
  i.__kupolaInstance = t, i.__kupolaInitialized = !0;
5663
5696
  }
5664
- function Xr(i) {
5697
+ function jr(i) {
5665
5698
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
5666
5699
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
5667
5700
  }
5668
- function Oo() {
5701
+ function Fo() {
5669
5702
  document.querySelectorAll(".ds-statcard").forEach((i) => {
5670
- de(i);
5703
+ ue(i);
5671
5704
  });
5672
5705
  }
5673
- E.register("statcard", de, Xr);
5674
- class jr {
5706
+ E.register("statcard", ue, jr);
5707
+ class Jr {
5675
5708
  constructor(t, e = {}) {
5676
5709
  this.element = t, this.data = e.data || [], this.startDate = e.startDate || this.getOneYearAgo(), this.endDate = e.endDate || /* @__PURE__ */ new Date(), this.cellSize = e.cellSize || 14, this.onCellClick = e.onCellClick || null, this.tooltip = null, this.baseColor = e.color || t.getAttribute("data-color") || "#22c55e", this._listeners = [], this.init();
5677
5710
  }
@@ -5826,7 +5859,7 @@ class jr {
5826
5859
  }), this._listeners = null, this.tooltip && this.tooltip.parentNode && this.tooltip.parentNode.removeChild(this.tooltip), this.tooltip = null, this.data = [], this.element = null;
5827
5860
  }
5828
5861
  }
5829
- function ue(i) {
5862
+ function pe(i) {
5830
5863
  if (i.__kupolaInitialized) return;
5831
5864
  const t = i.getAttribute("data-heatmap-data");
5832
5865
  let e = [];
@@ -5834,27 +5867,27 @@ function ue(i) {
5834
5867
  try {
5835
5868
  e = JSON.parse(t);
5836
5869
  } catch {
5837
- e = bt();
5870
+ e = xt();
5838
5871
  }
5839
5872
  else
5840
- e = bt();
5841
- const s = new jr(i, {
5873
+ e = xt();
5874
+ const s = new Jr(i, {
5842
5875
  data: e,
5843
5876
  onCellClick: (n) => {
5844
5877
  }
5845
5878
  });
5846
5879
  i.__kupolaInstance = s, i.__kupolaInitialized = !0;
5847
5880
  }
5848
- function Jr(i) {
5881
+ function Zr(i) {
5849
5882
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
5850
5883
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
5851
5884
  }
5852
- function Fo() {
5885
+ function No() {
5853
5886
  document.querySelectorAll(".ds-heatmap").forEach((i) => {
5854
- ue(i);
5887
+ pe(i);
5855
5888
  });
5856
5889
  }
5857
- function bt() {
5890
+ function xt() {
5858
5891
  const i = [], t = /* @__PURE__ */ new Date(), e = /* @__PURE__ */ new Date();
5859
5892
  e.setFullYear(e.getFullYear() - 1);
5860
5893
  for (let s = new Date(e); s <= t; s.setDate(s.getDate() + 1)) {
@@ -5866,11 +5899,11 @@ function bt() {
5866
5899
  }
5867
5900
  return i;
5868
5901
  }
5869
- E.register("heatmap", ue, Jr);
5902
+ E.register("heatmap", pe, Zr);
5870
5903
  class Gr {
5871
5904
  constructor(t, e = {}) {
5872
5905
  this.element = t, this.tooltipEl = null, this.options = e;
5873
- const s = X(), n = s.tooltip?.delay !== void 0 ? s.tooltip.delay : 300;
5906
+ const s = j(), n = s.tooltip?.delay !== void 0 ? s.tooltip.delay : 300;
5874
5907
  this.delay = e.delay !== void 0 ? e.delay : parseInt(t.getAttribute("data-tooltip-delay")) || n, this.hideDelay = e.hideDelay || parseInt(t.getAttribute("data-tooltip-hide-delay")) || 0, this.trigger = e.trigger || t.getAttribute("data-tooltip-trigger") || "hover", this.html = e.html || t.hasAttribute("data-tooltip-html"), this.theme = e.theme || t.getAttribute("data-tooltip-theme") || "default", this.position = e.position || t.getAttribute("data-tooltip-position") || "top", this.animation = e.animation !== !1, this.mouseFollow = e.mouseFollow || t.hasAttribute("data-tooltip-mouse-follow"), this._showTooltip = null, this._hideTooltip = null, this._showTimer = null, this._hideTimer = null, this._clickHandler = null, this._focusHandler = null, this._blurHandler = null, this._mouseMoveHandler = null, this.isVisible = !1;
5875
5908
  }
5876
5909
  init() {
@@ -5895,12 +5928,16 @@ class Gr {
5895
5928
  if (this.isVisible)
5896
5929
  return;
5897
5930
  const t = this.element.getAttribute("data-tooltip");
5898
- t && (this.tooltipEl = document.createElement("div"), this.tooltipEl.className = `ds-tooltip ds-tooltip--${this.position} ds-tooltip--${this.theme}`, this.html ? this.tooltipEl.innerHTML = t : this.tooltipEl.textContent = t, document.body.appendChild(this.tooltipEl), requestAnimationFrame(() => {
5931
+ if (!t)
5932
+ return;
5933
+ this.tooltipEl = document.createElement("div"), this.tooltipEl.className = `ds-tooltip ds-tooltip--${this.position} ds-tooltip--${this.theme}`;
5934
+ const e = W().tooltip;
5935
+ this.tooltipEl.style.zIndex = e, this.tooltipEl.style.transform = "translateZ(0)", this.html ? this.tooltipEl.innerHTML = t : this.tooltipEl.textContent = t, document.body.appendChild(this.tooltipEl), requestAnimationFrame(() => {
5899
5936
  this.tooltipEl.classList.add("is-visible"), this.mouseFollow || this._positionTooltip(), this.isVisible = !0, this.element.dispatchEvent(new CustomEvent("kupola:tooltip-show", {
5900
5937
  detail: { tooltip: this.tooltipEl },
5901
5938
  bubbles: !0
5902
5939
  }));
5903
- }));
5940
+ });
5904
5941
  }
5905
5942
  hide() {
5906
5943
  if (!this.isVisible || !this.tooltipEl)
@@ -5964,20 +6001,20 @@ class Gr {
5964
6001
  this.element.__kupolaInitialized && (this._showTimer && (clearTimeout(this._showTimer), this._showTimer = null), this._hideTimer && (clearTimeout(this._hideTimer), this._hideTimer = null), (this.trigger === "hover" || this.trigger === "focus") && (this.element.removeEventListener("mouseenter", this._showTooltip), this.element.removeEventListener("mouseleave", this._hideTooltip)), this.trigger === "click" && this.element.removeEventListener("click", this._clickHandler), (this.trigger === "focus" || this.trigger === "hover") && (this.element.removeEventListener("focus", this._showTooltip), this.element.removeEventListener("blur", this._hideTooltip)), this.mouseFollow && this.element.removeEventListener("mousemove", this._mouseMoveHandler), this.tooltipEl && (this.tooltipEl.remove(), this.tooltipEl = null), this.isVisible = !1, this._showTooltip = null, this._hideTooltip = null, this._clickHandler = null, this._mouseMoveHandler = null, this.element.__kupolaInitialized = !1);
5965
6002
  }
5966
6003
  }
5967
- function pe(i, t) {
6004
+ function fe(i, t) {
5968
6005
  const e = new Gr(i, t);
5969
6006
  e.init(), i._kupolaTooltip = e;
5970
6007
  }
5971
- function No(i = document) {
6008
+ function Ro(i = document) {
5972
6009
  i.querySelectorAll("[data-tooltip]").forEach((t) => {
5973
- pe(t);
6010
+ fe(t);
5974
6011
  });
5975
6012
  }
5976
- function Zr(i) {
6013
+ function Qr(i) {
5977
6014
  i._kupolaTooltip && (i._kupolaTooltip.destroy(), i._kupolaTooltip = null);
5978
6015
  }
5979
- E.register("tooltip", pe, Zr);
5980
- class Qr {
6016
+ E.register("tooltip", fe, Qr);
6017
+ class ta {
5981
6018
  constructor() {
5982
6019
  this.validators = {
5983
6020
  required: this.validateRequired,
@@ -6203,7 +6240,7 @@ class Qr {
6203
6240
  }[t] || "Invalid input";
6204
6241
  }
6205
6242
  }
6206
- const P = new Qr();
6243
+ const P = new ta();
6207
6244
  window.__kupolaValidationInitialized || (window.__kupolaValidationInitialized = !0, document.addEventListener("DOMContentLoaded", () => {
6208
6245
  document.querySelectorAll("form[data-validation]").forEach((i) => {
6209
6246
  i.addEventListener("submit", async (t) => {
@@ -6233,7 +6270,7 @@ window.__kupolaValidationInitialized || (window.__kupolaValidationInitialized =
6233
6270
  r && r.focus();
6234
6271
  }
6235
6272
  }), i.querySelectorAll("[data-validate]").forEach((t) => {
6236
- const e = pr(), s = e.trigger || "blur", n = () => {
6273
+ const e = fr(), s = e.trigger || "blur", n = () => {
6237
6274
  e.showErrors && setTimeout(() => {
6238
6275
  const l = document.activeElement;
6239
6276
  if (l && l.closest(".ds-select"))
@@ -6247,7 +6284,7 @@ window.__kupolaValidationInitialized || (window.__kupolaValidationInitialized =
6247
6284
  return (...d) => {
6248
6285
  clearTimeout(h), h = setTimeout(() => l(...d), c);
6249
6286
  };
6250
- }, a = hr(), o = r(() => {
6287
+ }, a = dr(), o = r(() => {
6251
6288
  if (!e.showErrors)
6252
6289
  return;
6253
6290
  const l = P.getValue(t);
@@ -6259,7 +6296,7 @@ window.__kupolaValidationInitialized || (window.__kupolaValidationInitialized =
6259
6296
  });
6260
6297
  });
6261
6298
  }));
6262
- class ta {
6299
+ class ea {
6263
6300
  constructor(t, e = {}) {
6264
6301
  this.element = t, this.data = e.data || [], this.itemHeight = e.itemHeight || 48, this.itemWidth = e.itemWidth || 200, this.bufferSize = e.bufferSize || 5, this.renderItem = e.renderItem || this.defaultRenderItem, this.onItemClick = e.onItemClick || null, this.onItemSelect = e.onItemSelect || null, this.onScroll = e.onScroll || null, this.onScrollEnd = e.onScrollEnd || null, this.selectedKey = e.selectedKey || null, this.keyField = e.keyField || "id", this.useDynamicHeight = e.useDynamicHeight || !1, this.dynamicHeightCache = /* @__PURE__ */ new Map(), this.estimatedHeight = e.estimatedHeight || 48, this.container = null, this.scrollbarTrack = null, this.scrollbarThumb = null, this.totalHeight = 0, this.startIndex = 0, this.endIndex = 0, this.isScrolling = !1, this.scrollTimeout = null, this.lastScrollTop = 0, this.lastScrollLeft = 0, this.init();
6265
6302
  }
@@ -6498,7 +6535,7 @@ class ta {
6498
6535
  }), this.data = [], this.dynamicHeightCache.clear(), this.container.innerHTML = "", this._listeners = null, this._scrollHandler = null, this._thumbDragStartHandler = null, this._thumbDragMoveHandler = null, this._thumbDragEndHandler = null, this._wheelHandler = null, this.container = null, this.scrollbarThumb = null, this.element = null;
6499
6536
  }
6500
6537
  }
6501
- function xt(i = 1e3) {
6538
+ function Et(i = 1e3) {
6502
6539
  const t = [], e = ["Document", "Image", "Video", "Folder", "Archive", "Spreadsheet", "Presentation", "Code"];
6503
6540
  for (let s = 1; s <= i; s++) {
6504
6541
  const n = Math.floor(Math.random() * e.length), r = Math.floor(Math.random() * 1e4);
@@ -6511,7 +6548,7 @@ function xt(i = 1e3) {
6511
6548
  }
6512
6549
  return t;
6513
6550
  }
6514
- function ea(i) {
6551
+ function sa(i) {
6515
6552
  if (i.__kupolaInitialized) return;
6516
6553
  const t = i.getAttribute("data-virtual-list");
6517
6554
  let e = [];
@@ -6519,11 +6556,11 @@ function ea(i) {
6519
6556
  try {
6520
6557
  e = JSON.parse(t);
6521
6558
  } catch {
6522
- e = xt(1e3);
6559
+ e = Et(1e3);
6523
6560
  }
6524
6561
  else
6525
- e = xt(1e3);
6526
- const s = new ta(i, {
6562
+ e = Et(1e3);
6563
+ const s = new ea(i, {
6527
6564
  data: e,
6528
6565
  onItemClick: (n) => {
6529
6566
  },
@@ -6532,12 +6569,12 @@ function ea(i) {
6532
6569
  });
6533
6570
  i.__kupolaInstance = s, i.__kupolaInitialized = !0;
6534
6571
  }
6535
- function sa(i) {
6572
+ function ia(i) {
6536
6573
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
6537
6574
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
6538
6575
  }
6539
- E.register("virtual-list", ea, sa);
6540
- const ia = 'xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="butt" stroke-linejoin="miter"', fe = {
6576
+ E.register("virtual-list", sa, ia);
6577
+ const na = 'xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="butt" stroke-linejoin="miter"', me = {
6541
6578
  globe: '<circle cx="12" cy="12" r="10"/><path d="M2 12h20"/><path d="M12 2a15.3 15.3 0 0 1 0 20"/><path d="M12 2a15.3 15.3 0 0 0 0 20"/>',
6542
6579
  dashboard: '<rect x="3" y="3" width="7" height="9"/><rect x="14" y="3" width="7" height="5"/><rect x="14" y="12" width="7" height="9"/><rect x="3" y="16" width="7" height="5"/>',
6543
6580
  mouse: '<rect x="6" y="2" width="12" height="20" rx="6"/><line x1="12" y1="6" x2="12" y2="11"/>',
@@ -6647,19 +6684,19 @@ const ia = 'xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0
6647
6684
  code: '<polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/>',
6648
6685
  apple: '<path fill="currentColor" stroke="none" d="M17.05 12.04c-.03-3.04 2.49-4.5 2.6-4.57-1.42-2.07-3.62-2.36-4.4-2.39-1.87-.19-3.65 1.1-4.6 1.1-.96 0-2.42-1.08-3.98-1.05-2.05.03-3.94 1.19-4.99 3.02-2.13 3.69-.54 9.13 1.53 12.12 1.01 1.46 2.21 3.1 3.78 3.04 1.52-.06 2.09-.98 3.93-.98 1.83 0 2.36.98 3.97.95 1.64-.03 2.68-1.49 3.68-2.96 1.16-1.7 1.64-3.35 1.66-3.43-.04-.02-3.18-1.22-3.21-4.85zM14.06 4.34c.83-1.01 1.39-2.41 1.24-3.81-1.2.05-2.65.8-3.51 1.8-.77.89-1.45 2.31-1.27 3.68 1.34.1 2.71-.68 3.54-1.67z"/>'
6649
6686
  };
6650
- function me(i, t = 16, e = "0 0 24 24") {
6651
- const s = fe[i];
6652
- return s ? `<svg ${ia.replace('width="16"', `width="${t}"`).replace('height="16"', `height="${t}"`).replace('viewBox="0 0 24 24"', `viewBox="${e}"`)}>${s}</svg>` : "";
6687
+ function ge(i, t = 16, e = "0 0 24 24") {
6688
+ const s = me[i];
6689
+ return s ? `<svg ${na.replace('width="16"', `width="${t}"`).replace('height="16"', `height="${t}"`).replace('viewBox="0 0 24 24"', `viewBox="${e}"`)}>${s}</svg>` : "";
6653
6690
  }
6654
- function lt(i = document) {
6691
+ function ct(i = document) {
6655
6692
  i.querySelectorAll("[data-icon]").forEach((t) => {
6656
6693
  const e = t.getAttribute("data-icon"), s = +t.getAttribute("data-size") || 16, n = t.getAttribute("data-viewbox") || "0 0 24 24";
6657
- t.innerHTML = me(e, s, n), t.classList.add("icon");
6694
+ t.innerHTML = ge(e, s, n), t.classList.add("icon");
6658
6695
  });
6659
6696
  }
6660
- const Ro = { svg: me, render: lt, PATHS: fe };
6661
- typeof document < "u" && (document.readyState !== "loading" ? lt() : document.addEventListener("DOMContentLoaded", () => lt()));
6662
- class na {
6697
+ const Vo = { svg: ge, render: ct, PATHS: me };
6698
+ typeof document < "u" && (document.readyState !== "loading" ? ct() : document.addEventListener("DOMContentLoaded", () => ct()));
6699
+ class ra {
6663
6700
  constructor(t) {
6664
6701
  this.element = t, this.hoursEl = t.querySelector(".ds-countdown__item--hours .ds-countdown__value"), this.minutesEl = t.querySelector(".ds-countdown__item--minutes .ds-countdown__value"), this.secondsEl = t.querySelector(".ds-countdown__item--seconds .ds-countdown__value"), this.endTime = this.parseEndTime(), this.interval = null, this.init();
6665
6702
  }
@@ -6711,22 +6748,22 @@ class na {
6711
6748
  this.stop(), this.hoursEl = null, this.minutesEl = null, this.secondsEl = null, this.element = null;
6712
6749
  }
6713
6750
  }
6714
- function ge(i) {
6751
+ function _e(i) {
6715
6752
  if (i.__kupolaInitialized) return;
6716
- const t = new na(i);
6753
+ const t = new ra(i);
6717
6754
  i.__kupolaInstance = t, i.__kupolaInitialized = !0;
6718
6755
  }
6719
- function ra(i) {
6756
+ function aa(i) {
6720
6757
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
6721
6758
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
6722
6759
  }
6723
- function Vo() {
6760
+ function Ko() {
6724
6761
  document.querySelectorAll(".ds-countdown").forEach((t) => {
6725
- ge(t);
6762
+ _e(t);
6726
6763
  });
6727
6764
  }
6728
- E.register("countdown", ge, ra);
6729
- class aa {
6765
+ E.register("countdown", _e, aa);
6766
+ class oa {
6730
6767
  constructor(t) {
6731
6768
  if (this.element = t, this.minusBtn = t.querySelector(".ds-number-input__btn--decrease"), this.plusBtn = t.querySelector(".ds-number-input__btn--increase"), this.inputEl = t.querySelector(".ds-number-input__input"), this._listeners = [], !this.minusBtn || !this.plusBtn || !this.inputEl)
6732
6769
  throw new Error("NumberInput: Missing required elements");
@@ -6777,26 +6814,26 @@ class aa {
6777
6814
  }), this._listeners = null, this.minusBtn = null, this.plusBtn = null, this.inputEl = null, this.element = null;
6778
6815
  }
6779
6816
  }
6780
- function _e(i) {
6817
+ function ye(i) {
6781
6818
  if (!i.__kupolaInitialized)
6782
6819
  try {
6783
- const t = new aa(i);
6820
+ const t = new oa(i);
6784
6821
  i.__kupolaInstance = t, i.__kupolaInitialized = !0;
6785
6822
  } catch (t) {
6786
6823
  console.error("[NumberInput] Error initializing:", t);
6787
6824
  }
6788
6825
  }
6789
- function oa(i) {
6826
+ function la(i) {
6790
6827
  if (!i.__kupolaInitialized || !i.__kupolaInstance) return;
6791
6828
  i.__kupolaInstance.destroy(), i.__kupolaInstance = null, i.__kupolaInitialized = !1;
6792
6829
  }
6793
- function Ko() {
6830
+ function Wo() {
6794
6831
  document.querySelectorAll(".ds-number-input").forEach((i) => {
6795
- _e(i);
6832
+ ye(i);
6796
6833
  });
6797
6834
  }
6798
- E.register("number-input", _e, oa);
6799
- class la {
6835
+ E.register("number-input", ye, la);
6836
+ class ca {
6800
6837
  constructor(t) {
6801
6838
  this.container = t, this.track = t.querySelector(".ds-slider-captcha__track"), this.btn = t.querySelector(".ds-slider-captcha__btn"), this.text = t.querySelector(".ds-slider-captcha__text"), this.progress = t.querySelector(".ds-slider-captcha__progress"), this.statusEl = t.querySelector(".ds-slider-captcha__status"), this.refreshBtn = t.querySelector(".ds-slider-captcha__refresh"), this.footerRefreshBtn = t.querySelector(".ds-slider-captcha__footer-refresh"), this.config = {
6802
6839
  tolerance: 6,
@@ -6939,22 +6976,22 @@ class la {
6939
6976
  this.container._initialized && (this.btn && this._mouseDownHandler && this.btn.removeEventListener("mousedown", this._mouseDownHandler), this.btn && this._touchStartHandler && this.btn.removeEventListener("touchstart", this._touchStartHandler), this.refreshBtn && this.refreshBtn.removeEventListener("click", () => this.loadCaptcha()), this.footerRefreshBtn && this.footerRefreshBtn.removeEventListener("click", () => this.loadCaptcha()), this._mouseMoveListener && this._mouseMoveListener.unsubscribe ? this._mouseMoveListener.unsubscribe() : this._mouseMoveHandler && document.removeEventListener("mousemove", this._mouseMoveHandler), this._mouseUpListener && this._mouseUpListener.unsubscribe ? this._mouseUpListener.unsubscribe() : this._mouseUpHandler && document.removeEventListener("mouseup", this._mouseUpHandler), this._touchMoveListener && this._touchMoveListener.unsubscribe ? this._touchMoveListener.unsubscribe() : this._touchMoveHandler && document.removeEventListener("touchmove", this._touchMoveHandler), this._touchEndListener && this._touchEndListener.unsubscribe ? this._touchEndListener.unsubscribe() : this._touchEndHandler && document.removeEventListener("touchend", this._touchEndHandler), this.container._initialized = !1);
6940
6977
  }
6941
6978
  }
6942
- function ca() {
6979
+ function ha() {
6943
6980
  document.querySelectorAll(".ds-slider-captcha").forEach((i) => {
6944
- const t = new la(i);
6981
+ const t = new ca(i);
6945
6982
  t.init(), i._kupolaSlideCaptcha = t;
6946
6983
  });
6947
6984
  }
6948
- function ha(i) {
6985
+ function da(i) {
6949
6986
  i._kupolaSlideCaptcha && (i._kupolaSlideCaptcha.destroy(), i._kupolaSlideCaptcha = null);
6950
6987
  }
6951
- function da() {
6988
+ function ua() {
6952
6989
  document.querySelectorAll(".ds-slider-captcha").forEach((i) => {
6953
- ha(i);
6990
+ da(i);
6954
6991
  });
6955
6992
  }
6956
- E.register("slide-captcha", ca, da);
6957
- class ua {
6993
+ E.register("slide-captcha", ha, ua);
6994
+ class pa {
6958
6995
  constructor(t) {
6959
6996
  this.form = t, this.fields = [], this.validators = {}, this.errorMessages = {}, this._submitHandler = null, this._fieldHandlers = /* @__PURE__ */ new Map(), this._init();
6960
6997
  }
@@ -7094,23 +7131,23 @@ class ua {
7094
7131
  }), this._submitHandler = null, this._fieldHandlers.clear(), this._fieldHandlers = null, this.fields = null, this.validators = null, this.errorMessages = null, this.form = null;
7095
7132
  }
7096
7133
  }
7097
- function pa(i) {
7134
+ function fa(i) {
7098
7135
  const t = document.querySelectorAll(i || ".ds-form");
7099
7136
  return t.forEach((e) => {
7100
7137
  if (e._kupolaForm) return;
7101
- const s = new ua(e);
7138
+ const s = new pa(e);
7102
7139
  e._kupolaForm = s;
7103
7140
  }), t.length;
7104
7141
  }
7105
- function Wo(i) {
7142
+ function Uo(i) {
7106
7143
  return i._kupolaForm;
7107
7144
  }
7108
- function Uo(i) {
7145
+ function Yo(i) {
7109
7146
  const t = i._kupolaForm;
7110
7147
  return t ? t.validate() : !1;
7111
7148
  }
7112
- E.register("form-validation", pa);
7113
- class fa {
7149
+ E.register("form-validation", fa);
7150
+ class ma {
7114
7151
  constructor() {
7115
7152
  this._queue = /* @__PURE__ */ new Set(), this._scheduled = !1, this._flushDepth = 0, this._maxDepth = 10;
7116
7153
  }
@@ -7137,8 +7174,8 @@ class fa {
7137
7174
  this._flushDepth--;
7138
7175
  }
7139
7176
  }
7140
- const ma = new fa();
7141
- class ga {
7177
+ const ga = new ma();
7178
+ class _a {
7142
7179
  constructor(t, e) {
7143
7180
  this.data = t, this.createdAt = Date.now(), this.ttl = e;
7144
7181
  }
@@ -7149,7 +7186,7 @@ class ga {
7149
7186
  return !this.isFresh;
7150
7187
  }
7151
7188
  }
7152
- class ye {
7189
+ class ve {
7153
7190
  constructor() {
7154
7191
  this._store = /* @__PURE__ */ new Map();
7155
7192
  }
@@ -7158,7 +7195,7 @@ class ye {
7158
7195
  return e || null;
7159
7196
  }
7160
7197
  set(t, e, s = 6e4) {
7161
- this._store.set(t, new ga(e, s));
7198
+ this._store.set(t, new _a(e, s));
7162
7199
  }
7163
7200
  has(t) {
7164
7201
  return this._store.has(t);
@@ -7180,19 +7217,19 @@ class F extends Error {
7180
7217
  super(t), this.name = "DependsError", this.code = e, this.cause = s, this.timestamp = Date.now();
7181
7218
  }
7182
7219
  }
7183
- let st = typeof globalThis < "u" && globalThis.fetch ? globalThis.fetch.bind(globalThis) : typeof window < "u" && window.fetch ? window.fetch.bind(window) : null;
7184
- function Yo(i) {
7220
+ let it = typeof globalThis < "u" && globalThis.fetch ? globalThis.fetch.bind(globalThis) : typeof window < "u" && window.fetch ? window.fetch.bind(window) : null;
7221
+ function Xo(i) {
7185
7222
  if (!i || typeof i.fetch != "function")
7186
7223
  throw new TypeError("[Kupola] configureHttpClient: client must provide a fetch function");
7187
- st = i.fetch.bind(i);
7188
- }
7189
- function Xo() {
7190
- return st;
7224
+ it = i.fetch.bind(i);
7191
7225
  }
7192
7226
  function jo() {
7193
- st = typeof globalThis < "u" && globalThis.fetch ? globalThis.fetch.bind(globalThis) : typeof window < "u" && window.fetch ? window.fetch.bind(window) : null;
7227
+ return it;
7228
+ }
7229
+ function Jo() {
7230
+ it = typeof globalThis < "u" && globalThis.fetch ? globalThis.fetch.bind(globalThis) : typeof window < "u" && window.fetch ? window.fetch.bind(window) : null;
7194
7231
  }
7195
- class W {
7232
+ class U {
7196
7233
  constructor(t, e) {
7197
7234
  this.config = t, this.cacheKey = t.cacheKey || String(t.source), this.staleTime = t.staleTime ?? 6e4, this.cache = e, this.subscribers = [], this.pending = null, this.retryCount = t.retry ?? 0, this.retryDelay = t.retryDelay ?? 1e3, this.onError = t.onError || null;
7198
7235
  }
@@ -7203,7 +7240,7 @@ class W {
7203
7240
  };
7204
7241
  }
7205
7242
  notify() {
7206
- ma.schedule(() => {
7243
+ ga.schedule(() => {
7207
7244
  this.subscribers.forEach((t) => {
7208
7245
  try {
7209
7246
  t();
@@ -7251,13 +7288,13 @@ class W {
7251
7288
  this.subscribers = [], this.pending = null;
7252
7289
  }
7253
7290
  }
7254
- class _a extends W {
7291
+ class ya extends U {
7255
7292
  constructor(t, e) {
7256
7293
  super(t, e), this.method = t.method || "GET", this.headers = t.headers || {}, this.queryParams = t.query || {};
7257
7294
  }
7258
7295
  async fetch(t) {
7259
7296
  let e = this.config.source;
7260
- const s = ht("http");
7297
+ const s = dt("http");
7261
7298
  s?.baseURL && !e.startsWith("http://") && !e.startsWith("https://") && (e = s.baseURL + e.replace(/^\//, ""));
7262
7299
  for (const u in t)
7263
7300
  e = e.replace(`:${u}`, encodeURIComponent(t[u]));
@@ -7272,7 +7309,7 @@ class _a extends W {
7272
7309
  headers: { "Content-Type": "application/json", ...r, ...this.headers }
7273
7310
  };
7274
7311
  s?.withCredentials && (a.credentials = "include"), ["POST", "PUT", "PATCH"].includes(a.method) && (a.body = JSON.stringify(t));
7275
- const o = st;
7312
+ const o = it;
7276
7313
  if (!o)
7277
7314
  throw new F("No HTTP client available. Use configureHttpClient() to set one.", "NO_HTTP_CLIENT");
7278
7315
  const l = await o(e, a), c = typeof l.ok == "boolean" ? l.ok : l.status >= 200 && l.status < 300, h = typeof l.status == "number" ? l.status : 0;
@@ -7281,7 +7318,7 @@ class _a extends W {
7281
7318
  return typeof l.json == "function" ? await l.json() : l.data !== void 0 ? l.data : l;
7282
7319
  }
7283
7320
  }
7284
- class ve extends W {
7321
+ class be extends U {
7285
7322
  constructor(t, e) {
7286
7323
  super(t, e), this.storageKey = t.source.replace("localStorage:", ""), this.defaultValue = t.default, this.sync = t.sync !== !1, this.sync && typeof window < "u" && (this._storageHandler = (s) => {
7287
7324
  s.key === this.storageKey && (this.cache.delete(this.cacheKey), this.notify());
@@ -7308,7 +7345,7 @@ class ve extends W {
7308
7345
  super.destroy(), this._storageHandler && window.removeEventListener("storage", this._storageHandler);
7309
7346
  }
7310
7347
  }
7311
- class ya extends W {
7348
+ class va extends U {
7312
7349
  constructor(t, e) {
7313
7350
  super(t, e), this.paramName = t.source.replace("route:", "");
7314
7351
  }
@@ -7318,17 +7355,17 @@ class ya extends W {
7318
7355
  return e ? decodeURIComponent(e[1]) : new URLSearchParams(location.search).get(this.paramName) || "";
7319
7356
  }
7320
7357
  }
7321
- class va extends W {
7358
+ class ba extends U {
7322
7359
  async fetch(t) {
7323
7360
  return await this.config.source(t);
7324
7361
  }
7325
7362
  }
7326
- class ba extends W {
7363
+ class xa extends U {
7327
7364
  async fetch() {
7328
7365
  return this.config.source;
7329
7366
  }
7330
7367
  }
7331
- class be extends W {
7368
+ class xe extends U {
7332
7369
  constructor(t, e) {
7333
7370
  super(t, e), this.ws = null, this.reconnect = t.reconnect !== !1, this.reconnectDelay = t.reconnectDelay || 3e3, this._reconnectAttempt = 0, this._maxReconnectDelay = t.maxReconnectDelay || 3e4, this.messageHandler = null, this._connected = !1, this._destroyed = !1;
7334
7371
  }
@@ -7368,21 +7405,21 @@ class be extends W {
7368
7405
  this._destroyed = !0, super.destroy(), this.ws && (this.ws.onmessage = null, this.ws.onclose = null, this.ws.close(), this.ws = null);
7369
7406
  }
7370
7407
  }
7371
- function xe(i, t) {
7408
+ function Ee(i, t) {
7372
7409
  const e = i.source;
7373
- return typeof e == "function" ? new va(i, t) : typeof e == "string" && (e.startsWith("ws://") || e.startsWith("wss://")) ? new be(i, t) : typeof e == "string" && (e.startsWith("/") || e.startsWith("http")) ? new _a(i, t) : typeof e == "string" && e.startsWith("localStorage:") ? new ve(i, t) : typeof e == "string" && e.startsWith("route:") ? new ya(i, t) : new ba(i, t);
7410
+ return typeof e == "function" ? new ba(i, t) : typeof e == "string" && (e.startsWith("ws://") || e.startsWith("wss://")) ? new xe(i, t) : typeof e == "string" && (e.startsWith("/") || e.startsWith("http")) ? new ya(i, t) : typeof e == "string" && e.startsWith("localStorage:") ? new be(i, t) : typeof e == "string" && e.startsWith("route:") ? new va(i, t) : new xa(i, t);
7374
7411
  }
7375
- function Jo(i, t) {
7376
- const e = {}, s = new ye(), n = [];
7412
+ function Zo(i, t) {
7413
+ const e = {}, s = new ve(), n = [];
7377
7414
  for (const r in t) {
7378
7415
  let p = function() {
7379
- return Et(i);
7416
+ return wt(i);
7380
7417
  }, a = t[r];
7381
7418
  typeof a == "string" && (a = { source: a });
7382
7419
  const o = {
7383
7420
  ...a,
7384
- cacheKey: a.cacheKey || `${r}-${JSON.stringify(Et(i))}`
7385
- }, l = xe(o, s), c = I(null), h = I(!0), d = I(null), u = I(null);
7421
+ cacheKey: a.cacheKey || `${r}-${JSON.stringify(wt(i))}`
7422
+ }, l = Ee(o, s), c = I(null), h = I(!0), d = I(null), u = I(null);
7386
7423
  let f = 0;
7387
7424
  async function m() {
7388
7425
  const b = ++f;
@@ -7423,11 +7460,11 @@ function Jo(i, t) {
7423
7460
  },
7424
7461
  // For StorageSource
7425
7462
  setValue(b) {
7426
- l instanceof ve && (l.setValue(b), c.value = b);
7463
+ l instanceof be && (l.setValue(b), c.value = b);
7427
7464
  },
7428
7465
  // For WebSocketSource
7429
7466
  send(b) {
7430
- l instanceof be && l.send(b);
7467
+ l instanceof xe && l.send(b);
7431
7468
  },
7432
7469
  _source: l
7433
7470
  };
@@ -7440,7 +7477,7 @@ function Jo(i, t) {
7440
7477
  }, window.__kupolaDepInstances || (window.__kupolaDepInstances = []), window.__kupolaDepInstances.push(e), e;
7441
7478
  }
7442
7479
  function Go(i) {
7443
- const t = new ye(), e = xe(i, t), s = I(null), n = I(!0), r = I(null);
7480
+ const t = new ve(), e = Ee(i, t), s = I(null), n = I(!0), r = I(null);
7444
7481
  let a = 0;
7445
7482
  async function o() {
7446
7483
  const l = ++a;
@@ -7468,7 +7505,7 @@ function Go(i) {
7468
7505
  }
7469
7506
  };
7470
7507
  }
7471
- function Et(i) {
7508
+ function wt(i) {
7472
7509
  const t = {};
7473
7510
  for (const e in i) {
7474
7511
  const s = i[e];
@@ -7476,9 +7513,9 @@ function Et(i) {
7476
7513
  }
7477
7514
  return t;
7478
7515
  }
7479
- function Zo() {
7516
+ function Qo() {
7480
7517
  }
7481
- class xa {
7518
+ class Ea {
7482
7519
  constructor(t, e = {}) {
7483
7520
  this.element = typeof t == "string" ? document.querySelector(t) : t, this.options = e, this.columns = (e.columns || []).map((s, n) => ({ ...s, _index: n })), this.rowKey = e.rowKey || "id", this._data = [], this._loading = !1, this.striped = e.striped !== !1, this.bordered = e.bordered || !1, this.hoverable = e.hoverable !== !1, this.compact = e.compact || !1, this.emptyText = e.emptyText || "暂无数据", this.loadingText = e.loadingText || "加载中...", this.multiSort = e.multiSort || !1, this._sorts = [], this._filterText = "", this._showPagination = e.pagination !== !1, this._pageSizes = e.pageSizes || [10, 20, 50, 100], this._pageSize = e.pageSize || 10, this._currentPage = 1, this._total = 0, this.selection = e.selection || null, this._selectedKeys = /* @__PURE__ */ new Set(), this.selectionColumnTitle = e.selectionColumnTitle || "", this.expandable = e.expandable || null, this._expandedKeys = /* @__PURE__ */ new Set(), this.expandColumnTitle = e.expandColumnTitle || "", this.editable = e.editable || !1, this._editingCell = null, this._editBuffer = {}, this.resizable = e.resizable || !1, this.draggable = e.draggable || !1, this._dragState = null, this.tree = e.tree || null, this._treeExpandedKeys = /* @__PURE__ */ new Set(), e.tree?.defaultExpandAll && (this._treeExpandAll = !0), this.virtualScroll = e.virtualScroll || null, this._scrollContainer = null, this._scrollHandler = null, this._resizeCleanups = [], this._filterDebounceTimer = null, this._reactiveCleanups = [], this.mergeCells = e.mergeCells || null, this.onSort = e.onSort || null, this.onPageChange = e.onPageChange || null, this.onRowClick = e.onRowClick || null, this.onFilter = e.onFilter || null, this.onSelect = e.onSelect || null, this.onExpand = e.onExpand || null, this.onEditSave = e.onEditSave || null, this.onEditCancel = e.onEditCancel || null, this.onRowDragEnd = e.onRowDragEnd || null, this.onColumnResize = e.onColumnResize || null, this.sortKey = I(null), this.sortOrder = I(null), this.currentPage = I(1), this.filterText = I(""), this.selectedKeys = I([]), this._init();
7484
7521
  }
@@ -8018,10 +8055,10 @@ class xa {
8018
8055
  this._filterDebounceTimer && (clearTimeout(this._filterDebounceTimer), this._filterDebounceTimer = null), this._resizeCleanups.forEach((t) => t()), this._resizeCleanups = [], this._reactiveCleanups.forEach((t) => t.unsubscribe()), this._reactiveCleanups = [], this.element.innerHTML = "", this.element.classList.remove("kupola-table-wrapper", "kupola-table-virtual-wrapper"), this._data = [], this._virtualData = null, this._dragState = null, this._editingCell = null, this._editBuffer = {};
8019
8056
  }
8020
8057
  }
8021
- function Ee(i, t) {
8022
- return new xa(i, t);
8058
+ function we(i, t) {
8059
+ return new Ea(i, t);
8023
8060
  }
8024
- function Qo() {
8061
+ function tl() {
8025
8062
  document.querySelectorAll("[data-kupola-table]").forEach((i) => {
8026
8063
  const t = i.getAttribute("data-kupola-table");
8027
8064
  let e = {};
@@ -8030,11 +8067,11 @@ function Qo() {
8030
8067
  e = JSON.parse(t);
8031
8068
  } catch {
8032
8069
  }
8033
- Ee(i, e);
8070
+ we(i, e);
8034
8071
  });
8035
8072
  }
8036
- E.register("table", Ee);
8037
- class Ea {
8073
+ E.register("table", we);
8074
+ class wa {
8038
8075
  constructor(t, e = {}) {
8039
8076
  this.element = typeof t == "string" ? document.querySelector(t) : t, this.options = e, this._current = e.current || 1, this._total = e.total || 0, this._pageSize = e.pageSize || 10, this._maxPages = e.maxPages || 7, this._showTotal = e.showTotal !== !1, this._showSizeChanger = e.showSizeChanger || !1, this._pageSizes = e.pageSizes || [10, 20, 50, 100], this._simple = e.simple || !1, this.current = I(this._current), this.total = I(this._total), this.onChange = e.onChange || null, this.onPageSizeChange = e.onPageSizeChange || null, this._init();
8040
8077
  }
@@ -8134,9 +8171,9 @@ class Ea {
8134
8171
  this.element.innerHTML = "", this.element.classList.remove("kupola-pagination");
8135
8172
  }
8136
8173
  }
8137
- let wt = !1;
8138
- function wa() {
8139
- if (wt || typeof document > "u") return;
8174
+ let kt = !1;
8175
+ function ka() {
8176
+ if (kt || typeof document > "u") return;
8140
8177
  const i = document.createElement("style");
8141
8178
  i.textContent = `
8142
8179
  .kupola-pagination { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
@@ -8152,13 +8189,13 @@ function wa() {
8152
8189
  .kupola-pagination-jumper { font-size: 14px; color: #666; }
8153
8190
  .kupola-pagination-jumper input { width: 50px; height: 28px; margin: 0 4px; padding: 0 8px; border: 1px solid #d9d9d9; border-radius: 4px; text-align: center; font-size: 13px; }
8154
8191
  .kupola-pagination-jumper input:focus { outline: none; border-color: #1890ff; }
8155
- `, document.head.appendChild(i), wt = !0;
8192
+ `, document.head.appendChild(i), kt = !0;
8156
8193
  }
8157
- function tl(i, t) {
8158
- return wa(), new Ea(i, t);
8194
+ function el(i, t) {
8195
+ return ka(), new wa(i, t);
8159
8196
  }
8160
- let kt = !1;
8161
- class ka extends HTMLElement {
8197
+ let Ct = !1;
8198
+ class Ca extends HTMLElement {
8162
8199
  static get observedAttributes() {
8163
8200
  return ["open"];
8164
8201
  }
@@ -8180,7 +8217,7 @@ class ka extends HTMLElement {
8180
8217
  }
8181
8218
  }
8182
8219
  }
8183
- class Ca extends HTMLElement {
8220
+ class Sa extends HTMLElement {
8184
8221
  static get observedAttributes() {
8185
8222
  return ["title", "position"];
8186
8223
  }
@@ -8195,7 +8232,7 @@ class Ca extends HTMLElement {
8195
8232
  }
8196
8233
  }
8197
8234
  }
8198
- class Sa extends HTMLElement {
8235
+ class La extends HTMLElement {
8199
8236
  connectedCallback() {
8200
8237
  this._render();
8201
8238
  }
@@ -8213,13 +8250,13 @@ class Sa extends HTMLElement {
8213
8250
  }), this.innerHTML = "", this.appendChild(t);
8214
8251
  }
8215
8252
  }
8216
- class La extends HTMLElement {
8253
+ class Da extends HTMLElement {
8217
8254
  static get observedAttributes() {
8218
8255
  return ["title"];
8219
8256
  }
8220
8257
  // Content is read by parent <k-collapse> during its connectedCallback
8221
8258
  }
8222
- class Da extends HTMLElement {
8259
+ class Ha extends HTMLElement {
8223
8260
  static get observedAttributes() {
8224
8261
  return ["position", "open"];
8225
8262
  }
@@ -8237,7 +8274,7 @@ class Da extends HTMLElement {
8237
8274
  }
8238
8275
  }
8239
8276
  }
8240
- class Ha extends HTMLElement {
8277
+ class Ma extends HTMLElement {
8241
8278
  static get observedAttributes() {
8242
8279
  return ["title", "open"];
8243
8280
  }
@@ -8280,232 +8317,232 @@ class Ha extends HTMLElement {
8280
8317
  this.removeAttribute("open");
8281
8318
  }
8282
8319
  }
8283
- function el() {
8284
- if (kt || typeof customElements > "u") return;
8285
- kt = !0;
8320
+ function sl() {
8321
+ if (Ct || typeof customElements > "u") return;
8322
+ Ct = !0;
8286
8323
  const i = [
8287
- ["k-dropdown", ka],
8288
- ["k-tooltip", Ca],
8289
- ["k-collapse", Sa],
8290
- ["k-collapse-item", La],
8291
- ["k-drawer", Da],
8292
- ["k-modal", Ha]
8324
+ ["k-dropdown", Ca],
8325
+ ["k-tooltip", Sa],
8326
+ ["k-collapse", La],
8327
+ ["k-collapse-item", Da],
8328
+ ["k-drawer", Ha],
8329
+ ["k-modal", Ma]
8293
8330
  ];
8294
8331
  for (const [t, e] of i)
8295
8332
  customElements.get(t) || customElements.define(t, e);
8296
8333
  }
8297
8334
  export {
8298
- Y as BRAND_OPTIONS,
8299
- ga as CacheEntry,
8300
- ye as CacheManager,
8301
- Nr as Calendar,
8302
- Mr as Carousel,
8303
- Br as Collapse,
8304
- Or as ColorPicker,
8305
- gr as ComponentInitializerRegistry,
8306
- na as Countdown,
8307
- kr as Datepicker,
8335
+ X as BRAND_OPTIONS,
8336
+ _a as CacheEntry,
8337
+ ve as CacheManager,
8338
+ Rr as Calendar,
8339
+ Tr as Carousel,
8340
+ qr as Collapse,
8341
+ Fr as ColorPicker,
8342
+ _r as ComponentInitializerRegistry,
8343
+ ra as Countdown,
8344
+ Cr as Datepicker,
8308
8345
  F as DependsError,
8309
- W as DependsSource,
8310
- So as Dialog,
8311
- Ir as Drawer,
8312
- xr as Dropdown,
8313
- Vr as DynamicTags,
8314
- _a as FetchedSource,
8315
- Pr as FileUpload,
8316
- va as FunctionSource,
8317
- br as GlobalEvents,
8318
- jr as Heatmap,
8319
- Ro as Icons,
8320
- ce as ImagePreview,
8346
+ U as DependsSource,
8347
+ Lo as Dialog,
8348
+ Ar as Drawer,
8349
+ Er as Dropdown,
8350
+ Kr as DynamicTags,
8351
+ ya as FetchedSource,
8352
+ $r as FileUpload,
8353
+ ba as FunctionSource,
8354
+ xr as GlobalEvents,
8355
+ Jr as Heatmap,
8356
+ Vo as Icons,
8357
+ he as ImagePreview,
8321
8358
  G as KupolaComponent,
8322
- yr as KupolaComponentRegistry,
8323
- rr as KupolaDataBind,
8324
- or as KupolaEventBus,
8325
- ua as KupolaForm,
8326
- Xt as KupolaI18n,
8327
- ct as KupolaLifecycle,
8328
- Ea as KupolaPagination,
8329
- mt as KupolaStore,
8330
- ar as KupolaStoreManager,
8331
- xa as KupolaTable,
8332
- Ia as KupolaUtils,
8333
- Qr as KupolaValidator,
8334
- Ho as Message,
8359
+ vr as KupolaComponentRegistry,
8360
+ ar as KupolaDataBind,
8361
+ lr as KupolaEventBus,
8362
+ pa as KupolaForm,
8363
+ jt as KupolaI18n,
8364
+ ht as KupolaLifecycle,
8365
+ wa as KupolaPagination,
8366
+ gt as KupolaStore,
8367
+ or as KupolaStoreManager,
8368
+ Ea as KupolaTable,
8369
+ Aa as KupolaUtils,
8370
+ ta as KupolaValidator,
8371
+ Mo as Message,
8335
8372
  $ as Modal,
8336
- Lo as Notification,
8337
- aa as NumberInput,
8338
- fe as PATHS,
8339
- ya as RouteSource,
8340
- fa as Scheduler,
8341
- Er as Select,
8342
- la as SlideCaptcha,
8343
- Dr as Slider,
8344
- Yr as StatCard,
8345
- ba as StaticSource,
8346
- ve as StorageSource,
8347
- Wr as Tag,
8348
- Sr as Timepicker,
8373
+ Do as Notification,
8374
+ oa as NumberInput,
8375
+ me as PATHS,
8376
+ va as RouteSource,
8377
+ ma as Scheduler,
8378
+ wr as Select,
8379
+ ca as SlideCaptcha,
8380
+ Hr as Slider,
8381
+ Xr as StatCard,
8382
+ xa as StaticSource,
8383
+ be as StorageSource,
8384
+ Ur as Tag,
8385
+ Lr as Timepicker,
8349
8386
  Gr as Tooltip,
8350
- ta as VirtualList,
8351
- be as WebSocketSource,
8352
- ko as alertModal,
8353
- _t as applyMixin,
8354
- Os as arrayUtils,
8355
- Xa as bootstrapComponents,
8356
- go as cleanupAllDropdowns,
8357
- da as cleanupAllSlideCaptchas,
8358
- Rr as cleanupCalendar,
8359
- Tr as cleanupCarousel,
8360
- qr as cleanupCollapse,
8361
- Fr as cleanupColorPicker,
8362
- ra as cleanupCountdown,
8363
- Cr as cleanupDatepicker,
8364
- Ar as cleanupDrawer,
8365
- Jt as cleanupDropdown,
8366
- Kr as cleanupDynamicTags,
8367
- $r as cleanupFileUpload,
8368
- Jr as cleanupHeatmap,
8369
- zr as cleanupModal,
8370
- oa as cleanupNumberInput,
8371
- wr as cleanupSelect,
8372
- ha as cleanupSlideCaptcha,
8373
- Hr as cleanupSlider,
8374
- Xr as cleanupStatCard,
8375
- Ur as cleanupTag,
8376
- Lr as cleanupTimepicker,
8377
- Zr as cleanupTooltip,
8378
- sa as cleanupVirtualList,
8379
- Zo as clearCache,
8380
- Yo as configureHttpClient,
8381
- wo as confirmModal,
8382
- Fa as createBrandPicker,
8383
- Za as createI18n,
8384
- Ta as createLifecycle,
8385
- se as createModal,
8386
- xe as createSource,
8387
- za as createStore,
8388
- Oa as createThemeToggle,
8389
- Jn as cryptoUtils,
8390
- cn as dateUtils,
8391
- hn as debounce,
8387
+ ea as VirtualList,
8388
+ xe as WebSocketSource,
8389
+ Co as alertModal,
8390
+ yt as applyMixin,
8391
+ Fs as arrayUtils,
8392
+ ja as bootstrapComponents,
8393
+ _o as cleanupAllDropdowns,
8394
+ ua as cleanupAllSlideCaptchas,
8395
+ Vr as cleanupCalendar,
8396
+ Ir as cleanupCarousel,
8397
+ Or as cleanupCollapse,
8398
+ Nr as cleanupColorPicker,
8399
+ aa as cleanupCountdown,
8400
+ Sr as cleanupDatepicker,
8401
+ zr as cleanupDrawer,
8402
+ Zt as cleanupDropdown,
8403
+ Wr as cleanupDynamicTags,
8404
+ Br as cleanupFileUpload,
8405
+ Zr as cleanupHeatmap,
8406
+ Pr as cleanupModal,
8407
+ la as cleanupNumberInput,
8408
+ kr as cleanupSelect,
8409
+ da as cleanupSlideCaptcha,
8410
+ Mr as cleanupSlider,
8411
+ jr as cleanupStatCard,
8412
+ Yr as cleanupTag,
8413
+ Dr as cleanupTimepicker,
8414
+ Qr as cleanupTooltip,
8415
+ ia as cleanupVirtualList,
8416
+ Qo as clearCache,
8417
+ Xo as configureHttpClient,
8418
+ ko as confirmModal,
8419
+ Na as createBrandPicker,
8420
+ Qa as createI18n,
8421
+ Ia as createLifecycle,
8422
+ ie as createModal,
8423
+ Ee as createSource,
8424
+ Pa as createStore,
8425
+ Fa as createThemeToggle,
8426
+ Zn as cryptoUtils,
8427
+ hn as dateUtils,
8428
+ dn as debounce,
8392
8429
  Ga as defineComponent,
8393
- ja as defineMixin,
8394
- co as emit,
8395
- ho as emitGlobal,
8396
- Ra as escapeHtml,
8397
- ro as formatCurrency,
8398
- io as formatDate,
8399
- no as formatNumber,
8400
- Wa as generateSecureId,
8401
- Ba as getBasePath,
8402
- j as getBrand,
8403
- ht as getConfig,
8404
- cr as getDefaultBrand,
8405
- lr as getDefaultTheme,
8406
- Wo as getFormInstance,
8407
- Xo as getHttpClient,
8408
- qa as getHttpConfig,
8409
- Kt as getIconsPath,
8410
- fo as getListenerCount,
8411
- so as getLocale,
8412
- dr as getMessageConfig,
8413
- ur as getNotificationConfig,
8414
- hr as getPerformanceConfig,
8415
- et as getSecurityConfig,
8416
- Pa as getStore,
8430
+ Ja as defineMixin,
8431
+ ho as emit,
8432
+ uo as emitGlobal,
8433
+ Va as escapeHtml,
8434
+ ao as formatCurrency,
8435
+ no as formatDate,
8436
+ ro as formatNumber,
8437
+ Ua as generateSecureId,
8438
+ qa as getBasePath,
8439
+ J as getBrand,
8440
+ dt as getConfig,
8441
+ hr as getDefaultBrand,
8442
+ cr as getDefaultTheme,
8443
+ Uo as getFormInstance,
8444
+ jo as getHttpClient,
8445
+ Oa as getHttpConfig,
8446
+ Wt as getIconsPath,
8447
+ mo as getListenerCount,
8448
+ io as getLocale,
8449
+ ur as getMessageConfig,
8450
+ pr as getNotificationConfig,
8451
+ dr as getPerformanceConfig,
8452
+ st as getSecurityConfig,
8453
+ $a as getStore,
8417
8454
  R as getTheme,
8418
- X as getUiConfig,
8419
- pr as getValidationConfig,
8455
+ j as getUiConfig,
8456
+ fr as getValidationConfig,
8420
8457
  H as globalEvents,
8421
- Qo as initAllTables,
8422
- oe as initCalendar,
8423
- zo as initCalendars,
8424
- ee as initCarousel,
8425
- xo as initCarousels,
8426
- re as initCollapse,
8427
- Io as initCollapses,
8428
- ae as initColorPicker,
8429
- Ao as initColorPickers,
8430
- ge as initCountdown,
8431
- Vo as initCountdowns,
8432
- Zt as initDatepicker,
8433
- yo as initDatepickers,
8434
- ot as initDrawer,
8435
- Eo as initDrawers,
8436
- jt as initDropdown,
8437
- mo as initDropdowns,
8438
- le as initDynamicTags,
8439
- Po as initDynamicTagsAll,
8440
- ne as initFileUpload,
8441
- To as initFileUploads,
8442
- pa as initFormValidation,
8443
- ue as initHeatmap,
8444
- Fo as initHeatmaps,
8445
- $o as initImagePreview,
8446
- Mo as initMessages,
8447
- ie as initModal,
8448
- Co as initModals,
8449
- Do as initNotifications,
8450
- _e as initNumberInput,
8451
- Ko as initNumberInputs,
8452
- tl as initPagination,
8458
+ tl as initAllTables,
8459
+ le as initCalendar,
8460
+ Po as initCalendars,
8461
+ se as initCarousel,
8462
+ Eo as initCarousels,
8463
+ ae as initCollapse,
8464
+ Ao as initCollapses,
8465
+ oe as initColorPicker,
8466
+ zo as initColorPickers,
8467
+ _e as initCountdown,
8468
+ Ko as initCountdowns,
8469
+ Qt as initDatepicker,
8470
+ vo as initDatepickers,
8471
+ lt as initDrawer,
8472
+ wo as initDrawers,
8473
+ Jt as initDropdown,
8474
+ go as initDropdowns,
8475
+ ce as initDynamicTags,
8476
+ $o as initDynamicTagsAll,
8477
+ re as initFileUpload,
8478
+ Io as initFileUploads,
8479
+ fa as initFormValidation,
8480
+ pe as initHeatmap,
8481
+ No as initHeatmaps,
8482
+ Bo as initImagePreview,
8483
+ To as initMessages,
8484
+ ne as initModal,
8485
+ So as initModals,
8486
+ Ho as initNotifications,
8487
+ ye as initNumberInput,
8488
+ Wo as initNumberInputs,
8489
+ el as initPagination,
8453
8490
  Gt as initSelect,
8454
- _o as initSelects,
8455
- ca as initSlideCaptchas,
8456
- te as initSlider,
8457
- bo as initSliders,
8458
- de as initStatCard,
8459
- Oo as initStatCards,
8460
- Ee as initTable,
8461
- he as initTag,
8462
- qo as initTags,
8463
- mr as initTheme,
8464
- Qt as initTimepicker,
8465
- vo as initTimepickers,
8466
- pe as initTooltip,
8467
- No as initTooltips,
8468
- ea as initVirtualList,
8469
- yt as kupolaBootstrap,
8491
+ yo as initSelects,
8492
+ ha as initSlideCaptchas,
8493
+ ee as initSlider,
8494
+ xo as initSliders,
8495
+ ue as initStatCard,
8496
+ Fo as initStatCards,
8497
+ we as initTable,
8498
+ de as initTag,
8499
+ Oo as initTags,
8500
+ gr as initTheme,
8501
+ te as initTimepicker,
8502
+ bo as initTimepickers,
8503
+ fe as initTooltip,
8504
+ Ro as initTooltips,
8505
+ sa as initVirtualList,
8506
+ vt as kupolaBootstrap,
8470
8507
  O as kupolaData,
8471
- Aa as kupolaEvents,
8508
+ za as kupolaEvents,
8472
8509
  N as kupolaI18n,
8473
8510
  E as kupolaInitializer,
8474
- Ma as kupolaLifecycle,
8511
+ Ta as kupolaLifecycle,
8475
8512
  M as kupolaRegistry,
8476
- Vt as kupolaStoreManager,
8477
- Ka as maskData,
8478
- to as n,
8479
- Ii as numberUtils,
8480
- ri as objectUtils,
8481
- lo as off,
8482
- po as offAll,
8483
- uo as offByScope,
8484
- ao as on,
8485
- oo as once,
8486
- ir as preloadUtils,
8513
+ Kt as kupolaStoreManager,
8514
+ Wa as maskData,
8515
+ eo as n,
8516
+ Ai as numberUtils,
8517
+ ai as objectUtils,
8518
+ co as off,
8519
+ fo as offAll,
8520
+ po as offByScope,
8521
+ oo as on,
8522
+ lo as once,
8523
+ nr as preloadUtils,
8487
8524
  I as ref,
8488
- Ua as registerComponent,
8489
- Ya as registerLazyComponent,
8490
- el as registerWebComponents,
8491
- lt as renderIcon,
8492
- jo as resetHttpClient,
8493
- Na as sanitizeHtml,
8494
- at as setBrand,
8495
- $a as setConfig,
8496
- eo as setLocale,
8497
- rt as setTheme,
8498
- Bo as showImagePreview,
8499
- Je as stringUtils,
8500
- Va as stripHtml,
8501
- me as svg,
8502
- Qa as t,
8503
- dn as throttle,
8504
- Jo as useDeps,
8505
- Ja as useMixin,
8525
+ Ya as registerComponent,
8526
+ Xa as registerLazyComponent,
8527
+ sl as registerWebComponents,
8528
+ ct as renderIcon,
8529
+ Jo as resetHttpClient,
8530
+ Ra as sanitizeHtml,
8531
+ ot as setBrand,
8532
+ Ba as setConfig,
8533
+ so as setLocale,
8534
+ at as setTheme,
8535
+ qo as showImagePreview,
8536
+ Ze as stringUtils,
8537
+ Ka as stripHtml,
8538
+ ge as svg,
8539
+ to as t,
8540
+ un as throttle,
8541
+ Zo as useDeps,
8542
+ Za as useMixin,
8506
8543
  Go as useQuery,
8507
- Uo as validateForm,
8544
+ Yo as validateForm,
8508
8545
  P as validator,
8509
- Ft as validatorUtils
8546
+ Nt as validatorUtils
8510
8547
  };
8511
8548
  //# sourceMappingURL=kupola.esm.js.map