mgv-backoffice 1.46.0 → 1.48.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.
package/dist/ui-lib.js CHANGED
@@ -1,5 +1,5 @@
1
- import { Fragment as e, Teleport as t, Text as n, Transition as r, cloneVNode as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createSlots as u, createStaticVNode as d, createTextVNode as f, createVNode as p, defineComponent as m, effectScope as h, getCurrentScope as g, guardReactiveProps as _, mergeProps as v, nextTick as y, normalizeClass as b, normalizeProps as x, normalizeStyle as S, onBeforeUnmount as C, onMounted as w, onScopeDispose as T, onUnmounted as E, openBlock as D, reactive as O, readonly as ee, ref as k, renderList as A, renderSlot as j, resolveComponent as M, resolveDynamicComponent as N, toDisplayString as P, unref as F, useId as te, useSlots as ne, vModelCheckbox as re, vModelDynamic as ie, vModelText as ae, vShow as oe, watch as I, withCtx as L, withDirectives as R, withKeys as se, withModifiers as z } from "vue";
2
- import { ArrowDownIcon as ce, ArrowRightStartOnRectangleIcon as le, ArrowUpIcon as ue, Bars3Icon as de, BellIcon as fe, CheckCircleIcon as pe, CheckIcon as me, ChevronDoubleLeftIcon as he, ChevronDoubleRightIcon as ge, ChevronDownIcon as _e, ChevronRightIcon as ve, ClipboardDocumentCheckIcon as ye, ClipboardDocumentIcon as be, DocumentDuplicateIcon as xe, ExclamationCircleIcon as Se, ExclamationTriangleIcon as Ce, FolderIcon as we, InformationCircleIcon as Te, MagnifyingGlassIcon as Ee, MinusIcon as De, MoonIcon as Oe, SunIcon as ke, XMarkIcon as Ae } from "@heroicons/vue/24/outline";
1
+ import { Fragment as e, Teleport as t, Text as n, Transition as r, cloneVNode as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createSlots as u, createStaticVNode as d, createTextVNode as f, createVNode as p, defineComponent as m, effectScope as h, getCurrentScope as g, guardReactiveProps as _, mergeProps as v, nextTick as y, normalizeClass as b, normalizeProps as x, normalizeStyle as S, onBeforeUnmount as C, onMounted as w, onScopeDispose as T, onUnmounted as E, openBlock as D, reactive as O, readonly as ee, ref as k, renderList as A, renderSlot as j, resolveComponent as M, resolveDynamicComponent as N, toDisplayString as P, unref as F, useId as te, useSlots as ne, vModelCheckbox as re, vModelDynamic as ie, vModelText as ae, vShow as oe, watch as se, withCtx as I, withDirectives as L, withKeys as ce, withModifiers as R } from "vue";
2
+ import { ArrowDownIcon as le, ArrowRightStartOnRectangleIcon as ue, ArrowUpIcon as de, Bars3Icon as fe, BellIcon as pe, CheckCircleIcon as me, CheckIcon as he, ChevronDoubleLeftIcon as ge, ChevronDoubleRightIcon as _e, ChevronDownIcon as ve, ChevronRightIcon as ye, ClipboardDocumentCheckIcon as be, ClipboardDocumentIcon as xe, DocumentDuplicateIcon as Se, ExclamationCircleIcon as Ce, ExclamationTriangleIcon as we, FolderIcon as Te, InformationCircleIcon as Ee, MagnifyingGlassIcon as De, MinusIcon as Oe, MoonIcon as ke, SunIcon as Ae, XMarkIcon as z } from "@heroicons/vue/24/outline";
3
3
  import { HomeIcon as je } from "@heroicons/vue/24/solid";
4
4
  import { RouterLink as Me, useRoute as Ne, useRouter as Pe } from "vue-router";
5
5
  import { VueDatePicker as Fe } from "@vuepic/vue-datepicker";
@@ -17,7 +17,7 @@ function Le(e) {
17
17
  e ? V.value = e === "dark" : typeof window.matchMedia == "function" && (V.value = window.matchMedia("(prefers-color-scheme: dark)").matches);
18
18
  }
19
19
  typeof document < "u" && h(!0).run(() => {
20
- I(V, (e) => {
20
+ se(V, (e) => {
21
21
  document.documentElement.classList.toggle("dark", e), window.localStorage?.setItem(H, e ? "dark" : "light");
22
22
  }, { immediate: !0 });
23
23
  });
@@ -70,10 +70,10 @@ var ze = { class: "min-w-0 flex-1" }, Be = {
70
70
  }
71
71
  }, i = a(() => n.value ? r[t.color].dark : r[t.color].light), u = a(() => {
72
72
  switch (t.color) {
73
- case B.SUCCESS: return pe;
74
- case B.WARNING: return Ce;
75
- case B.INFO: return Te;
76
- default: return Se;
73
+ case B.SUCCESS: return me;
74
+ case B.WARNING: return we;
75
+ case B.INFO: return Ee;
76
+ default: return Ce;
77
77
  }
78
78
  }), d = a(() => {
79
79
  switch (t.color) {
@@ -177,17 +177,17 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
177
177
  to: "/",
178
178
  class: "inline-flex items-center text-sm font-medium text-gray-700 hover:text-blue-600 dark:text-gray-400 dark:hover:text-white transition-colors rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500"
179
179
  }, {
180
- default: L(() => [p(F(je), { class: "h-4 w-4 text-gray-500 mr-2" }), n[0] ||= f(" Home ", -1)]),
180
+ default: I(() => [p(F(je), { class: "h-4 w-4 text-gray-500 mr-2" }), n[0] ||= f(" Home ", -1)]),
181
181
  _: 1
182
182
  })]), (D(!0), c(e, null, A(r.value, (e, t) => (D(), c("li", {
183
183
  key: t,
184
184
  class: "inline-flex items-center",
185
185
  style: { "margin-left": "0" }
186
- }, [p(F(ve), { class: "h-4 w-4 text-gray-500" }), p(i, {
186
+ }, [p(F(ye), { class: "h-4 w-4 text-gray-500" }), p(i, {
187
187
  to: e.url,
188
188
  class: "ml-1 text-sm font-medium text-gray-700 hover:text-blue-600 md:ml-2 dark:text-gray-400 dark:hover:text-white transition-colors rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500"
189
189
  }, {
190
- default: L(() => [f(P(e.name), 1)]),
190
+ default: I(() => [f(P(e.name), 1)]),
191
191
  _: 2
192
192
  }, 1032, ["to"])]))), 128))])]);
193
193
  };
@@ -206,7 +206,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
206
206
  }, Qe = { key: 1 }, $e = { key: 2 }, et = ["type", "disabled"], tt = {
207
207
  key: 0,
208
208
  class: "inline-flex items-center"
209
- }, nt = { key: 1 }, rt = { key: 2 }, it = /* @__PURE__ */ m({
209
+ }, nt = { key: 1 }, rt = { key: 2 }, q = /* @__PURE__ */ m({
210
210
  __name: "BaseButton",
211
211
  props: {
212
212
  description: {
@@ -426,7 +426,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
426
426
  to: e.to,
427
427
  custom: ""
428
428
  }, {
429
- default: L(({ navigate: i }) => [l("button", {
429
+ default: I(({ navigate: i }) => [l("button", {
430
430
  type: n.type,
431
431
  class: b(a()),
432
432
  disabled: e.isDisable || e.isLoading,
@@ -477,52 +477,52 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
477
477
  ], 10, et));
478
478
  };
479
479
  }
480
- }), at = /* @__PURE__ */ function(e) {
480
+ }), it = /* @__PURE__ */ function(e) {
481
481
  return e.BASE = "BASE", e.BASE_SHORTER = "BASE_SHORTER", e.SQUARE = "SQUARE", e;
482
- }({}), ot = {
482
+ }({}), at = {
483
483
  key: 0,
484
484
  class: "h-px my-8 bg-gray-200 border-0 dark:bg-gray-700"
485
- }, st = {
485
+ }, ot = {
486
486
  key: 1,
487
487
  class: "w-48 h-1 mx-auto my-4 bg-gray-100 border-0 rounded md:my-10 dark:bg-gray-700"
488
- }, ct = {
488
+ }, st = {
489
489
  key: 2,
490
490
  class: "w-8 h-8 mx-auto my-8 bg-gray-200 border-0 rounded md:my-12 dark:bg-gray-700"
491
- }, lt = /* @__PURE__ */ m({
491
+ }, ct = /* @__PURE__ */ m({
492
492
  __name: "BaseLine",
493
493
  props: { mode: {
494
494
  type: String,
495
495
  required: !1,
496
- default: at.BASE
496
+ default: it.BASE
497
497
  } },
498
498
  setup(t) {
499
499
  return (n, r) => (D(), c(e, null, [
500
- t.mode === F(at).BASE ? (D(), c("hr", ot)) : s("", !0),
501
- t.mode === F(at).BASE_SHORTER ? (D(), c("hr", st)) : s("", !0),
502
- t.mode === F(at).SQUARE ? (D(), c("hr", ct)) : s("", !0)
500
+ t.mode === F(it).BASE ? (D(), c("hr", at)) : s("", !0),
501
+ t.mode === F(it).BASE_SHORTER ? (D(), c("hr", ot)) : s("", !0),
502
+ t.mode === F(it).SQUARE ? (D(), c("hr", st)) : s("", !0)
503
503
  ], 64));
504
504
  }
505
- }), q = /* @__PURE__ */ function(e) {
505
+ }), J = /* @__PURE__ */ function(e) {
506
506
  return e.SMALL = "SMALL", e.MEDIUM = "MEDIUM", e.LARGE = "LARGE", e;
507
- }({}), ut = q, dt = ["height", "width"], ft = ["id"], pt = ["id", "href"], mt = ["id", "href"], ht = ["id", "href"], gt = ["id", "href"], _t = ["id", "href"], vt = ["id", "href"], yt = ["id", "href"], bt = ["id", "href"], xt = ["id", "href"], St = ["id"], Ct = ["fill"], wt = ["fill"], Tt = ["fill"], Et = ["fill"], Dt = ["fill"], Ot = ["fill"], kt = ["fill"], At = ["fill"], jt = ["fill"], Mt = ["fill"], Nt = /* @__PURE__ */ m({
507
+ }({}), lt = J, ut = ["height", "width"], dt = ["id"], ft = ["id", "href"], pt = ["id", "href"], mt = ["id", "href"], ht = ["id", "href"], gt = ["id", "href"], _t = ["id", "href"], vt = ["id", "href"], yt = ["id", "href"], bt = ["id", "href"], xt = ["id"], St = ["fill"], Ct = ["fill"], wt = ["fill"], Tt = ["fill"], Et = ["fill"], Dt = ["fill"], Ot = ["fill"], kt = ["fill"], At = ["fill"], jt = ["fill"], Mt = /* @__PURE__ */ m({
508
508
  __name: "BaseLogo",
509
509
  props: { size: {
510
510
  type: String,
511
511
  required: !1,
512
- default: q.MEDIUM
512
+ default: J.MEDIUM
513
513
  } },
514
514
  setup(e) {
515
515
  let t = `logo-${te()}`, n = e;
516
516
  function r() {
517
517
  let e = "";
518
518
  switch (n.size) {
519
- case q.SMALL:
519
+ case J.SMALL:
520
520
  e = "50px";
521
521
  break;
522
- case q.MEDIUM:
522
+ case J.MEDIUM:
523
523
  e = "100px";
524
524
  break;
525
- case q.LARGE: e = "150px";
525
+ case J.LARGE: e = "150px";
526
526
  }
527
527
  return e;
528
528
  }
@@ -532,7 +532,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
532
532
  to: "/",
533
533
  class: "flex items-center mb-6 text-2xl font-semibold text-gray-900 dark:text-white"
534
534
  }, {
535
- default: L(() => [(D(), c("svg", {
535
+ default: I(() => [(D(), c("svg", {
536
536
  height: r(),
537
537
  width: r(),
538
538
  viewBox: "33.6 130.6 499.7 242.9",
@@ -545,7 +545,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
545
545
  }, null, -1), l("stop", {
546
546
  offset: "1",
547
547
  "stop-color": "#132d13"
548
- }, null, -1)]], 8, ft),
548
+ }, null, -1)]], 8, dt),
549
549
  l("linearGradient", {
550
550
  id: `${t}-b`,
551
551
  gradientUnits: "userSpaceOnUse",
@@ -554,7 +554,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
554
554
  href: `#${t}-a`,
555
555
  y1: "288.291",
556
556
  y2: "369.4"
557
- }, null, 8, pt),
557
+ }, null, 8, ft),
558
558
  l("linearGradient", {
559
559
  id: `${t}-c`,
560
560
  gradientUnits: "userSpaceOnUse",
@@ -563,7 +563,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
563
563
  href: `#${t}-a`,
564
564
  y1: "308.454",
565
565
  y2: "370.601"
566
- }, null, 8, mt),
566
+ }, null, 8, pt),
567
567
  l("linearGradient", {
568
568
  id: `${t}-d`,
569
569
  gradientUnits: "userSpaceOnUse",
@@ -572,7 +572,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
572
572
  href: `#${t}-a`,
573
573
  y1: "288.291",
574
574
  y2: "369.85"
575
- }, null, 8, ht),
575
+ }, null, 8, mt),
576
576
  l("linearGradient", {
577
577
  id: `${t}-e`,
578
578
  gradientUnits: "userSpaceOnUse",
@@ -581,7 +581,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
581
581
  href: `#${t}-a`,
582
582
  y1: "307.312",
583
583
  y2: "369.511"
584
- }, null, 8, gt),
584
+ }, null, 8, ht),
585
585
  l("linearGradient", {
586
586
  id: `${t}-f`,
587
587
  gradientUnits: "userSpaceOnUse",
@@ -590,7 +590,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
590
590
  href: `#${t}-a`,
591
591
  y1: "288.291",
592
592
  y2: "367.857"
593
- }, null, 8, _t),
593
+ }, null, 8, gt),
594
594
  l("linearGradient", {
595
595
  id: `${t}-g`,
596
596
  gradientUnits: "userSpaceOnUse",
@@ -599,7 +599,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
599
599
  href: `#${t}-a`,
600
600
  y1: "307.312",
601
601
  y2: "369.511"
602
- }, null, 8, vt),
602
+ }, null, 8, _t),
603
603
  l("linearGradient", {
604
604
  id: `${t}-h`,
605
605
  gradientUnits: "userSpaceOnUse",
@@ -608,7 +608,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
608
608
  href: `#${t}-a`,
609
609
  y1: "306.156",
610
610
  y2: "367.742"
611
- }, null, 8, yt),
611
+ }, null, 8, vt),
612
612
  l("linearGradient", {
613
613
  id: `${t}-i`,
614
614
  gradientUnits: "userSpaceOnUse",
@@ -617,7 +617,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
617
617
  href: `#${t}-a`,
618
618
  y1: "288.291",
619
619
  y2: "369.4"
620
- }, null, 8, bt),
620
+ }, null, 8, yt),
621
621
  l("linearGradient", {
622
622
  id: `${t}-j`,
623
623
  gradientUnits: "userSpaceOnUse",
@@ -626,7 +626,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
626
626
  href: `#${t}-a`,
627
627
  y1: "131.629",
628
628
  y2: "232.559"
629
- }, null, 8, xt),
629
+ }, null, 8, bt),
630
630
  l("linearGradient", {
631
631
  id: `${t}-k`,
632
632
  gradientUnits: "userSpaceOnUse",
@@ -641,64 +641,64 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
641
641
  }, null, -1), l("stop", {
642
642
  offset: "1",
643
643
  "stop-color": "#808183"
644
- }, null, -1)]], 8, St),
644
+ }, null, -1)]], 8, xt),
645
645
  l("path", {
646
646
  d: "m65 307.2c-6.8 0-13.1 2.2-18.2 5.9v-24.8h-13.2v81.1h31.4c17.2 0 31.1-13.9 31.1-31.1s-13.9-31.1-31.1-31.1zm0 49.3h-18.2v-18.2c0-10.1 8.2-18.2 18.2-18.2 10.1 0 18.2 8.2 18.2 18.2.1 10.1-8.1 18.2-18.2 18.2z",
647
647
  fill: `url(#${t}-b)`
648
- }, null, 8, Ct),
648
+ }, null, 8, St),
649
649
  l("path", {
650
650
  d: "m168.8 343.9h-46.7c1.4 7.1 6.6 12 14.1 12.7 6.4.6 12.9.1 19.9.1v11.9c-15.2 4.9-33.3.5-42.1-10.4-3.8-4.7-17.3-34.7 11.5-47.4 39-11.4 45.3 22.4 43.3 33.1zm-14.2-12.7c-1.7-8.1-8.8-12.9-17.9-12.3-7.6.5-14 5.8-14.5 12.3z",
651
651
  fill: `url(#${t}-c)`
652
- }, null, 8, wt),
652
+ }, null, 8, Ct),
653
653
  l("path", {
654
654
  d: "m195.5 320.2c0 10.5-.2 20 .1 29.6.2 5.8 4.4 8.4 13.2 8.6v10.5c-13.8 3.9-26.2-4.5-26.4-18-.2-18.7-.1-43.9-.1-62.6h14.1l-.3 18.5 12.7-.1v13.4h-13.3z",
655
655
  fill: `url(#${t}-d)`
656
- }, null, 8, Tt),
656
+ }, null, 8, wt),
657
657
  l("path", {
658
658
  d: "m249.6 307.3c-17.2 0-31.1 13.9-31.1 31.1s13.9 31.1 31.1 31.1h31.1v-31.1c0-17.2-13.9-31.1-31.1-31.1zm18.6 49.7h-18.5c-10.2 0-18.5-8.3-18.5-18.5s8.3-18.5 18.5-18.5 18.5 8.3 18.5 18.5z",
659
659
  fill: `url(#${t}-e)`
660
- }, null, 8, Et),
660
+ }, null, 8, Tt),
661
661
  l("path", {
662
662
  d: "m296.4 288.3h13v79.6h-13z",
663
663
  fill: `url(#${t}-f)`
664
- }, null, 8, Dt),
664
+ }, null, 8, Et),
665
665
  l("path", {
666
666
  d: "m354.1 307.3c-17.2 0-31.1 13.9-31.1 31.1s13.9 31.1 31.1 31.1h31.1v-31.1c0-17.2-13.9-31.1-31.1-31.1zm18.6 49.7h-18.5c-10.2 0-18.5-8.3-18.5-18.5s8.3-18.5 18.5-18.5 18.5 8.3 18.5 18.5z",
667
667
  fill: `url(#${t}-g)`
668
- }, null, 8, Ot),
668
+ }, null, 8, Dt),
669
669
  l("path", {
670
670
  d: "m442.2 367.7c0-12.3.2-23.6 0-34.9-.2-3.4-3.6-13.8-14.1-13.4-10.3-.3-14.4 10-14.3 12.7.1 10.2.5 35.1.5 35.1l-13.6.1s-.3-25.7.2-36.2c.6-14.1 12.7-25 27.5-25 14.7 0 26.2 10.4 26.7 24.9.4 10.4.5 36.3.5 36.3z",
671
671
  fill: `url(#${t}-h)`
672
- }, null, 8, kt),
672
+ }, null, 8, Ot),
673
673
  l("path", {
674
674
  d: "m501.9 307.2c6.8 0 13.1 2.2 18.2 5.9v-24.8h13.2v81.1h-31.4c-17.2 0-31.1-13.9-31.1-31.1s13.9-31.1 31.1-31.1zm0 49.3h18.2v-18.2c0-10.1-8.2-18.2-18.2-18.2-10.1 0-18.2 8.2-18.2 18.2 0 10.1 8.1 18.2 18.2 18.2z",
675
675
  fill: `url(#${t}-i)`
676
- }, null, 8, At),
676
+ }, null, 8, kt),
677
677
  l("path", {
678
678
  d: "m309.2 180.6h-24v-24c0-12.6 10.2-24.1 22.8-25 14.8-1 27.1 11.3 26.1 26.1-.8 12.7-12.3 22.9-24.9 22.9zm-50.7-48.9c-14.8-1-27.1 11.3-26.1 26.1.8 12.6 12.4 22.8 25 22.8h23.9v-24c0-12.6-10.3-24.1-22.8-24.9zm50.7 51.9h-24v23.9c0 12.6 10.2 24.1 22.8 25 14.8 1 27.1-11.3 26.1-26.1-.8-12.6-12.3-22.8-24.9-22.8zm-52.4 0c-14 0-25.3 11.8-24.4 26 .8 12.2 10.7 22.1 22.9 22.9 14.2.9 26-10.4 26-24.4v-24.5z",
679
679
  fill: `url(#${t}-j)`
680
- }, null, 8, jt),
680
+ }, null, 8, At),
681
681
  l("path", {
682
682
  d: "m281.7 183.8h3.6v18.5h-3.6z",
683
683
  fill: `url(#${t}-k)`
684
- }, null, 8, Mt)
685
- ], 8, dt))]),
684
+ }, null, 8, jt)
685
+ ], 8, ut))]),
686
686
  _: 1
687
687
  });
688
688
  };
689
689
  }
690
- }), Pt = /* @__PURE__ */ function(e) {
690
+ }), Nt = /* @__PURE__ */ function(e) {
691
691
  return e.DELETE = "DELETE", e.SUCCESS = "SUCCESS", e;
692
- }({}), Ft = {
692
+ }({}), Pt = {
693
693
  key: 0,
694
694
  class: "p-6 text-center"
695
- }, It = { class: "flex justify-center" }, Lt = {
695
+ }, Ft = { class: "flex justify-center" }, It = {
696
696
  key: 1,
697
697
  class: "p-6 text-center"
698
- }, Rt = {
698
+ }, Lt = {
699
699
  key: 0,
700
700
  class: "mb-5 text-sm text-gray-500"
701
- }, zt = { class: "flex justify-center" }, Bt = /* @__PURE__ */ m({
701
+ }, Rt = { class: "flex justify-center" }, zt = /* @__PURE__ */ m({
702
702
  __name: "BaseModal",
703
703
  props: {
704
704
  title: {
@@ -717,7 +717,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
717
717
  mode: {
718
718
  type: String,
719
719
  required: !1,
720
- default: Pt.SUCCESS
720
+ default: Nt.SUCCESS
721
721
  }
722
722
  },
723
723
  emits: ["closeModal", "confirmModal"],
@@ -738,37 +738,37 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
738
738
  role: "dialog",
739
739
  "aria-modal": "true",
740
740
  "aria-labelledby": i
741
- }, [t.mode === F(Pt).DELETE ? (D(), c("div", Ft, [
742
- p(F(Se), { class: "w-12 h-12 text-gray-400 mx-auto mb-4" }),
741
+ }, [t.mode === F(Nt).DELETE ? (D(), c("div", Pt, [
742
+ p(F(Ce), { class: "w-12 h-12 text-gray-400 mx-auto mb-4" }),
743
743
  l("h3", {
744
744
  id: i,
745
745
  class: "mb-5 text-lg font-normal text-gray-500 dark:text-gray-400"
746
746
  }, " Are you sure you want to delete this " + P(t.title) + "? ", 1),
747
- l("div", It, [p(it, {
747
+ l("div", Ft, [p(q, {
748
748
  color: F(G).RED,
749
749
  onClick: r[1] ||= (e) => n.$emit("confirmModal"),
750
750
  description: "Yes, I'm sure"
751
- }, null, 8, ["color"]), p(it, {
751
+ }, null, 8, ["color"]), p(q, {
752
752
  color: F(G).WHITE,
753
753
  onClick: r[2] ||= (e) => n.$emit("closeModal"),
754
754
  description: "No, cancel"
755
755
  }, null, 8, ["color"])])
756
- ])) : (D(), c("div", Lt, [
757
- p(F(pe), { class: "w-12 h-12 text-green-500 mx-auto mb-4" }),
756
+ ])) : (D(), c("div", It, [
757
+ p(F(me), { class: "w-12 h-12 text-green-500 mx-auto mb-4" }),
758
758
  l("h3", {
759
759
  id: i,
760
760
  class: "mb-2 text-lg font-medium text-gray-900"
761
761
  }, P(t.title), 1),
762
- t.description ? (D(), c("p", Rt, P(t.description), 1)) : s("", !0),
762
+ t.description ? (D(), c("p", Lt, P(t.description), 1)) : s("", !0),
763
763
  j(n.$slots, "default"),
764
- l("div", zt, [p(it, {
764
+ l("div", Rt, [p(q, {
765
765
  color: F(G).BLUE,
766
766
  onClick: r[3] ||= (e) => n.$emit("closeModal"),
767
767
  description: "OK"
768
768
  }, null, 8, ["color"])])
769
769
  ]))])], 64));
770
770
  }
771
- }), Vt = /* @__PURE__ */ m({
771
+ }), Bt = /* @__PURE__ */ m({
772
772
  __name: "BaseRow",
773
773
  props: { bgColor: {
774
774
  type: String,
@@ -782,7 +782,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
782
782
  }
783
783
  return (e, t) => (D(), c("div", { class: b(n()) }, [j(e.$slots, "default")], 2));
784
784
  }
785
- }), Ht = /* @__PURE__ */ m({
785
+ }), Vt = /* @__PURE__ */ m({
786
786
  __name: "BaseSpinner",
787
787
  props: {
788
788
  size: { default: "sm" },
@@ -810,9 +810,9 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
810
810
  "aria-label": "Loading"
811
811
  }, null, 2));
812
812
  }
813
- }), J = /* @__PURE__ */ function(e) {
813
+ }), Y = /* @__PURE__ */ function(e) {
814
814
  return e.SUCCESS = "SUCCESS", e.WARNING = "WARNING", e.ERROR = "ERROR", e;
815
- }({}), Y = /* @__PURE__ */ function(e) {
815
+ }({}), Ht = /* @__PURE__ */ function(e) {
816
816
  return e.TOP_LEFT = "TOP_LEFT", e.TOP_RIGHT = "TOP_RIGHT", e.BOTTOM_LEFT = "BOTTOM_LEFT", e.BOTTOM_RIGHT = "BOTTOM_RIGHT", e;
817
817
  }({}), Ut = { class: "flex items-center w-full max-w-md p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800" }, Wt = { class: "ml-3 text-sm font-normal" }, Gt = /* @__PURE__ */ m({
818
818
  __name: "BaseToast",
@@ -833,7 +833,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
833
833
  positioning: {
834
834
  type: String,
835
835
  required: !1,
836
- default: Y.TOP_RIGHT
836
+ default: Ht.TOP_RIGHT
837
837
  },
838
838
  duration: {
839
839
  type: Number,
@@ -854,13 +854,13 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
854
854
  function a() {
855
855
  let e = "";
856
856
  switch (t.mode) {
857
- case J.ERROR:
857
+ case Y.ERROR:
858
858
  e = "text-red-500 bg-red-100 dark:bg-red-800 dark:text-red-200";
859
859
  break;
860
- case J.SUCCESS:
860
+ case Y.SUCCESS:
861
861
  e = "text-green-500 bg-green-100 dark:bg-green-800 dark:text-green-200";
862
862
  break;
863
- case J.WARNING:
863
+ case Y.WARNING:
864
864
  e = "text-orange-500 bg-orange-100 dark:bg-orange-700 dark:text-orange-200";
865
865
  break;
866
866
  default: e = "text-gray-500 bg-gray-100 dark:bg-gray-800 dark:text-gray-200";
@@ -870,16 +870,16 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
870
870
  function o() {
871
871
  let e = "top-5 right-5";
872
872
  switch (t.positioning) {
873
- case Y.BOTTOM_LEFT:
873
+ case Ht.BOTTOM_LEFT:
874
874
  e = "bottom-5 left-5";
875
875
  break;
876
- case Y.TOP_LEFT:
876
+ case Ht.TOP_LEFT:
877
877
  e = "top-5 left-5";
878
878
  break;
879
- case Y.TOP_RIGHT:
879
+ case Ht.TOP_RIGHT:
880
880
  e = "top-5 right-5";
881
881
  break;
882
- case Y.BOTTOM_RIGHT: e = "bottom-5 right-5";
882
+ case Ht.BOTTOM_RIGHT: e = "bottom-5 right-5";
883
883
  }
884
884
  return "fixed flex items-center w-full max-w-md p-4 space-x-4 divide-x rounded-lg " + e;
885
885
  }
@@ -889,16 +889,16 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
889
889
  class: b(o()),
890
890
  role: "alert"
891
891
  }, [l("div", Ut, [
892
- e.mode == F(J).ERROR ? (D(), c("div", {
892
+ e.mode == F(Y).ERROR ? (D(), c("div", {
893
893
  key: 0,
894
894
  class: b(a())
895
- }, [p(F(Se), { class: "h-6 w-6 text-red-500" }), r[0] ||= l("span", { class: "sr-only" }, "Error icon", -1)], 2)) : e.mode == F(J).SUCCESS ? (D(), c("div", {
895
+ }, [p(F(Ce), { class: "h-6 w-6 text-red-500" }), r[0] ||= l("span", { class: "sr-only" }, "Error icon", -1)], 2)) : e.mode == F(Y).SUCCESS ? (D(), c("div", {
896
896
  key: 1,
897
897
  class: b(a())
898
- }, [p(F(pe), { class: "h-6 w-6 text-green-500" }), r[1] ||= l("span", { class: "sr-only" }, "Check icon", -1)], 2)) : e.mode == F(J).WARNING ? (D(), c("div", {
898
+ }, [p(F(me), { class: "h-6 w-6 text-green-500" }), r[1] ||= l("span", { class: "sr-only" }, "Check icon", -1)], 2)) : e.mode == F(Y).WARNING ? (D(), c("div", {
899
899
  key: 2,
900
900
  class: b(a())
901
- }, [p(F(Ce), { class: "h-6 w-6 text-yellow-500" }), r[2] ||= l("span", { class: "sr-only" }, "Warning icon", -1)], 2)) : s("", !0),
901
+ }, [p(F(we), { class: "h-6 w-6 text-yellow-500" }), r[2] ||= l("span", { class: "sr-only" }, "Warning icon", -1)], 2)) : s("", !0),
902
902
  l("div", Wt, P(e.description), 1),
903
903
  e.hasCloseIcon ? (D(), c("button", {
904
904
  key: 3,
@@ -906,7 +906,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
906
906
  class: "ml-auto -mx-1.5 -my-1.5 bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex items-center justify-center h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700 cursor-pointer",
907
907
  "aria-label": "Close",
908
908
  onClick: i
909
- }, [r[3] ||= l("span", { class: "sr-only" }, "Close", -1), p(F(Ae), { class: "h-6 w-6 text-gray-500" })])) : s("", !0)
909
+ }, [r[3] ||= l("span", { class: "sr-only" }, "Close", -1), p(F(z), { class: "h-6 w-6 text-gray-500" })])) : s("", !0)
910
910
  ])], 2)) : s("", !0);
911
911
  }
912
912
  }), Kt = { class: "w-13" }, qt = /* @__PURE__ */ m({
@@ -1079,7 +1079,7 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
1079
1079
  return Math.min(Math.max(e, 1), Math.max(o.value, 1));
1080
1080
  }
1081
1081
  let u = k(1);
1082
- I(o, () => {
1082
+ se(o, () => {
1083
1083
  u.value = s(u.value);
1084
1084
  });
1085
1085
  let d = a(() => r.page != null && Number.isFinite(r.page) ? s(r.page) : u.value), f = a(() => {
@@ -1129,15 +1129,15 @@ var We = "bg-red-100 text-red-700 border-red-200", Ge = /* @__PURE__ */ m({
1129
1129
  setup(e) {
1130
1130
  let t = e, n = a(() => t.number !== null && t.number !== void 0 && t.number < 0), r = a(() => t.number === 0);
1131
1131
  return (i, a) => e.number !== null && e.number !== void 0 ? (D(), c("div", cn, [n.value ? (D(), c("span", ln, [p(Ge, { color: F(W).RED }, {
1132
- default: L(() => [f(P(e.number) + P(t.icon), 1)]),
1132
+ default: I(() => [f(P(e.number) + P(t.icon), 1)]),
1133
1133
  _: 1
1134
- }, 8, ["color"]), p(F(ce), { class: "h-5 w-5 text-red-500" })])) : r.value ? (D(), c("span", un, [p(Ge, { color: F(W).GRAY }, {
1135
- default: L(() => [f(P(e.number) + P(t.icon), 1)]),
1134
+ }, 8, ["color"]), p(F(le), { class: "h-5 w-5 text-red-500" })])) : r.value ? (D(), c("span", un, [p(Ge, { color: F(W).GRAY }, {
1135
+ default: I(() => [f(P(e.number) + P(t.icon), 1)]),
1136
1136
  _: 1
1137
- }, 8, ["color"]), p(F(De), { class: "h-5 w-5 text-gray-400" })])) : (D(), c("span", dn, [p(Ge, { color: F(W).GREEN }, {
1138
- default: L(() => [f(P(e.number) + P(t.icon), 1)]),
1137
+ }, 8, ["color"]), p(F(Oe), { class: "h-5 w-5 text-gray-400" })])) : (D(), c("span", dn, [p(Ge, { color: F(W).GREEN }, {
1138
+ default: I(() => [f(P(e.number) + P(t.icon), 1)]),
1139
1139
  _: 1
1140
- }, 8, ["color"]), p(F(ue), { class: "h-5 w-5 text-green-500" })]))])) : s("", !0);
1140
+ }, 8, ["color"]), p(F(de), { class: "h-5 w-5 text-green-500" })]))])) : s("", !0);
1141
1141
  }
1142
1142
  });
1143
1143
  //#endregion
@@ -1213,7 +1213,7 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1213
1213
  }, [e.scrollable ? (D(), c("div", {
1214
1214
  key: 0,
1215
1215
  class: b(["relative w-full mx-4 rounded-lg shadow-xl max-h-[90vh] flex flex-col", [e.maxWidthClass, p.value]]),
1216
- onClick: r[0] ||= z(() => {}, ["stop"])
1216
+ onClick: r[0] ||= R(() => {}, ["stop"])
1217
1217
  }, [
1218
1218
  l("div", { class: b(["flex items-start justify-between gap-4 p-6 border-b shrink-0", F(d).border]) }, [l("div", mn, [j(n.$slots, "icon", {}, () => [l("div", { class: b(["flex-shrink-0 flex h-12 w-12 items-center justify-center rounded-full", m.value]) }, [(D(), o(N(e.icon), {
1219
1219
  class: b(["h-6 w-6", e.iconClass]),
@@ -1233,7 +1233,7 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1233
1233
  ], 2)) : (D(), c("div", {
1234
1234
  key: 1,
1235
1235
  class: b(["relative w-full mx-4 rounded-lg shadow-xl", [e.maxWidthClass, p.value]]),
1236
- onClick: r[1] ||= z(() => {}, ["stop"])
1236
+ onClick: r[1] ||= R(() => {}, ["stop"])
1237
1237
  }, [l("div", _n, [
1238
1238
  l("div", vn, [j(n.$slots, "icon", {}, () => [l("div", { class: b(["flex-shrink-0 flex h-12 w-12 items-center justify-center rounded-full", m.value]) }, [(D(), o(N(e.icon), {
1239
1239
  class: b(["h-6 w-6", e.iconClass]),
@@ -1276,7 +1276,7 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1276
1276
  "stroke-linecap": "round",
1277
1277
  "stroke-linejoin": "round",
1278
1278
  d: "M19 9l-7 7-7-7"
1279
- }, null, -1)]], 2))], 10, Cn), R(l("div", { class: b(["p-6 border-t rounded-b-xl", [F(o).border, p.value]]) }, [j(t.$slots, "default")], 2), [[oe, !e.collapsed]])], 2));
1279
+ }, null, -1)]], 2))], 10, Cn), L(l("div", { class: b(["p-6 border-t rounded-b-xl", [F(o).border, p.value]]) }, [j(t.$slots, "default")], 2), [[oe, !e.collapsed]])], 2));
1280
1280
  }
1281
1281
  }), En = ["disabled"], Dn = ["disabled"], On = {
1282
1282
  key: 0,
@@ -1309,13 +1309,13 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1309
1309
  }
1310
1310
  return (t, n) => (D(), o(Sn, {
1311
1311
  title: e.title,
1312
- icon: F(Ce),
1312
+ icon: F(we),
1313
1313
  "icon-bg-class": e.variant === "danger" ? F(i) ? "bg-red-900/30" : "bg-red-50" : F(i) ? "bg-amber-900/30" : "bg-amber-50",
1314
1314
  "icon-class": e.variant === "danger" ? "text-red-600" : "text-amber-600",
1315
1315
  "manual-close": e.submitting,
1316
1316
  onCancel: d
1317
1317
  }, {
1318
- footer: L(() => [l("button", {
1318
+ footer: I(() => [l("button", {
1319
1319
  type: "button",
1320
1320
  disabled: e.submitting,
1321
1321
  class: b(["inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", [F(a).ghostButton, e.submitting ? "opacity-60 cursor-not-allowed" : "cursor-pointer"]]),
@@ -1337,7 +1337,7 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1337
1337
  fill: "currentColor",
1338
1338
  d: "M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z"
1339
1339
  }, null, -1)]])) : s("", !0), f(" " + P(e.submitting ? e.submittingText : e.confirmText), 1)], 10, Dn)]),
1340
- default: L(() => [j(t.$slots, "message", {}, () => [l("p", { class: b(["text-sm", F(i) ? "text-gray-300" : "text-gray-600"]) }, P(e.message), 3)]), j(t.$slots, "default")]),
1340
+ default: I(() => [j(t.$slots, "message", {}, () => [l("p", { class: b(["text-sm", F(i) ? "text-gray-300" : "text-gray-600"]) }, P(e.message), 3)]), j(t.$slots, "default")]),
1341
1341
  _: 3
1342
1342
  }, 8, [
1343
1343
  "title",
@@ -1380,11 +1380,11 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1380
1380
  }
1381
1381
  return pn(f), (t, n) => (D(), o(Sn, {
1382
1382
  title: e.title,
1383
- icon: F(xe),
1383
+ icon: F(Se),
1384
1384
  "manual-close": "",
1385
1385
  onBackdrop: p
1386
1386
  }, u({
1387
- footer: L(() => [l("button", {
1387
+ footer: I(() => [l("button", {
1388
1388
  type: "button",
1389
1389
  class: b(["inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", F(a).ghostButton]),
1390
1390
  onClick: f
@@ -1394,19 +1394,19 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1394
1394
  class: b(["inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2", [!s.value.trim() || e.submitting ? "bg-emerald-400 cursor-not-allowed" : "bg-emerald-600 hover:bg-emerald-700 cursor-pointer"]]),
1395
1395
  onClick: d
1396
1396
  }, P(e.submitting ? e.submittingText : e.confirmText), 11, Mn)]),
1397
- default: L(() => [l("p", { class: b(["text-sm", F(i) ? "text-gray-300" : "text-gray-600"]) }, P(e.message), 3), l("div", An, [l("label", { class: b(["block text-sm font-medium mb-1", F(a).label]) }, P(e.inputLabel), 3), R(l("input", {
1397
+ default: I(() => [l("p", { class: b(["text-sm", F(i) ? "text-gray-300" : "text-gray-600"]) }, P(e.message), 3), l("div", An, [l("label", { class: b(["block text-sm font-medium mb-1", F(a).label]) }, P(e.inputLabel), 3), L(l("input", {
1398
1398
  ref_key: "nameInput",
1399
1399
  ref: c,
1400
1400
  "onUpdate:modelValue": n[0] ||= (e) => s.value = e,
1401
1401
  type: "text",
1402
1402
  placeholder: e.placeholder,
1403
1403
  class: b(["w-full px-3 py-2 rounded-md border text-sm transition-colors", F(i) ? "bg-gray-800 border-gray-600 text-gray-100 placeholder-gray-500 focus:outline-none focus:border-emerald-500" : "bg-white border-gray-300 text-gray-900 placeholder-gray-400 focus:outline-none focus:border-emerald-500"]),
1404
- onKeyup: se(d, ["enter"])
1404
+ onKeyup: ce(d, ["enter"])
1405
1405
  }, null, 42, jn), [[ae, s.value]])])]),
1406
1406
  _: 2
1407
1407
  }, [t.$slots.icon ? {
1408
1408
  name: "icon",
1409
- fn: L(() => [j(t.$slots, "icon")]),
1409
+ fn: I(() => [j(t.$slots, "icon")]),
1410
1410
  key: "0"
1411
1411
  } : void 0]), 1032, ["title", "icon"]));
1412
1412
  }
@@ -1424,7 +1424,7 @@ var mn = { class: "flex items-start gap-4 min-w-0" }, hn = { class: "flex-1 min-
1424
1424
  n.push({ name: t.homeRouteName });
1425
1425
  }
1426
1426
  return (t, n) => (D(), c("div", Pn, [l("div", Fn, [
1427
- p(F(Ce), { class: b(["w-16 h-16 mx-auto mb-4", F(i).illustration]) }, null, 8, ["class"]),
1427
+ p(F(we), { class: b(["w-16 h-16 mx-auto mb-4", F(i).illustration]) }, null, 8, ["class"]),
1428
1428
  l("h1", { class: b(["text-4xl font-bold mb-2", F(r) ? "text-gray-200" : "text-gray-800"]) }, P(e.code), 3),
1429
1429
  l("p", { class: b(["text-lg mb-6", F(i).dimTextAlt]) }, P(e.message), 3),
1430
1430
  l("button", {
@@ -1458,7 +1458,7 @@ function Vn(e) {
1458
1458
  if (!zn && (zn = !0, Bn = e, typeof window < "u")) {
1459
1459
  let e = window.localStorage?.getItem(Bn);
1460
1460
  e && (Z.value = e === "true"), h(!0).run(() => {
1461
- I(Z, (e) => {
1461
+ se(Z, (e) => {
1462
1462
  window.localStorage?.setItem(Bn, String(e));
1463
1463
  });
1464
1464
  });
@@ -1577,7 +1577,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1577
1577
  },
1578
1578
  setup(t) {
1579
1579
  let n = t, r = Pe(), i = Ne(), { isDark: u, toggleTheme: d } = U(), { mobileOpen: m, close: h, toggle: g } = Rn(), { collapsed: _, toggle: v } = Hn(), { unreadCount: x, togglePanel: S } = Gn(), C = a(() => n.collapsible && _.value), w = k(null), T = null;
1580
- I(m, async (e) => {
1580
+ se(m, async (e) => {
1581
1581
  e ? (T = document.activeElement instanceof HTMLElement ? document.activeElement : null, await y(), w.value?.focus()) : (T?.focus(), T = null);
1582
1582
  });
1583
1583
  function E() {
@@ -1601,11 +1601,11 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1601
1601
  class: b(["p-2 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", F(u) ? "text-gray-400 hover:bg-gray-800" : "text-gray-600 hover:bg-gray-100"]),
1602
1602
  "aria-label": F(m) ? "Close navigation menu" : "Open navigation menu",
1603
1603
  "aria-expanded": F(m)
1604
- }, [F(m) ? (D(), o(F(Ae), {
1604
+ }, [F(m) ? (D(), o(F(z), {
1605
1605
  key: 1,
1606
1606
  class: "w-6 h-6",
1607
1607
  "aria-hidden": "true"
1608
- })) : (D(), o(F(de), {
1608
+ })) : (D(), o(F(fe), {
1609
1609
  key: 0,
1610
1610
  class: "w-6 h-6",
1611
1611
  "aria-hidden": "true"
@@ -1637,7 +1637,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1637
1637
  onClick: r[2] ||= (...e) => F(h) && F(h)(...e),
1638
1638
  class: b(["lg:hidden p-1.5 rounded-lg cursor-pointer absolute right-3 top-4 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", F(u) ? "text-gray-400 hover:bg-gray-800" : "text-gray-500 hover:bg-gray-100"]),
1639
1639
  "aria-label": "Close navigation menu"
1640
- }, [p(F(Ae), {
1640
+ }, [p(F(z), {
1641
1641
  class: "w-5 h-5",
1642
1642
  "aria-hidden": "true"
1643
1643
  })], 2)], 2),
@@ -1656,7 +1656,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1656
1656
  title: "Notifications",
1657
1657
  "aria-label": F(x) > 0 ? `Notifications, ${F(x)} unread` : "Notifications",
1658
1658
  class: b(["relative flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", [F(u) ? "text-gray-400 hover:text-gray-100 hover:bg-gray-800" : "text-gray-600 hover:text-gray-900 hover:bg-gray-100", { "lg:justify-center": C.value }]])
1659
- }, [l("span", Qn, [p(F(fe), {
1659
+ }, [l("span", Qn, [p(F(pe), {
1660
1660
  class: "w-[18px] h-[18px]",
1661
1661
  "aria-hidden": "true"
1662
1662
  }), F(x) > 0 ? (D(), c("span", $n, P(F(x) > 99 ? "99+" : F(x)), 1)) : s("", !0)]), l("span", { class: b({ "lg:hidden": C.value }) }, "Notifications", 2)], 10, Zn)) : s("", !0),
@@ -1669,7 +1669,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1669
1669
  "aria-pressed": F(u),
1670
1670
  class: b(["flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", [F(u) ? "text-gray-400 hover:text-gray-100 hover:bg-gray-800" : "text-gray-600 hover:text-gray-900 hover:bg-gray-100", { "lg:justify-center": C.value }]])
1671
1671
  }, [
1672
- (D(), o(N(F(u) ? F(ke) : F(Oe)), {
1672
+ (D(), o(N(F(u) ? F(Ae) : F(ke)), {
1673
1673
  class: b(["hidden w-[18px] h-[18px] shrink-0", { "lg:block": C.value }]),
1674
1674
  "aria-hidden": "true"
1675
1675
  }, null, 8, ["class"])),
@@ -1684,7 +1684,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1684
1684
  "aria-label": F(_) ? "Expand sidebar" : "Collapse sidebar",
1685
1685
  "aria-pressed": F(_),
1686
1686
  class: b(["hidden lg:flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", [F(u) ? "text-gray-400 hover:text-gray-100 hover:bg-gray-800" : "text-gray-600 hover:text-gray-900 hover:bg-gray-100", { "lg:justify-center": C.value }]])
1687
- }, [(D(), o(N(F(_) ? F(ge) : F(he)), {
1687
+ }, [(D(), o(N(F(_) ? F(_e) : F(ge)), {
1688
1688
  class: "w-[18px] h-[18px] shrink-0",
1689
1689
  "aria-hidden": "true"
1690
1690
  })), l("span", { class: b({ "lg:hidden": C.value }) }, "Collapse", 2)], 10, tr)) : s("", !0),
@@ -1859,13 +1859,13 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1859
1859
  }
1860
1860
  return (n, r) => (D(), o(Sn, {
1861
1861
  title: t.title,
1862
- icon: F(we),
1862
+ icon: F(Te),
1863
1863
  "icon-bg-class": O.value.iconBg,
1864
1864
  "icon-class": O.value.iconText,
1865
1865
  "manual-close": t.submitting,
1866
1866
  onCancel: M
1867
1867
  }, u({
1868
- footer: L(() => [l("button", {
1868
+ footer: I(() => [l("button", {
1869
1869
  type: "button",
1870
1870
  disabled: t.submitting,
1871
1871
  class: b(["inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", F(f).ghostButton]),
@@ -1876,16 +1876,16 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1876
1876
  class: b(["inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2", !_.value || t.submitting ? O.value.confirmDisabled : O.value.confirmActive]),
1877
1877
  onClick: ee
1878
1878
  }, P(t.submitting ? t.submittingText : t.confirmText), 11, mr)]),
1879
- default: L(() => [
1879
+ default: I(() => [
1880
1880
  t.message ? (D(), c("p", {
1881
1881
  key: 0,
1882
1882
  class: b(["text-sm", F(d) ? "text-gray-300" : "text-gray-600"])
1883
1883
  }, P(t.message), 3)) : s("", !0),
1884
- h.value ? (D(), c("div", rr, [p(Ht, { color: "emerald" })])) : g.value ? (D(), c("div", ir, P(g.value), 1)) : s("", !0),
1885
- !h.value && !g.value && S.value.length > 0 ? (D(), c("div", ar, [l("div", or, [p(F(Ee), {
1884
+ h.value ? (D(), c("div", rr, [p(Vt, { color: "emerald" })])) : g.value ? (D(), c("div", ir, P(g.value), 1)) : s("", !0),
1885
+ !h.value && !g.value && S.value.length > 0 ? (D(), c("div", ar, [l("div", or, [p(F(De), {
1886
1886
  class: b(["absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4", F(f).dimText]),
1887
1887
  "aria-hidden": "true"
1888
- }, null, 8, ["class"]), R(l("input", {
1888
+ }, null, 8, ["class"]), L(l("input", {
1889
1889
  ref_key: "searchInputRef",
1890
1890
  ref: x,
1891
1891
  "onUpdate:modelValue": r[0] ||= (e) => v.value = e,
@@ -1900,7 +1900,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1900
1900
  class: b(["w-full text-left flex items-center gap-3 px-3 py-2.5 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500", [_.value === e.id ? O.value.selectedRow : F(d) ? "hover:bg-gray-800 border border-transparent" : "hover:bg-gray-50 border border-transparent"]]),
1901
1901
  onClick: (t) => _.value = e.id
1902
1902
  }, [
1903
- p(F(we), { class: b(["w-5 h-5 flex-shrink-0", F(f).dimText]) }, null, 8, ["class"]),
1903
+ p(F(Te), { class: b(["w-5 h-5 flex-shrink-0", F(f).dimText]) }, null, 8, ["class"]),
1904
1904
  l("div", ur, [l("p", { class: b(["text-sm font-medium truncate", F(f).bodyText]) }, P(e.label), 3)]),
1905
1905
  _.value === e.id ? (D(), c("div", {
1906
1906
  key: 0,
@@ -1922,7 +1922,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1922
1922
  _: 2
1923
1923
  }, [n.$slots.icon ? {
1924
1924
  name: "icon",
1925
- fn: L(() => [j(n.$slots, "icon")]),
1925
+ fn: I(() => [j(n.$slots, "icon")]),
1926
1926
  key: "0"
1927
1927
  } : void 0]), 1032, [
1928
1928
  "title",
@@ -1972,11 +1972,11 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1972
1972
  marginClass: { default: "mb-8" },
1973
1973
  accent: {
1974
1974
  type: Boolean,
1975
- default: !1
1975
+ default: void 0
1976
1976
  }
1977
1977
  },
1978
1978
  setup(e) {
1979
- let t = e, { isDark: n } = U(), r = X(), i = a(() => {
1979
+ let t = e, { isDark: n } = U(), r = X(), i = ne(), o = a(() => t.accent ?? !i.icon), u = a(() => {
1980
1980
  let e = {
1981
1981
  emerald: {
1982
1982
  dark: "bg-emerald-500/10",
@@ -1996,7 +1996,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
1996
1996
  }
1997
1997
  }[t.iconColor];
1998
1998
  return n.value ? e.dark : e.light;
1999
- }), o = a(() => {
1999
+ }), d = a(() => {
2000
2000
  let e = {
2001
2001
  emerald: {
2002
2002
  dark: "text-emerald-400",
@@ -2019,8 +2019,8 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2019
2019
  });
2020
2020
  return (t, n) => (D(), c("header", { class: b(e.maxWidthClass ? ["mx-auto px-4 sm:px-6", e.maxWidthClass] : void 0) }, [l("div", { class: b(["flex flex-wrap justify-between gap-3", [e.align === "end" ? "items-end" : "items-center", e.marginClass]]) }, [l("div", yr, [t.$slots.icon ? (D(), c("div", {
2021
2021
  key: 0,
2022
- class: b(["w-10 h-10 rounded-lg flex items-center justify-center", i.value])
2023
- }, [j(t.$slots, "icon", { iconClass: o.value })], 2)) : s("", !0), l("div", null, [l("h1", { class: b(["text-2xl font-bold", [F(r).primaryTextSoft, e.accent ? "relative pl-3.5 tracking-tight" : ""]]) }, [e.accent ? (D(), c("span", br)) : s("", !0), f(" " + P(e.title), 1)], 2), e.subtitle || t.$slots.subtitle ? (D(), c("p", {
2022
+ class: b(["w-10 h-10 rounded-lg flex items-center justify-center", u.value])
2023
+ }, [j(t.$slots, "icon", { iconClass: d.value })], 2)) : s("", !0), l("div", null, [l("h1", { class: b(["text-2xl font-bold", [F(r).primaryTextSoft, o.value ? "relative pl-3.5 tracking-tight" : ""]]) }, [o.value ? (D(), c("span", br)) : s("", !0), f(" " + P(e.title), 1)], 2), e.subtitle || t.$slots.subtitle ? (D(), c("p", {
2024
2024
  key: 0,
2025
2025
  class: b(["max-w-[72ch] text-sm", F(r).dimTextAlt])
2026
2026
  }, [j(t.$slots, "subtitle", {}, () => [f(P(e.subtitle), 1)])], 2)) : s("", !0)])]), l("div", xr, [j(t.$slots, "actions")])], 2)], 2));
@@ -2219,11 +2219,11 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2219
2219
  "aria-label": d.value,
2220
2220
  class: b(f.value),
2221
2221
  onClick: m
2222
- }, [s.value ? (D(), o(F(ye), {
2222
+ }, [s.value ? (D(), o(F(be), {
2223
2223
  key: 0,
2224
2224
  class: b(e.iconClass),
2225
2225
  "aria-hidden": "true"
2226
- }, null, 8, ["class"])) : (D(), o(F(be), {
2226
+ }, null, 8, ["class"])) : (D(), o(F(xe), {
2227
2227
  key: 1,
2228
2228
  class: b(e.iconClass),
2229
2229
  "aria-hidden": "true"
@@ -2347,12 +2347,12 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2347
2347
  ])], 64)) : s("", !0),
2348
2348
  l("form", {
2349
2349
  class: "space-y-4",
2350
- onSubmit: z(v, ["prevent"])
2350
+ onSubmit: R(v, ["prevent"])
2351
2351
  }, [
2352
2352
  l("div", null, [l("label", {
2353
2353
  for: "login-email",
2354
2354
  class: b(["block mb-1.5 text-sm font-medium", F(u).label])
2355
- }, " Email ", 2), R(l("input", {
2355
+ }, " Email ", 2), L(l("input", {
2356
2356
  id: "login-email",
2357
2357
  "onUpdate:modelValue": r[1] ||= (e) => d.value = e,
2358
2358
  type: "email",
@@ -2366,7 +2366,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2366
2366
  l("div", null, [l("div", zr, [l("label", {
2367
2367
  for: "login-password",
2368
2368
  class: b(["block text-sm font-medium", F(u).label])
2369
- }, " Password ", 2), j(n.$slots, "forgot")]), l("div", Br, [R(l("input", {
2369
+ }, " Password ", 2), j(n.$slots, "forgot")]), l("div", Br, [L(l("input", {
2370
2370
  id: "login-password",
2371
2371
  "onUpdate:modelValue": r[2] ||= (e) => m.value = e,
2372
2372
  type: g.value ? "text" : "password",
@@ -2386,7 +2386,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2386
2386
  t.showRemember ? (D(), c("label", {
2387
2387
  key: 0,
2388
2388
  class: b(["flex items-center gap-2 text-sm cursor-pointer select-none", F(u).bodyText])
2389
- }, [R(l("input", {
2389
+ }, [L(l("input", {
2390
2390
  "onUpdate:modelValue": r[4] ||= (e) => h.value = e,
2391
2391
  type: "checkbox",
2392
2392
  disabled: _.value,
@@ -2448,7 +2448,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2448
2448
  "leave-active-class": "transition-opacity duration-200",
2449
2449
  "leave-to-class": "opacity-0"
2450
2450
  }, {
2451
- default: L(() => [F(_) ? (D(), c("div", {
2451
+ default: I(() => [F(_) ? (D(), c("div", {
2452
2452
  key: 0,
2453
2453
  class: "fixed inset-0 z-[60] bg-black/50",
2454
2454
  "aria-hidden": "true",
@@ -2461,7 +2461,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2461
2461
  "leave-active-class": "transition-transform duration-300 ease-in",
2462
2462
  "leave-to-class": "-translate-x-full"
2463
2463
  }, {
2464
- default: L(() => [F(_) ? (D(), c("aside", {
2464
+ default: I(() => [F(_) ? (D(), c("aside", {
2465
2465
  key: 0,
2466
2466
  role: "dialog",
2467
2467
  "aria-modal": "true",
@@ -2473,7 +2473,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2473
2473
  onClick: a[1] ||= (...e) => F(v) && F(v)(...e),
2474
2474
  "aria-label": "Close notifications",
2475
2475
  class: b(["p-1.5 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500", F(d) ? "text-gray-400 hover:bg-gray-800" : "text-gray-500 hover:bg-gray-100"])
2476
- }, [p(F(Ae), {
2476
+ }, [p(F(z), {
2477
2477
  class: "w-5 h-5",
2478
2478
  "aria-hidden": "true"
2479
2479
  })], 2)], 2),
@@ -2485,7 +2485,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2485
2485
  onClick: a[2] ||= (...e) => F(y) && F(y)(...e),
2486
2486
  class: b(["text-xs font-medium cursor-pointer transition-colors focus:outline-none focus-visible:underline", F(m).emeraldText])
2487
2487
  }, " Mark all as read ", 2)], 2)) : s("", !0),
2488
- l("div", Jr, [C.value === 0 ? (D(), c("div", Yr, [p(F(fe), {
2488
+ l("div", Jr, [C.value === 0 ? (D(), c("div", Yr, [p(F(pe), {
2489
2489
  class: b(["w-10 h-10", F(m).illustration]),
2490
2490
  "aria-hidden": "true"
2491
2491
  }, null, 8, ["class"]), l("p", { class: b(["text-sm", F(m).mutedText]) }, P(n.emptyText), 3)])) : (D(), c("ul", {
@@ -2601,9 +2601,9 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2601
2601
  }
2602
2602
  return (t, n) => (D(), c("label", {
2603
2603
  class: b(["flex flex-col items-center justify-center gap-2 rounded-lg border-2 border-dashed px-6 py-10 text-center transition-colors", [e.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer", a.value ? F(i) ? "border-emerald-500 text-emerald-400" : "border-emerald-500 text-emerald-600" : F(i) ? "border-gray-700 hover:border-emerald-500 text-gray-400 hover:text-emerald-400" : "border-gray-300 hover:border-emerald-500 text-gray-500 hover:text-emerald-600"]]),
2604
- onDragover: z(u, ["prevent"]),
2605
- onDragleave: n[0] ||= z((e) => a.value = !1, ["prevent"]),
2606
- onDrop: z(d, ["prevent"])
2604
+ onDragover: R(u, ["prevent"]),
2605
+ onDragleave: n[0] ||= R((e) => a.value = !1, ["prevent"]),
2606
+ onDrop: R(d, ["prevent"])
2607
2607
  }, [
2608
2608
  j(t.$slots, "icon", {}, () => [n[1] ||= l("svg", {
2609
2609
  class: "w-10 h-10",
@@ -2715,7 +2715,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2715
2715
  value: e.modelValue,
2716
2716
  class: ["base-select w-full appearance-none bg-none rounded-lg border border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm cursor-pointer transition-colors hover:border-slate-400 dark:hover:border-slate-500 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500/40 focus-visible:border-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed", e.size === "md" ? "py-2 pl-3 pr-9" : "py-1.5 pl-2.5 pr-8"],
2717
2717
  onChange: o
2718
- }), [p(i)], 16, fi), p(F(_e), {
2718
+ }), [p(i)], 16, fi), p(F(ve), {
2719
2719
  class: b(["pointer-events-none absolute top-1/2 h-4 w-4 -translate-y-1/2 text-slate-500 dark:text-slate-400", e.size === "md" ? "right-3" : "right-2.5"]),
2720
2720
  "aria-hidden": "true"
2721
2721
  }, null, 8, ["class"])], 2));
@@ -2783,7 +2783,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2783
2783
  "aria-haspopup": "listbox",
2784
2784
  "aria-expanded": o.value,
2785
2785
  onClick: g
2786
- }, [l("span", { class: b(["min-w-0 truncate", d.value ? "" : "text-slate-400 dark:text-slate-500"]) }, P(d.value ? d.value.label : t.placeholder), 3), p(F(_e), {
2786
+ }, [l("span", { class: b(["min-w-0 truncate", d.value ? "" : "text-slate-400 dark:text-slate-500"]) }, P(d.value ? d.value.label : t.placeholder), 3), p(F(ve), {
2787
2787
  class: b(["shrink-0 transition-transform", [t.chevronClass, o.value ? "rotate-180" : ""]]),
2788
2788
  "aria-hidden": "true"
2789
2789
  }, null, 8, ["class"])], 10, mi), o.value ? (D(), c("ul", {
@@ -2905,7 +2905,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
2905
2905
  modelValue: String(t.params[f.key] ?? ""),
2906
2906
  "onUpdate:modelValue": (e) => r("update", f.key, e)
2907
2907
  }, {
2908
- default: L(() => [(D(!0), c(e, null, A(f.options ?? [], (e) => (D(), c("option", {
2908
+ default: I(() => [(D(!0), c(e, null, A(f.options ?? [], (e) => (D(), c("option", {
2909
2909
  key: e,
2910
2910
  value: e
2911
2911
  }, P(e), 9, Ni))), 128))]),
@@ -3082,9 +3082,9 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3082
3082
  }
3083
3083
  }
3084
3084
  }
3085
- return w(h), n({ load: h }), (n, r) => (D(), o(Vt, { class: "!p-6" }, {
3086
- default: L(() => [
3087
- l("div", Wi, [l("div", null, [l("h2", Gi, P(t.title), 1), t.subtitle ? (D(), c("p", Ki, P(t.subtitle), 1)) : s("", !0)]), u.value ? (D(), c("span", qi, [p(Ht, { class: "!h-4 !w-4" }), r[4] ||= f(" Saving… ", -1)])) : s("", !0)]),
3085
+ return w(h), n({ load: h }), (n, r) => (D(), o(Bt, { class: "!p-6" }, {
3086
+ default: I(() => [
3087
+ l("div", Wi, [l("div", null, [l("h2", Gi, P(t.title), 1), t.subtitle ? (D(), c("p", Ki, P(t.subtitle), 1)) : s("", !0)]), u.value ? (D(), c("span", qi, [p(Vt, { class: "!h-4 !w-4" }), r[4] ||= f(" Saving… ", -1)])) : s("", !0)]),
3088
3088
  l("div", Ji, [
3089
3089
  l("div", Yi, [l("label", {
3090
3090
  for: `${t.idPrefix}-key-id`,
@@ -3146,7 +3146,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3146
3146
  type: "text",
3147
3147
  class: b(aa)
3148
3148
  }, null, 8, ["id", "modelValue"])]),
3149
- l("div", ia, [p(it, {
3149
+ l("div", ia, [p(q, {
3150
3150
  color: F(G).GREEN,
3151
3151
  description: t.saveLabel,
3152
3152
  isDisable: u.value,
@@ -3195,7 +3195,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3195
3195
  },
3196
3196
  emits: ["pick", "close"],
3197
3197
  setup(t, { emit: n }) {
3198
- let r = t, i = n, u = a(() => r.icon ?? Ee), d = k(""), f = k(ha), m = a(() => r.groups && r.groups.length > 0 ? [{
3198
+ let r = t, i = n, u = a(() => r.icon ?? De), d = k(""), f = k(ha), m = a(() => r.groups && r.groups.length > 0 ? [{
3199
3199
  value: ha,
3200
3200
  label: r.allLabel
3201
3201
  }, ...r.groups] : []), h = a(() => r.items.filter((e) => (f.value === ha || e.group === f.value) && e.label.toLowerCase().includes(d.value.trim().toLowerCase())));
@@ -3207,14 +3207,14 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3207
3207
  "max-width-class": t.maxWidthClass,
3208
3208
  onCancel: r[4] ||= (e) => i("close")
3209
3209
  }, {
3210
- footer: L(() => [p(Tr, {
3210
+ footer: I(() => [p(Tr, {
3211
3211
  variant: "ghost",
3212
3212
  label: t.closeText,
3213
3213
  onClick: r[3] ||= (e) => i("close")
3214
3214
  }, null, 8, ["label"])]),
3215
- default: L(() => [t.items.length === 0 ? (D(), c("p", sa, P(t.emptyMessage), 1)) : (D(), c(e, { key: 1 }, [l("div", ca, [l("div", la, [
3216
- p(F(Ee), { class: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-slate-400" }),
3217
- R(l("input", {
3215
+ default: I(() => [t.items.length === 0 ? (D(), c("p", sa, P(t.emptyMessage), 1)) : (D(), c(e, { key: 1 }, [l("div", ca, [l("div", la, [
3216
+ p(F(De), { class: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-slate-400" }),
3217
+ L(l("input", {
3218
3218
  "onUpdate:modelValue": r[0] ||= (e) => d.value = e,
3219
3219
  type: "text",
3220
3220
  placeholder: t.searchPlaceholder,
@@ -3358,7 +3358,46 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3358
3358
  onChange: (t) => g(e)
3359
3359
  }, null, 40, ka), l("span", { class: b(["text-sm text-slate-700 dark:text-slate-200", { "font-mono": t.mono }]) }, P(e), 3)]))), 128))])]))), 128))], 2)]));
3360
3360
  }
3361
- }), ja = /* @__PURE__ */ m({
3361
+ }), ja = { class: "inline-flex items-center gap-1 font-mono text-[11px]" }, Ma = {
3362
+ key: 0,
3363
+ class: "text-slate-500 dark:text-slate-400 uppercase tracking-wide"
3364
+ }, Na = ["title"], Pa = ["title", "aria-label"], Fa = /* @__PURE__ */ m({
3365
+ __name: "BaseIdChip",
3366
+ props: {
3367
+ value: {},
3368
+ label: { default: "" },
3369
+ copyLabel: { default: void 0 },
3370
+ actionLabel: { default: void 0 },
3371
+ maxWidthClass: { default: "max-w-[90px]" }
3372
+ },
3373
+ emits: ["action"],
3374
+ setup(e, { emit: t }) {
3375
+ let n = t;
3376
+ return (t, r) => (D(), c("div", ja, [
3377
+ e.label ? (D(), c("span", Ma, P(e.label), 1)) : s("", !0),
3378
+ l("code", {
3379
+ class: b(["truncate rounded bg-slate-100 px-1 text-slate-600 dark:bg-slate-800 dark:text-slate-300", e.maxWidthClass]),
3380
+ title: e.value
3381
+ }, P(e.value), 11, Na),
3382
+ p(Ar, {
3383
+ text: e.value,
3384
+ label: e.copyLabel ?? `${e.label} ${e.value}`.trim(),
3385
+ "icon-class": "w-3.5 h-3.5"
3386
+ }, null, 8, ["text", "label"]),
3387
+ e.actionLabel ? (D(), c("button", {
3388
+ key: 1,
3389
+ type: "button",
3390
+ title: e.actionLabel,
3391
+ "aria-label": e.actionLabel,
3392
+ class: "rounded px-0.5 text-slate-400 hover:bg-slate-100 hover:text-emerald-600 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 dark:hover:bg-slate-800 dark:hover:text-emerald-400",
3393
+ onClick: r[0] ||= (t) => n("action", e.value)
3394
+ }, [p(F(De), {
3395
+ class: "h-3.5 w-3.5",
3396
+ "aria-hidden": "true"
3397
+ })], 8, Pa)) : s("", !0)
3398
+ ]));
3399
+ }
3400
+ }), Ia = /* @__PURE__ */ m({
3362
3401
  __name: "BaseDateTimePicker",
3363
3402
  props: {
3364
3403
  modelValue: { default: null },
@@ -3400,7 +3439,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3400
3439
  "onUpdate:modelValue": n[0] ||= (e) => r("update:modelValue", e)
3401
3440
  }, u({ _: 2 }, [A(t.$slots, (e, n) => ({
3402
3441
  name: n,
3403
- fn: L((e) => [j(t.$slots, n, x(_(e ?? {})))])
3442
+ fn: I((e) => [j(t.$slots, n, x(_(e ?? {})))])
3404
3443
  }))]), 1032, [
3405
3444
  "model-value",
3406
3445
  "dark",
@@ -3411,28 +3450,28 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3411
3450
  "teleport"
3412
3451
  ]));
3413
3452
  }
3414
- }), Ma = { class: "flex min-w-0 flex-1 flex-wrap items-center gap-1" }, Na = { class: "truncate" }, Pa = [
3453
+ }), La = { class: "flex min-w-0 flex-1 flex-wrap items-center gap-1" }, Ra = { class: "truncate" }, za = [
3415
3454
  "aria-label",
3416
3455
  "disabled",
3417
3456
  "onClick"
3418
- ], Fa = [
3457
+ ], Ba = [
3419
3458
  "disabled",
3420
3459
  "readonly",
3421
3460
  "aria-label",
3422
3461
  "aria-expanded",
3423
3462
  "aria-activedescendant",
3424
3463
  "placeholder"
3425
- ], Ia = ["aria-multiselectable"], La = [
3464
+ ], Va = ["aria-multiselectable"], Ha = [
3426
3465
  "id",
3427
3466
  "aria-selected",
3428
3467
  "aria-disabled",
3429
3468
  "title",
3430
3469
  "onMouseenter",
3431
3470
  "onClick"
3432
- ], Ra = { class: "truncate" }, za = {
3471
+ ], Ua = { class: "truncate" }, Wa = {
3433
3472
  key: 0,
3434
3473
  class: "px-3 py-2 text-sm text-slate-500 dark:text-slate-400"
3435
- }, Ba = /* @__PURE__ */ m({
3474
+ }, Ga = /* @__PURE__ */ m({
3436
3475
  __name: "BaseSearchSelect",
3437
3476
  props: {
3438
3477
  options: {},
@@ -3471,7 +3510,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3471
3510
  let e = m.value.trim().toLowerCase();
3472
3511
  return e ? r.options.filter((t) => t.label.toLowerCase().includes(e)) : [...r.options];
3473
3512
  });
3474
- I(E, (e) => {
3513
+ se(E, (e) => {
3475
3514
  h.value = e.findIndex((e) => !e.disabled);
3476
3515
  });
3477
3516
  function O(e) {
@@ -3503,20 +3542,20 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3503
3542
  function ie() {
3504
3543
  i("update:modelValue", r.multiple ? [] : null), m.value = "";
3505
3544
  }
3506
- function L(e) {
3545
+ function I(e) {
3507
3546
  let t = E.value;
3508
3547
  if (t.length === 0) return;
3509
3548
  let n = h.value;
3510
3549
  for (let r = 0; r < t.length && (n = (n + e + t.length) % t.length, t[n].disabled); r++);
3511
3550
  h.value = n, y(() => document.getElementById(`${g}-${n}`)?.scrollIntoView?.({ block: "nearest" }));
3512
3551
  }
3513
- function se(e) {
3552
+ function ce(e) {
3514
3553
  switch (e.key) {
3515
3554
  case "ArrowDown":
3516
- e.preventDefault(), f.value ? L(1) : j();
3555
+ e.preventDefault(), f.value ? I(1) : j();
3517
3556
  break;
3518
3557
  case "ArrowUp":
3519
- e.preventDefault(), f.value ? L(-1) : j();
3558
+ e.preventDefault(), f.value ? I(-1) : j();
3520
3559
  break;
3521
3560
  case "Enter":
3522
3561
  f.value && h.value >= 0 && (e.preventDefault(), ne(E.value[h.value]));
@@ -3530,10 +3569,10 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3530
3569
  case "Backspace": r.multiple && m.value === "" && v.value.length && re(v.value[v.value.length - 1]);
3531
3570
  }
3532
3571
  }
3533
- function ce(e) {
3572
+ function le(e) {
3534
3573
  f.value && u.value && !u.value.contains(e.target) && M();
3535
3574
  }
3536
- return w(() => document.addEventListener("mousedown", ce)), C(() => document.removeEventListener("mousedown", ce)), (n, r) => (D(), c("div", {
3575
+ return w(() => document.addEventListener("mousedown", le)), C(() => document.removeEventListener("mousedown", le)), (n, r) => (D(), c("div", {
3537
3576
  ref_key: "rootEl",
3538
3577
  ref: u,
3539
3578
  class: b(t.block ? "relative w-full" : "relative inline-block min-w-48")
@@ -3541,20 +3580,20 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3541
3580
  class: b(["flex min-h-[38px] items-center gap-1.5 rounded-lg border bg-white px-3 py-1.5 text-sm transition-colors dark:bg-slate-900", [f.value ? "border-emerald-500 ring-2 ring-emerald-500/30" : "border-slate-300 hover:border-slate-400 dark:border-slate-600 dark:hover:border-slate-500", t.disabled ? "cursor-not-allowed opacity-60" : "cursor-text"]]),
3542
3581
  onMousedown: N
3543
3582
  }, [
3544
- l("div", Ma, [(D(!0), c(e, null, A(v.value, (e) => R((D(), c("span", {
3583
+ l("div", La, [(D(!0), c(e, null, A(v.value, (e) => L((D(), c("span", {
3545
3584
  key: String(e.value),
3546
3585
  class: "inline-flex max-w-full items-center gap-1 rounded-md bg-emerald-50 py-0.5 pl-2 pr-1 text-xs font-medium text-emerald-700 dark:bg-emerald-500/15 dark:text-emerald-300"
3547
- }, [l("span", Na, P(e.label), 1), l("button", {
3586
+ }, [l("span", Ra, P(e.label), 1), l("button", {
3548
3587
  type: "button",
3549
3588
  class: "rounded p-0.5 hover:bg-emerald-100 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 dark:hover:bg-emerald-500/25",
3550
3589
  "aria-label": `Remove ${e.label}`,
3551
3590
  disabled: t.disabled,
3552
- onMousedown: r[0] ||= z(() => {}, ["stop", "prevent"]),
3553
- onClick: z((t) => re(e), ["stop"])
3554
- }, [p(F(Ae), {
3591
+ onMousedown: r[0] ||= R(() => {}, ["stop", "prevent"]),
3592
+ onClick: R((t) => re(e), ["stop"])
3593
+ }, [p(F(z), {
3555
3594
  class: "h-3 w-3",
3556
3595
  "aria-hidden": "true"
3557
- })], 40, Pa)])), [[oe, t.multiple]])), 128)), R(l("input", {
3596
+ })], 40, za)])), [[oe, t.multiple]])), 128)), L(l("input", {
3558
3597
  ref_key: "inputEl",
3559
3598
  ref: d,
3560
3599
  "onUpdate:modelValue": r[1] ||= (e) => m.value = e,
@@ -3572,20 +3611,20 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3572
3611
  class: b(["min-w-16 flex-1 border-0 bg-transparent p-0 py-0.5 text-sm text-slate-900 outline-none focus:ring-0 dark:text-slate-100 disabled:cursor-not-allowed", S.value ? "placeholder:text-slate-900 dark:placeholder:text-slate-100" : "placeholder:text-slate-400 dark:placeholder:text-slate-500"]),
3573
3612
  onFocus: j,
3574
3613
  onInput: j,
3575
- onKeydown: se
3576
- }, null, 42, Fa), [[ae, m.value]])]),
3614
+ onKeydown: ce
3615
+ }, null, 42, Ba), [[ae, m.value]])]),
3577
3616
  t.clearable && x.value && !t.disabled ? (D(), c("button", {
3578
3617
  key: 0,
3579
3618
  type: "button",
3580
3619
  class: "shrink-0 rounded p-0.5 text-slate-400 hover:text-slate-600 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 dark:hover:text-slate-200",
3581
3620
  "aria-label": "Clear selection",
3582
- onMousedown: r[2] ||= z(() => {}, ["stop", "prevent"]),
3583
- onClick: z(ie, ["stop"])
3584
- }, [p(F(Ae), {
3621
+ onMousedown: r[2] ||= R(() => {}, ["stop", "prevent"]),
3622
+ onClick: R(ie, ["stop"])
3623
+ }, [p(F(z), {
3585
3624
  class: "h-4 w-4",
3586
3625
  "aria-hidden": "true"
3587
3626
  })], 32)) : s("", !0),
3588
- p(F(_e), {
3627
+ p(F(ve), {
3589
3628
  class: b(["h-4 w-4 shrink-0 text-slate-500 transition-transform dark:text-slate-400", f.value ? "rotate-180" : ""]),
3590
3629
  "aria-hidden": "true"
3591
3630
  }, null, 8, ["class"])
@@ -3603,31 +3642,31 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3603
3642
  "aria-disabled": e.disabled || void 0,
3604
3643
  title: e.title,
3605
3644
  class: b(["flex cursor-pointer items-center justify-between gap-2 px-3 py-2 text-left text-sm", ee(e, t)]),
3606
- onMousedown: r[3] ||= z(() => {}, ["prevent"]),
3645
+ onMousedown: r[3] ||= R(() => {}, ["prevent"]),
3607
3646
  onMouseenter: (e) => h.value = t,
3608
3647
  onClick: (t) => ne(e)
3609
- }, [l("span", Ra, P(e.label), 1), O(e) ? (D(), o(F(me), {
3648
+ }, [l("span", Ua, P(e.label), 1), O(e) ? (D(), o(F(he), {
3610
3649
  key: 0,
3611
3650
  class: "h-4 w-4 shrink-0",
3612
3651
  "aria-hidden": "true"
3613
- })) : s("", !0)], 42, La))), 128)), E.value.length === 0 ? (D(), c("li", za, P(t.options.length === 0 ? t.emptyText : t.noResultsText), 1)) : s("", !0)], 8, Ia)) : s("", !0)], 2));
3652
+ })) : s("", !0)], 42, Ha))), 128)), E.value.length === 0 ? (D(), c("li", Wa, P(t.options.length === 0 ? t.emptyText : t.noResultsText), 1)) : s("", !0)], 8, Va)) : s("", !0)], 2));
3614
3653
  }
3615
- }), Va = { class: "rounded-xl border border-slate-200 bg-white text-left shadow-sm dark:border-slate-700 dark:bg-slate-900" }, Ha = {
3654
+ }), Ka = { class: "rounded-xl border border-slate-200 bg-white text-left shadow-sm dark:border-slate-700 dark:bg-slate-900" }, qa = {
3616
3655
  key: 0,
3617
3656
  class: "flex flex-wrap items-center justify-between gap-3 border-b border-slate-200 px-5 py-3 dark:border-slate-700"
3618
- }, Ua = { class: "min-w-0" }, Wa = {
3657
+ }, Ja = { class: "min-w-0" }, Ya = {
3619
3658
  key: 0,
3620
3659
  class: "text-base font-semibold text-slate-900 dark:text-slate-100"
3621
- }, Ga = {
3660
+ }, Xa = {
3622
3661
  key: 1,
3623
3662
  class: "text-sm text-slate-500 dark:text-slate-400"
3624
- }, Ka = {
3663
+ }, Za = {
3625
3664
  key: 0,
3626
3665
  class: "flex items-center gap-2"
3627
- }, qa = {
3666
+ }, Qa = {
3628
3667
  key: 1,
3629
3668
  class: "flex flex-wrap items-center justify-end gap-2 border-t border-slate-200 px-5 py-3 dark:border-slate-700"
3630
- }, Ja = /* @__PURE__ */ m({
3669
+ }, $a = /* @__PURE__ */ m({
3631
3670
  __name: "BaseCard",
3632
3671
  props: {
3633
3672
  title: { default: "" },
@@ -3635,24 +3674,24 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3635
3674
  padding: { default: "md" }
3636
3675
  },
3637
3676
  setup(e) {
3638
- return (t, n) => (D(), c("section", Va, [
3639
- e.title || e.subtitle || t.$slots.actions ? (D(), c("header", Ha, [l("div", Ua, [e.title ? (D(), c("h2", Wa, P(e.title), 1)) : s("", !0), e.subtitle ? (D(), c("p", Ga, P(e.subtitle), 1)) : s("", !0)]), t.$slots.actions ? (D(), c("div", Ka, [j(t.$slots, "actions")])) : s("", !0)])) : s("", !0),
3677
+ return (t, n) => (D(), c("section", Ka, [
3678
+ e.title || e.subtitle || t.$slots.actions ? (D(), c("header", qa, [l("div", Ja, [e.title ? (D(), c("h2", Ya, P(e.title), 1)) : s("", !0), e.subtitle ? (D(), c("p", Xa, P(e.subtitle), 1)) : s("", !0)]), t.$slots.actions ? (D(), c("div", Za, [j(t.$slots, "actions")])) : s("", !0)])) : s("", !0),
3640
3679
  l("div", { class: b(e.padding === "sm" ? "p-4" : e.padding === "none" ? "" : "p-5") }, [j(t.$slots, "default")], 2),
3641
- t.$slots.footer ? (D(), c("footer", qa, [j(t.$slots, "footer")])) : s("", !0)
3680
+ t.$slots.footer ? (D(), c("footer", Qa, [j(t.$slots, "footer")])) : s("", !0)
3642
3681
  ]));
3643
3682
  }
3644
- }), Ya = ["for"], Xa = {
3683
+ }), eo = ["for"], to = {
3645
3684
  key: 0,
3646
3685
  class: "ml-0.5 text-red-500",
3647
3686
  "aria-hidden": "true"
3648
- }, Za = {
3687
+ }, no = {
3649
3688
  key: 1,
3650
3689
  class: "mt-1 text-xs font-medium text-red-600 dark:text-red-400",
3651
3690
  role: "alert"
3652
- }, Qa = {
3691
+ }, ro = {
3653
3692
  key: 2,
3654
3693
  class: "mt-1 text-xs text-slate-500 dark:text-slate-400"
3655
- }, $a = /* @__PURE__ */ m({
3694
+ }, io = /* @__PURE__ */ m({
3656
3695
  __name: "BaseField",
3657
3696
  props: {
3658
3697
  label: { default: "" },
@@ -3678,12 +3717,12 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3678
3717
  key: 0,
3679
3718
  for: e.labelFor || void 0,
3680
3719
  class: b(["mb-1 block", e.compact ? "text-xs uppercase tracking-wide text-slate-500 dark:text-slate-400" : "text-sm font-medium text-slate-700 dark:text-slate-200"])
3681
- }, [f(P(e.label), 1), e.required ? (D(), c("span", Xa, "*")) : s("", !0)], 10, Ya)) : s("", !0),
3720
+ }, [f(P(e.label), 1), e.required ? (D(), c("span", to, "*")) : s("", !0)], 10, eo)) : s("", !0),
3682
3721
  j(t.$slots, "default"),
3683
- e.error ? (D(), c("p", Za, P(e.error), 1)) : e.hint ? (D(), c("p", Qa, P(e.hint), 1)) : s("", !0)
3722
+ e.error ? (D(), c("p", no, P(e.error), 1)) : e.hint ? (D(), c("p", ro, P(e.hint), 1)) : s("", !0)
3684
3723
  ], 2));
3685
3724
  }
3686
- }), eo = { class: "flex items-start justify-between gap-3" }, to = { class: "min-w-0 text-left" }, no = { class: "truncate text-sm font-bold tracking-wide text-gray-800 dark:text-slate-200" }, ro = /* @__PURE__ */ m({
3725
+ }), ao = { class: "flex items-start justify-between gap-3" }, oo = { class: "min-w-0 text-left" }, so = { class: "truncate text-sm font-bold tracking-wide text-gray-800 dark:text-slate-200" }, co = /* @__PURE__ */ m({
3687
3726
  __name: "BaseStatCard",
3688
3727
  props: {
3689
3728
  title: {},
@@ -3731,8 +3770,8 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3731
3770
  }
3732
3771
  }, r = a(() => n[t.accent]);
3733
3772
  return (t, n) => (D(), o(N(e.to ? F(Me) : "div"), v(e.to ? { to: e.to } : {}, { class: ["relative block rounded-xl border-2 border-dashed bg-white p-5 transition-colors dark:bg-slate-800", [r.value.border, e.to ? "hover:bg-slate-50 dark:hover:bg-slate-700/60 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500" : ""]] }), {
3734
- default: L(() => [l("div", eo, [l("div", to, [
3735
- l("p", no, P(e.title), 1),
3773
+ default: I(() => [l("div", ao, [l("div", oo, [
3774
+ l("p", so, P(e.title), 1),
3736
3775
  l("p", { class: b(["mt-1 truncate text-3xl font-bold", r.value.value]) }, P(e.value), 3),
3737
3776
  e.subtitle ? (D(), c("p", {
3738
3777
  key: 0,
@@ -3746,14 +3785,14 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3746
3785
  _: 3
3747
3786
  }, 16, ["class"]));
3748
3787
  }
3749
- }), io = [
3788
+ }), lo = [
3750
3789
  "aria-checked",
3751
3790
  "aria-label",
3752
3791
  "disabled"
3753
- ], ao = {
3792
+ ], uo = {
3754
3793
  key: 0,
3755
3794
  class: "text-sm font-medium text-slate-700 dark:text-slate-200"
3756
- }, oo = /* @__PURE__ */ m({
3795
+ }, fo = /* @__PURE__ */ m({
3757
3796
  __name: "BaseToggle",
3758
3797
  props: {
3759
3798
  modelValue: {
@@ -3793,12 +3832,12 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3793
3832
  }, [l("span", {
3794
3833
  class: b(["inline-block h-5 w-5 rounded-full bg-white shadow ring-1 ring-black/5 transition-transform", e.modelValue ? "translate-x-[22px]" : "translate-x-0.5"]),
3795
3834
  "aria-hidden": "true"
3796
- }, null, 2)], 10, io), e.label ? (D(), c("span", ao, P(e.label), 1)) : s("", !0)], 2));
3835
+ }, null, 2)], 10, lo), e.label ? (D(), c("span", uo, P(e.label), 1)) : s("", !0)], 2));
3797
3836
  }
3798
- }), so = ["checked", "disabled"], co = {
3837
+ }), po = ["checked", "disabled"], mo = {
3799
3838
  key: 0,
3800
3839
  class: "text-sm text-slate-700 dark:text-slate-200"
3801
- }, lo = /* @__PURE__ */ m({
3840
+ }, ho = /* @__PURE__ */ m({
3802
3841
  inheritAttrs: !1,
3803
3842
  __name: "BaseCheckbox",
3804
3843
  props: {
@@ -3825,15 +3864,15 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3825
3864
  disabled: e.disabled,
3826
3865
  class: "h-5 w-5 shrink-0 cursor-[inherit] rounded-md border-slate-300 bg-white text-emerald-600 accent-emerald-600 transition-colors focus:ring-2 focus:ring-emerald-500/40 focus:ring-offset-0 dark:border-slate-600 dark:bg-slate-900 dark:checked:bg-emerald-600",
3827
3866
  onChange: r
3828
- }), null, 16, so), e.label || t.$slots.default ? (D(), c("span", co, [j(t.$slots, "default", {}, () => [f(P(e.label), 1)])])) : s("", !0)], 2));
3867
+ }), null, 16, po), e.label || t.$slots.default ? (D(), c("span", mo, [j(t.$slots, "default", {}, () => [f(P(e.label), 1)])])) : s("", !0)], 2));
3829
3868
  }
3830
- }), uo = { class: "flex flex-col gap-2 text-left" }, fo = {
3869
+ }), go = { class: "flex flex-col gap-2 text-left" }, _o = {
3831
3870
  class: "flex h-9 w-9 shrink-0 items-center justify-center rounded-full bg-emerald-100 text-sm font-semibold text-emerald-700 dark:bg-emerald-500/15 dark:text-emerald-300",
3832
3871
  "aria-hidden": "true"
3833
- }, po = { class: "min-w-0" }, mo = { class: "block truncate text-sm font-medium text-slate-900 dark:text-slate-100" }, ho = {
3872
+ }, vo = { class: "min-w-0" }, yo = { class: "block truncate text-sm font-medium text-slate-900 dark:text-slate-100" }, bo = {
3834
3873
  key: 0,
3835
3874
  class: "block truncate text-xs text-slate-500 dark:text-slate-400"
3836
- }, go = /* @__PURE__ */ m({
3875
+ }, xo = /* @__PURE__ */ m({
3837
3876
  __name: "BaseSidebarUser",
3838
3877
  props: {
3839
3878
  name: {},
@@ -3849,13 +3888,13 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3849
3888
  emits: ["logout"],
3850
3889
  setup(e, { emit: t }) {
3851
3890
  let n = e, r = t, i = a(() => (n.name || "?").split(/[\s._-]+/).filter(Boolean).slice(0, 2).map((e) => e[0].toUpperCase()).join(""));
3852
- return (t, n) => (D(), c("div", uo, [(D(), o(N(e.to ? F(Me) : "div"), v(e.to ? { to: e.to } : {}, {
3891
+ return (t, n) => (D(), c("div", go, [(D(), o(N(e.to ? F(Me) : "div"), v(e.to ? { to: e.to } : {}, {
3853
3892
  class: ["flex items-center gap-3 rounded-lg p-2 transition-colors", e.to ? "hover:bg-slate-100 dark:hover:bg-slate-800 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500" : ""],
3854
3893
  title: e.to ? e.profileLabel : void 0
3855
3894
  }), {
3856
- default: L(() => [l("span", fo, P(i.value), 1), l("span", po, [l("span", mo, P(e.name), 1), e.email ? (D(), c("span", ho, P(e.email), 1)) : s("", !0)])]),
3895
+ default: I(() => [l("span", _o, P(i.value), 1), l("span", vo, [l("span", yo, P(e.name), 1), e.email ? (D(), c("span", bo, P(e.email), 1)) : s("", !0)])]),
3857
3896
  _: 1
3858
- }, 16, ["class", "title"])), e.showLogout ? (D(), o(it, {
3897
+ }, 16, ["class", "title"])), e.showLogout ? (D(), o(q, {
3859
3898
  key: 0,
3860
3899
  class: "w-full justify-center",
3861
3900
  description: e.logoutLabel,
@@ -3865,7 +3904,7 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3865
3904
  "icon-left": "",
3866
3905
  onClick: n[0] ||= (e) => r("logout")
3867
3906
  }, {
3868
- default: L(() => [p(F(le), {
3907
+ default: I(() => [p(F(ue), {
3869
3908
  class: "mr-1.5 h-4 w-4",
3870
3909
  "aria-hidden": "true"
3871
3910
  })]),
@@ -3876,16 +3915,16 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3876
3915
  "size"
3877
3916
  ])) : s("", !0)]));
3878
3917
  }
3879
- }), _o = { class: "flex min-h-screen w-full flex-col items-center justify-center bg-slate-50 px-4 py-10 dark:bg-slate-950" }, vo = { class: "mb-6 flex justify-center" }, yo = {
3918
+ }), So = { class: "flex min-h-screen w-full flex-col items-center justify-center bg-slate-50 px-4 py-10 dark:bg-slate-950" }, Co = { class: "mb-6 flex justify-center" }, wo = {
3880
3919
  key: 0,
3881
3920
  class: "mb-1 text-2xl font-bold tracking-tight text-slate-900 dark:text-slate-100"
3882
- }, bo = {
3921
+ }, To = {
3883
3922
  key: 1,
3884
3923
  class: "text-sm text-slate-500 dark:text-slate-400"
3885
- }, xo = {
3924
+ }, Eo = {
3886
3925
  key: 2,
3887
3926
  class: "mt-6 border-t border-slate-200 pt-4 text-center text-sm text-slate-500 dark:border-slate-700 dark:text-slate-400"
3888
- }, So = /* @__PURE__ */ m({
3927
+ }, Do = /* @__PURE__ */ m({
3889
3928
  __name: "BaseAuthLayout",
3890
3929
  props: {
3891
3930
  title: { default: "" },
@@ -3896,17 +3935,17 @@ var Kn = ["aria-label", "aria-expanded"], qn = { class: "flex flex-col h-full" }
3896
3935
  }
3897
3936
  },
3898
3937
  setup(e) {
3899
- return (t, n) => (D(), c("div", _o, [l("div", vo, [j(t.$slots, "logo", {}, () => [p(Nt, { size: F(q).MEDIUM }, null, 8, ["size"])])]), l("div", { class: b(["w-full rounded-xl border border-slate-200 bg-white p-6 text-left shadow-sm sm:p-8 dark:border-slate-700 dark:bg-slate-900", e.wide ? "max-w-3xl" : "max-w-md"]) }, [
3900
- e.title ? (D(), c("h1", yo, P(e.title), 1)) : s("", !0),
3901
- e.subtitle ? (D(), c("p", bo, P(e.subtitle), 1)) : s("", !0),
3938
+ return (t, n) => (D(), c("div", So, [l("div", Co, [j(t.$slots, "logo", {}, () => [p(Mt, { size: F(J).MEDIUM }, null, 8, ["size"])])]), l("div", { class: b(["w-full rounded-xl border border-slate-200 bg-white p-6 text-left shadow-sm sm:p-8 dark:border-slate-700 dark:bg-slate-900", e.wide ? "max-w-3xl" : "max-w-md"]) }, [
3939
+ e.title ? (D(), c("h1", wo, P(e.title), 1)) : s("", !0),
3940
+ e.subtitle ? (D(), c("p", To, P(e.subtitle), 1)) : s("", !0),
3902
3941
  l("div", { class: b(e.title || e.subtitle ? "mt-6" : "") }, [j(t.$slots, "default")], 2),
3903
- t.$slots.footer ? (D(), c("div", xo, [j(t.$slots, "footer")])) : s("", !0)
3942
+ t.$slots.footer ? (D(), c("div", Eo, [j(t.$slots, "footer")])) : s("", !0)
3904
3943
  ], 2)]));
3905
3944
  }
3906
3945
  });
3907
3946
  //#endregion
3908
3947
  //#region node_modules/@heroicons/vue/20/solid/esm/CheckCircleIcon.js
3909
- function Co(e, t) {
3948
+ function Oo(e, t) {
3910
3949
  return D(), c("svg", {
3911
3950
  xmlns: "http://www.w3.org/2000/svg",
3912
3951
  viewBox: "0 0 20 20",
@@ -3921,7 +3960,7 @@ function Co(e, t) {
3921
3960
  }
3922
3961
  //#endregion
3923
3962
  //#region node_modules/@heroicons/vue/20/solid/esm/XCircleIcon.js
3924
- function wo(e, t) {
3963
+ function ko(e, t) {
3925
3964
  return D(), c("svg", {
3926
3965
  xmlns: "http://www.w3.org/2000/svg",
3927
3966
  viewBox: "0 0 20 20",
@@ -3936,7 +3975,7 @@ function wo(e, t) {
3936
3975
  }
3937
3976
  //#endregion
3938
3977
  //#region src/components/BaseBooleanBadge.vue
3939
- var To = /* @__PURE__ */ m({
3978
+ var Ao = /* @__PURE__ */ m({
3940
3979
  __name: "BaseBooleanBadge",
3941
3980
  props: {
3942
3981
  value: {
@@ -3947,20 +3986,20 @@ var To = /* @__PURE__ */ m({
3947
3986
  falseLabel: { default: "No" }
3948
3987
  },
3949
3988
  setup(e) {
3950
- return (t, n) => (D(), c("span", { class: b(["inline-flex items-center gap-1 rounded-full px-2.5 py-0.5 text-xs font-medium ring-1 ring-inset", e.value ? "bg-emerald-50 text-emerald-700 ring-emerald-600/20 dark:bg-emerald-500/10 dark:text-emerald-300 dark:ring-emerald-400/30" : "bg-red-50 text-red-700 ring-red-600/20 dark:bg-red-500/10 dark:text-red-300 dark:ring-red-400/30"]) }, [e.value ? (D(), o(F(Co), {
3989
+ return (t, n) => (D(), c("span", { class: b(["inline-flex items-center gap-1 rounded-full px-2.5 py-0.5 text-xs font-medium ring-1 ring-inset", e.value ? "bg-emerald-50 text-emerald-700 ring-emerald-600/20 dark:bg-emerald-500/10 dark:text-emerald-300 dark:ring-emerald-400/30" : "bg-red-50 text-red-700 ring-red-600/20 dark:bg-red-500/10 dark:text-red-300 dark:ring-red-400/30"]) }, [e.value ? (D(), o(F(Oo), {
3951
3990
  key: 0,
3952
3991
  class: "h-3.5 w-3.5",
3953
3992
  "aria-hidden": "true"
3954
- })) : (D(), o(F(wo), {
3993
+ })) : (D(), o(F(ko), {
3955
3994
  key: 1,
3956
3995
  class: "h-3.5 w-3.5",
3957
3996
  "aria-hidden": "true"
3958
3997
  })), f(" " + P(e.value ? e.trueLabel : e.falseLabel), 1)], 2));
3959
3998
  }
3960
- }), Eo = { class: "text-xs uppercase tracking-wide text-slate-500 dark:text-slate-400" }, Do = ["href"], Oo = {
3999
+ }), jo = { class: "text-xs uppercase tracking-wide text-slate-500 dark:text-slate-400" }, Mo = ["href"], No = {
3961
4000
  key: 1,
3962
4001
  class: "text-slate-400 dark:text-slate-500"
3963
- }, ko = /* @__PURE__ */ m({
4002
+ }, Po = /* @__PURE__ */ m({
3964
4003
  __name: "BaseDetailList",
3965
4004
  props: {
3966
4005
  items: {},
@@ -3974,20 +4013,20 @@ var To = /* @__PURE__ */ m({
3974
4013
  return (r, i) => (D(), c("dl", { class: b(["grid grid-cols-[minmax(0,1fr)] gap-x-6 gap-y-4 text-left", t.columns === 2 ? "sm:grid-cols-[repeat(2,minmax(0,1fr))]" : t.columns === 3 ? "sm:grid-cols-[repeat(2,minmax(0,1fr))] lg:grid-cols-[repeat(3,minmax(0,1fr))]" : ""]) }, [(D(!0), c(e, null, A(t.items, (r) => (D(), c("div", {
3975
4014
  key: r.label,
3976
4015
  class: "min-w-0"
3977
- }, [l("dt", Eo, P(r.label), 1), l("dd", { class: b(["mt-1 break-words text-sm text-slate-900 dark:text-slate-100", r.mono ? "font-mono" : ""]) }, [r.href && !n(r.value) ? (D(), c("a", {
4016
+ }, [l("dt", jo, P(r.label), 1), l("dd", { class: b(["mt-1 break-words text-sm text-slate-900 dark:text-slate-100", r.mono ? "font-mono" : ""]) }, [r.href && !n(r.value) ? (D(), c("a", {
3978
4017
  key: 0,
3979
4018
  href: r.href,
3980
4019
  target: "_blank",
3981
4020
  rel: "noopener noreferrer",
3982
4021
  class: "text-emerald-600 hover:underline dark:text-emerald-400"
3983
- }, P(r.value), 9, Do)) : n(r.value) ? (D(), c("span", Oo, P(t.emptyText), 1)) : (D(), c(e, { key: 2 }, [f(P(r.value), 1)], 64))], 2)]))), 128))], 2));
4022
+ }, P(r.value), 9, Mo)) : n(r.value) ? (D(), c("span", No, P(t.emptyText), 1)) : (D(), c(e, { key: 2 }, [f(P(r.value), 1)], 64))], 2)]))), 128))], 2));
3984
4023
  }
3985
4024
  });
3986
4025
  //#endregion
3987
4026
  //#region src/composables/useDebounce.ts
3988
- function Ao(e, t = 300) {
4027
+ function Fo(e, t = 300) {
3989
4028
  let n = k(e.value), r = null;
3990
- return I(e, (e) => {
4029
+ return se(e, (e) => {
3991
4030
  r && clearTimeout(r), r = setTimeout(() => {
3992
4031
  n.value = e, r = null;
3993
4032
  }, t);
@@ -3997,12 +4036,12 @@ function Ao(e, t = 300) {
3997
4036
  }
3998
4037
  //#endregion
3999
4038
  //#region src/composables/useToast.ts
4000
- function jo(e = 3e3) {
4001
- let t = k(!1), n = k(""), r = k(J.SUCCESS), i = null;
4039
+ function Io(e = 3e3) {
4040
+ let t = k(!1), n = k(""), r = k(Y.SUCCESS), i = null;
4002
4041
  function a() {
4003
4042
  i &&= (clearTimeout(i), null);
4004
4043
  }
4005
- function o(o, s = J.SUCCESS, c = e) {
4044
+ function o(o, s = Y.SUCCESS, c = e) {
4006
4045
  n.value = o, r.value = s, t.value = !0, a(), i = setTimeout(() => {
4007
4046
  t.value = !1, i = null;
4008
4047
  }, c);
@@ -4018,7 +4057,7 @@ function jo(e = 3e3) {
4018
4057
  }
4019
4058
  //#endregion
4020
4059
  //#region src/composables/useQueryParamSync.ts
4021
- function Mo() {
4060
+ function Lo() {
4022
4061
  let e = Ne(), t = Pe();
4023
4062
  function n(t) {
4024
4063
  let n = e.query[t];
@@ -4040,7 +4079,7 @@ function Mo() {
4040
4079
  }
4041
4080
  //#endregion
4042
4081
  //#region src/composables/useFieldClasses.ts
4043
- function No() {
4082
+ function Ro() {
4044
4083
  let { isDark: e } = U(), t = a(() => e.value ? "text-gray-300" : "text-gray-600"), n = a(() => e.value ? "bg-gray-800 border-gray-600 text-gray-100 placeholder-gray-500 focus:ring-emerald-500 focus:border-emerald-500" : "bg-white border-gray-300 text-gray-800 focus:ring-emerald-500 focus:border-emerald-500");
4045
4084
  function r(t) {
4046
4085
  return t == null || String(t).trim() === "" ? e.value ? "bg-gray-800 border-red-500 text-gray-100 placeholder-gray-500 focus:ring-red-500 focus:border-red-500 ring-1 ring-red-500/30" : "bg-white border-red-400 text-gray-800 focus:ring-red-500 focus:border-red-500 ring-1 ring-red-400/30" : n.value;
@@ -4053,7 +4092,7 @@ function No() {
4053
4092
  }
4054
4093
  //#endregion
4055
4094
  //#region src/composables/usePolling.ts
4056
- function Po(e, t, n = {}) {
4095
+ function zo(e, t, n = {}) {
4057
4096
  let { immediate: r = !0, pauseWhenHidden: i = !0 } = n, a = null, o = k(!1), s = !1;
4058
4097
  function c() {
4059
4098
  a === null && t !== null && (a = setInterval(() => void e(), t));
@@ -4088,7 +4127,7 @@ function Po(e, t, n = {}) {
4088
4127
  }
4089
4128
  //#endregion
4090
4129
  //#region src/composables/useLatestRequest.ts
4091
- function Fo() {
4130
+ function Bo() {
4092
4131
  let e = 0, t = null;
4093
4132
  function n() {
4094
4133
  let n = ++e;
@@ -4107,12 +4146,12 @@ function Fo() {
4107
4146
  cancel: r
4108
4147
  };
4109
4148
  }
4110
- function Io(e) {
4149
+ function Vo(e) {
4111
4150
  return typeof DOMException < "u" && e instanceof DOMException && e.name === "AbortError" || e instanceof Error && e.name === "AbortError";
4112
4151
  }
4113
4152
  //#endregion
4114
4153
  //#region src/composables/useDirtyState.ts
4115
- function Lo(e) {
4154
+ function Ho(e) {
4116
4155
  return JSON.stringify(e, (e, t) => {
4117
4156
  if (typeof t == "object" && t && !Array.isArray(t)) {
4118
4157
  let e = {};
@@ -4122,10 +4161,10 @@ function Lo(e) {
4122
4161
  return t;
4123
4162
  });
4124
4163
  }
4125
- function Ro(e) {
4126
- let t = k(Lo(e())), n = a(() => Lo(e()) !== t.value);
4164
+ function Uo(e) {
4165
+ let t = k(Ho(e())), n = a(() => Ho(e()) !== t.value);
4127
4166
  function r() {
4128
- t.value = Lo(e());
4167
+ t.value = Ho(e());
4129
4168
  }
4130
4169
  return {
4131
4170
  dirty: n,
@@ -4134,12 +4173,12 @@ function Ro(e) {
4134
4173
  }
4135
4174
  //#endregion
4136
4175
  //#region src/enums/BaseBadgeEnum.ts
4137
- var zo = /* @__PURE__ */ function(e) {
4176
+ var Wo = /* @__PURE__ */ function(e) {
4138
4177
  return e.WIN = "WIN", e.LOSE = "LOSE", e;
4139
4178
  }({});
4140
4179
  //#endregion
4141
4180
  //#region src/utils/util.ts
4142
- function Bo(e) {
4181
+ function Go(e) {
4143
4182
  let t = "red";
4144
4183
  switch (e) {
4145
4184
  case B.ERROR:
@@ -4155,7 +4194,7 @@ function Bo(e) {
4155
4194
  }
4156
4195
  return t;
4157
4196
  }
4158
- function Vo(e) {
4197
+ function Ko(e) {
4159
4198
  let t = "red";
4160
4199
  switch (e) {
4161
4200
  case W.GREEN:
@@ -4182,14 +4221,14 @@ function Vo(e) {
4182
4221
  }
4183
4222
  //#endregion
4184
4223
  //#region src/utils/httpColors.ts
4185
- var Ho = {
4224
+ var qo = {
4186
4225
  GET: "bg-blue-600",
4187
4226
  POST: "bg-emerald-600",
4188
4227
  PUT: "bg-amber-600",
4189
4228
  DELETE: "bg-red-600",
4190
4229
  PATCH: "bg-purple-600",
4191
4230
  HEAD: "bg-gray-600"
4192
- }, Uo = {
4231
+ }, Jo = {
4193
4232
  GET: "bg-blue-500",
4194
4233
  POST: "bg-green-500",
4195
4234
  PUT: "bg-yellow-500",
@@ -4197,39 +4236,39 @@ var Ho = {
4197
4236
  PATCH: "bg-purple-500",
4198
4237
  HEAD: "bg-gray-500"
4199
4238
  };
4200
- function Wo(e) {
4201
- return e ? Ho[e.toUpperCase()] ?? "bg-gray-600" : "bg-gray-600";
4239
+ function Yo(e) {
4240
+ return e ? qo[e.toUpperCase()] ?? "bg-gray-600" : "bg-gray-600";
4202
4241
  }
4203
- function Go(e) {
4204
- return e ? Uo[e.toUpperCase()] ?? "bg-gray-500" : "bg-gray-500";
4242
+ function Xo(e) {
4243
+ return e ? Jo[e.toUpperCase()] ?? "bg-gray-500" : "bg-gray-500";
4205
4244
  }
4206
- function Ko(e) {
4245
+ function Zo(e) {
4207
4246
  let t = e ?? 0;
4208
4247
  return t >= 200 && t < 300 ? "bg-emerald-600" : t >= 300 && t < 400 ? "bg-blue-600" : t >= 400 && t < 500 ? "bg-amber-600" : t >= 500 ? "bg-red-600" : "bg-gray-600";
4209
4248
  }
4210
- function qo(e, t) {
4249
+ function Qo(e, t) {
4211
4250
  let n = (e || "ANY").toUpperCase();
4212
4251
  return n === "GET" ? t ? "bg-blue-500/15 text-blue-400" : "bg-blue-100 text-blue-700" : n === "POST" ? t ? "bg-emerald-500/15 text-emerald-400" : "bg-emerald-100 text-emerald-700" : n === "PUT" ? t ? "bg-amber-500/15 text-amber-400" : "bg-amber-100 text-amber-700" : n === "DELETE" ? t ? "bg-red-500/15 text-red-400" : "bg-red-100 text-red-700" : n === "PATCH" ? t ? "bg-purple-500/15 text-purple-400" : "bg-purple-100 text-purple-700" : n === "HEAD" ? t ? "bg-sky-500/15 text-sky-400" : "bg-sky-100 text-sky-700" : t ? "bg-gray-500/15 text-gray-400" : "bg-gray-100 text-gray-600";
4213
4252
  }
4214
- function Jo(e, t) {
4253
+ function $o(e, t) {
4215
4254
  let n = e ?? 200;
4216
4255
  return n >= 200 && n < 300 ? t ? "bg-emerald-500/15 text-emerald-300" : "bg-emerald-100 text-emerald-700" : n >= 300 && n < 400 ? t ? "bg-sky-500/15 text-sky-300" : "bg-sky-100 text-sky-700" : n >= 400 && n < 500 ? t ? "bg-amber-500/15 text-amber-300" : "bg-amber-100 text-amber-700" : n >= 500 && n < 600 ? t ? "bg-red-500/15 text-red-300" : "bg-red-100 text-red-700" : t ? "bg-gray-800 text-gray-400" : "bg-gray-100 text-gray-600";
4217
4256
  }
4218
- function Yo(e, t) {
4257
+ function es(e, t) {
4219
4258
  let n = e ?? 200;
4220
4259
  return t ? n >= 200 && n < 300 ? "bg-green-500/15 text-green-400" : n >= 300 && n < 400 ? "bg-blue-500/15 text-blue-400" : n >= 400 && n < 500 ? "bg-yellow-500/15 text-yellow-400" : "bg-red-500/15 text-red-400" : n >= 200 && n < 300 ? "bg-green-100 text-green-800" : n >= 300 && n < 400 ? "bg-blue-100 text-blue-800" : n >= 400 && n < 500 ? "bg-yellow-100 text-yellow-800" : "bg-red-100 text-red-800";
4221
4260
  }
4222
4261
  //#endregion
4223
4262
  //#region src/utils/kvRows.ts
4224
- function Xo(e) {
4263
+ function ts(e) {
4225
4264
  return !(e.key ?? "").trim() || e.matcherType === "absent" ? !1 : !(e.value ?? "").trim();
4226
4265
  }
4227
- function Zo(e) {
4266
+ function ns(e) {
4228
4267
  return e.matcherType === "absent" || !(e.value ?? "").trim() ? !1 : !(e.key ?? "").trim();
4229
4268
  }
4230
4269
  //#endregion
4231
4270
  //#region src/utils/sanitizeHtml.ts
4232
- var Qo = /* @__PURE__ */ new Set([
4271
+ var rs = /* @__PURE__ */ new Set([
4233
4272
  "A",
4234
4273
  "B",
4235
4274
  "STRONG",
@@ -4244,7 +4283,7 @@ var Qo = /* @__PURE__ */ new Set([
4244
4283
  "LI",
4245
4284
  "SPAN",
4246
4285
  "DIV"
4247
- ]), $o = /* @__PURE__ */ new Set([
4286
+ ]), is = /* @__PURE__ */ new Set([
4248
4287
  "SCRIPT",
4249
4288
  "STYLE",
4250
4289
  "IFRAME",
@@ -4252,40 +4291,40 @@ var Qo = /* @__PURE__ */ new Set([
4252
4291
  "EMBED",
4253
4292
  "NOSCRIPT",
4254
4293
  "TEMPLATE"
4255
- ]), es = { A: /* @__PURE__ */ new Set(["href", "title"]) };
4256
- function ts(e) {
4294
+ ]), as = { A: /* @__PURE__ */ new Set(["href", "title"]) };
4295
+ function os(e) {
4257
4296
  let t = e.trim().toLowerCase();
4258
4297
  return t.startsWith("http://") || t.startsWith("https://") || t.startsWith("mailto:") || t.startsWith("tel:") || t.startsWith("/") || t.startsWith("#") || t === "";
4259
4298
  }
4260
- function ns(e) {
4299
+ function ss(e) {
4261
4300
  if (e.nodeType !== Node.ELEMENT_NODE) return;
4262
4301
  let t = e, n = t.tagName.toUpperCase();
4263
- if (!Qo.has(n)) {
4264
- $o.has(n) ? t.remove() : t.replaceWith(document.createTextNode(t.textContent ?? ""));
4302
+ if (!rs.has(n)) {
4303
+ is.has(n) ? t.remove() : t.replaceWith(document.createTextNode(t.textContent ?? ""));
4265
4304
  return;
4266
4305
  }
4267
- let r = es[n] ?? /* @__PURE__ */ new Set();
4306
+ let r = as[n] ?? /* @__PURE__ */ new Set();
4268
4307
  for (let e of Array.from(t.attributes)) {
4269
4308
  if (!r.has(e.name.toLowerCase())) {
4270
4309
  t.removeAttribute(e.name);
4271
4310
  continue;
4272
4311
  }
4273
- n === "A" && e.name.toLowerCase() === "href" && !ts(e.value) && t.removeAttribute(e.name);
4312
+ n === "A" && e.name.toLowerCase() === "href" && !os(e.value) && t.removeAttribute(e.name);
4274
4313
  }
4275
4314
  n === "A" && t.hasAttribute("href") && (t.setAttribute("rel", "noopener noreferrer"), t.setAttribute("target", "_blank"));
4276
- for (let e of Array.from(t.childNodes)) ns(e);
4315
+ for (let e of Array.from(t.childNodes)) ss(e);
4277
4316
  }
4278
- function rs(e) {
4317
+ function cs(e) {
4279
4318
  if (!e) return "";
4280
4319
  let t = new DOMParser().parseFromString(`<div>${e}</div>`, "text/html").body.firstElementChild;
4281
4320
  if (!t) return "";
4282
- for (let e of Array.from(t.childNodes)) ns(e);
4321
+ for (let e of Array.from(t.childNodes)) ss(e);
4283
4322
  return t.innerHTML;
4284
4323
  }
4285
4324
  //#endregion
4286
4325
  //#region src/utils/format.ts
4287
4326
  var $ = "—";
4288
- function is(e, t = 4) {
4327
+ function ls(e, t = 4) {
4289
4328
  if (e == null || typeof e == "string" && e.trim() === "") return $;
4290
4329
  let n = typeof e == "string" ? Number(e) : e;
4291
4330
  return isFinite(n) ? n.toLocaleString(void 0, {
@@ -4293,12 +4332,12 @@ function is(e, t = 4) {
4293
4332
  maximumFractionDigits: t
4294
4333
  }) : $;
4295
4334
  }
4296
- function as(e) {
4335
+ function us(e) {
4297
4336
  if (e == null || e === "") return $;
4298
4337
  let t = new Date(e);
4299
4338
  return isNaN(t.getTime()) ? String(e) : t.toLocaleString();
4300
4339
  }
4301
- function os(e) {
4340
+ function ds(e) {
4302
4341
  return new Date(e).toLocaleString(void 0, {
4303
4342
  month: "short",
4304
4343
  day: "numeric",
@@ -4306,13 +4345,13 @@ function os(e) {
4306
4345
  minute: "2-digit"
4307
4346
  });
4308
4347
  }
4309
- function ss(e) {
4348
+ function fs(e) {
4310
4349
  return new Date(e).toLocaleDateString(void 0, {
4311
4350
  month: "short",
4312
4351
  day: "numeric"
4313
4352
  });
4314
4353
  }
4315
- function cs(e) {
4354
+ function ps(e) {
4316
4355
  try {
4317
4356
  return new Date(e).toLocaleString(void 0, {
4318
4357
  year: "numeric",
@@ -4328,7 +4367,7 @@ function cs(e) {
4328
4367
  return String(e);
4329
4368
  }
4330
4369
  }
4331
- function ls(e) {
4370
+ function ms(e) {
4332
4371
  if (!isFinite(e) || e === 0) return e.toFixed(2);
4333
4372
  let t = Math.abs(e), n = 2;
4334
4373
  return t < 1e-4 ? n = 8 : t < .01 ? n = 6 : t < 1 ? n = 4 : t < 100 && (n = 3), e.toLocaleString(void 0, {
@@ -4336,13 +4375,13 @@ function ls(e) {
4336
4375
  maximumFractionDigits: n
4337
4376
  });
4338
4377
  }
4339
- function us(e, t = 2) {
4378
+ function hs(e, t = 2) {
4340
4379
  return `${e >= 0 ? "+" : ""}${e.toFixed(t)}%`;
4341
4380
  }
4342
- function ds(e) {
4381
+ function gs(e) {
4343
4382
  return `${e < 0 ? "-" : "+"}$${Math.abs(e).toFixed(2)}`;
4344
4383
  }
4345
- function fs(e, t = 2, n = "$") {
4384
+ function _s(e, t = 2, n = "$") {
4346
4385
  if (e == null || typeof e == "string" && e.trim() === "") return $;
4347
4386
  let r = typeof e == "string" ? Number(e) : e;
4348
4387
  if (!isFinite(r)) return $;
@@ -4352,7 +4391,29 @@ function fs(e, t = 2, n = "$") {
4352
4391
  });
4353
4392
  return `${r < 0 && Number(Math.abs(r).toFixed(t)) !== 0 ? "-" : ""}${n}${i}`;
4354
4393
  }
4355
- function ps(e) {
4394
+ var vs = {
4395
+ EUR: "€",
4396
+ GBP: "£"
4397
+ }, ys = /* @__PURE__ */ new Set([
4398
+ "USD",
4399
+ "USDT",
4400
+ "USDC"
4401
+ ]);
4402
+ function bs(e) {
4403
+ let t = (e ?? "").trim().toUpperCase();
4404
+ return !t || ys.has(t) ? "$" : vs[t] ?? null;
4405
+ }
4406
+ function xs(e, t, n = 2) {
4407
+ let r = (t ?? "").trim().toUpperCase(), i = bs(r);
4408
+ if (i !== null) {
4409
+ let t = _s(e, n, i);
4410
+ return r && r !== "USD" && ys.has(r) && t !== $ ? `${t} ${r}` : t;
4411
+ }
4412
+ if (e == null || typeof e == "string" && e.trim() === "") return $;
4413
+ let a = typeof e == "string" ? Number(e) : e;
4414
+ return isFinite(a) ? `${a.toLocaleString(void 0, { maximumFractionDigits: 8 })} ${r}` : $;
4415
+ }
4416
+ function Ss(e) {
4356
4417
  if (e == null || e === "") return $;
4357
4418
  let t = new Date(e);
4358
4419
  return isNaN(t.getTime()) ? String(e) : t.toLocaleDateString("en-US", {
@@ -4361,7 +4422,7 @@ function ps(e) {
4361
4422
  day: "numeric"
4362
4423
  });
4363
4424
  }
4364
- function ms(e) {
4425
+ function Cs(e) {
4365
4426
  if (e == null || e === "") return $;
4366
4427
  let t = new Date(e);
4367
4428
  return isNaN(t.getTime()) ? String(e) : t.toLocaleDateString("en-US", {
@@ -4372,22 +4433,22 @@ function ms(e) {
4372
4433
  minute: "2-digit"
4373
4434
  });
4374
4435
  }
4375
- function hs(e) {
4436
+ function ws(e) {
4376
4437
  if (typeof e != "number" || !isFinite(e) || e <= 0) return "";
4377
4438
  let t = e / 1e3, n = t < 1 ? 3 : 2;
4378
4439
  return `= ${t.toFixed(n)} s`;
4379
4440
  }
4380
- function gs(e) {
4441
+ function Ts(e) {
4381
4442
  return e ? e < 1024 ? `${e} B` : e < 1048576 ? `${(e / 1024).toFixed(1)} KB` : `${(e / 1048576).toFixed(1)} MB` : "";
4382
4443
  }
4383
- function _s(e) {
4444
+ function Es(e) {
4384
4445
  try {
4385
4446
  return JSON.stringify(JSON.parse(e), null, 2);
4386
4447
  } catch {
4387
4448
  return e;
4388
4449
  }
4389
4450
  }
4390
- function vs(e) {
4451
+ function Ds(e) {
4391
4452
  if (e == null) return "";
4392
4453
  if (typeof e == "string") return e;
4393
4454
  try {
@@ -4396,14 +4457,14 @@ function vs(e) {
4396
4457
  return String(e);
4397
4458
  }
4398
4459
  }
4399
- function ys(e, t = 2) {
4460
+ function Os(e, t = 2) {
4400
4461
  if (e == null || !isFinite(e)) return $;
4401
4462
  let n = Math.floor(Math.max(0, e) / 6e4), r = Math.floor(n / 1440), i = Math.floor(n % 1440 / 60), a = n % 60, o = [];
4402
4463
  return r > 0 && o.push(`${r}d`), (r > 0 || i > 0) && o.push(`${i}h`), o.push(`${a}m`), o.slice(0, t).join(" ");
4403
4464
  }
4404
4465
  //#endregion
4405
4466
  //#region src/utils/validate.ts
4406
- function bs(e) {
4467
+ function ks(e) {
4407
4468
  let t = (e ?? "").trim();
4408
4469
  if (!t) return !1;
4409
4470
  try {
@@ -4413,7 +4474,7 @@ function bs(e) {
4413
4474
  return !1;
4414
4475
  }
4415
4476
  }
4416
- function xs(e) {
4477
+ function As(e) {
4417
4478
  if (!e.trim()) return !0;
4418
4479
  try {
4419
4480
  return JSON.parse(e), !0;
@@ -4421,7 +4482,7 @@ function xs(e) {
4421
4482
  return !1;
4422
4483
  }
4423
4484
  }
4424
- function Ss(e) {
4485
+ function js(e) {
4425
4486
  if (!e.trim()) return !0;
4426
4487
  try {
4427
4488
  return !new DOMParser().parseFromString(e, "application/xml").getElementsByTagName("parsererror").length;
@@ -4429,7 +4490,7 @@ function Ss(e) {
4429
4490
  return !1;
4430
4491
  }
4431
4492
  }
4432
- function Cs(e) {
4493
+ function Ms(e) {
4433
4494
  if (!e.trim()) return !0;
4434
4495
  let t = e.replace(/\s+/g, "");
4435
4496
  if (!t) return !0;
@@ -4442,7 +4503,7 @@ function Cs(e) {
4442
4503
  }
4443
4504
  //#endregion
4444
4505
  //#region src/utils/specForm.ts
4445
- function ws(e, t) {
4506
+ function Ns(e, t) {
4446
4507
  let n = {};
4447
4508
  if (!e) return n;
4448
4509
  for (let r of e) {
@@ -4451,7 +4512,7 @@ function ws(e, t) {
4451
4512
  }
4452
4513
  return n;
4453
4514
  }
4454
- function Ts(e, t) {
4515
+ function Ps(e, t) {
4455
4516
  if (!e) return null;
4456
4517
  for (let n of e) if (n.type === "decimal" || n.type === "integer") {
4457
4518
  let e = t[n.key], r = e === "" || e == null;
@@ -4462,7 +4523,7 @@ function Ts(e, t) {
4462
4523
  }
4463
4524
  //#endregion
4464
4525
  //#region src/utils/pnl.ts
4465
- function Es(e) {
4526
+ function Fs(e) {
4466
4527
  if (e.buyPrice == null || e.lastPrice == null || e.filledQty == null) return {
4467
4528
  pnlUsd: null,
4468
4529
  pnlPct: null
@@ -4477,4 +4538,4 @@ function Es(e) {
4477
4538
  };
4478
4539
  }
4479
4540
  //#endregion
4480
- export { B as AlertEnum, Or as BaseActionButton, Ve as BaseAlert, vr as BaseAppLayout, So as BaseAuthLayout, Ge as BaseBadge, zo as BaseBadgeEnum, xa as BaseBarDistribution, To as BaseBooleanBadge, Ye as BaseBreadcrumb, it as BaseButton, G as BaseButtonEnum, K as BaseButtonSizeEnum, Ja as BaseCard, lo as BaseCheckbox, ti as BaseChipButton, li as BaseCodeBlock, Tn as BaseCollapsibleSection, kn as BaseConfirmModal, Ar as BaseCopyButton, oa as BaseCredentialsForm, ja as BaseDateTimePicker, ko as BaseDetailList, vi as BaseDropdown, hr as BaseEntityPickerModal, $a as BaseField, ci as BaseFileDropzone, Ui as BaseFilterChip, Pr as BaseGoogleSignInButton, Aa as BaseGroupedChecklist, di as BaseInput, lt as BaseLine, ut as BaseLoginEnum, Kr as BaseLoginForm, Nt as BaseLogo, q as BaseLogoEnum, Bt as BaseModal, Pt as BaseModalEnum, Sn as BaseModalShell, In as BaseNotFoundPage, $r as BaseNotificationPanel, Sr as BasePageHeader, ga as BasePillPickerModal, ni as BaseRemoveButton, Vt as BaseRow, Ba as BaseSearchSelect, Si as BaseSegmentedControl, pi as BaseSelect, nr as BaseSidebar, go as BaseSidebarUser, Ri as BaseSpecFields, Ht as BaseSpinner, Vi as BaseStatBreakdown, ro as BaseStatCard, ai as BaseStatusPill, Ai as BaseTable, Nn as BaseTextInputModal, Gt as BaseToast, J as BaseToastEnum, oo as BaseToggle, Tr as BaseToolbarButton, qt as ColoredSquares, W as ColorsEnums, Xt as EarningsCard, tn as EuroAmount, at as LineEnum, sn as Pagination, Y as PositioningEnum, fn as TrendArrow, ws as buildSpecParams, Es as computePnL, Ts as firstInvalidNumericSpec, gs as fmtBytes, ps as fmtCalendarDate, ms as fmtCalendarDateTime, as as fmtDate, ss as fmtDateShort, os as fmtDateTime, cs as fmtDateTimeMs, ys as fmtDuration, fs as fmtMoney, hs as fmtMsAsSeconds, is as fmtNumber, us as fmtPct, ls as fmtPrice, ds as fmtUsd, _s as formatJson, Bo as getBaseColor, Vo as getBaseColorOf, He as humanizeEnum, Ue as humanizeTextVNodes, Re as initTheme, Io as isAbortError, ts as isSafeHref, bs as isValidAbsoluteUrl, Cs as isValidBase64, xs as isValidJson, Ss as isValidXml, Go as methodBadgeBright, Wo as methodBadgeSolid, qo as methodBadgeTinted, Zo as rowKeyMissing, Xo as rowValueMissing, rs as sanitizeHtml, Lo as stableStringify, Jo as statusBadgeSoft, Ko as statusBadgeSolid, Yo as statusBadgeTinted, vs as stringifyValue, Ao as useDebouncedRef, Ro as useDirtyState, pn as useEscapeKey, No as useFieldClasses, Fo as useLatestRequest, Rn as useMobileSidebar, Gn as useNotifications, Po as usePolling, Mo as useQueryParamSync, Hn as useSidebarCollapse, U as useTheme, X as useThemeClasses, jo as useToast };
4541
+ export { B as AlertEnum, Or as BaseActionButton, Ve as BaseAlert, vr as BaseAppLayout, Do as BaseAuthLayout, Ge as BaseBadge, Wo as BaseBadgeEnum, xa as BaseBarDistribution, Ao as BaseBooleanBadge, Ye as BaseBreadcrumb, q as BaseButton, G as BaseButtonEnum, K as BaseButtonSizeEnum, $a as BaseCard, ho as BaseCheckbox, ti as BaseChipButton, li as BaseCodeBlock, Tn as BaseCollapsibleSection, kn as BaseConfirmModal, Ar as BaseCopyButton, oa as BaseCredentialsForm, Ia as BaseDateTimePicker, Po as BaseDetailList, vi as BaseDropdown, hr as BaseEntityPickerModal, io as BaseField, ci as BaseFileDropzone, Ui as BaseFilterChip, Pr as BaseGoogleSignInButton, Aa as BaseGroupedChecklist, Fa as BaseIdChip, di as BaseInput, ct as BaseLine, lt as BaseLoginEnum, Kr as BaseLoginForm, Mt as BaseLogo, J as BaseLogoEnum, zt as BaseModal, Nt as BaseModalEnum, Sn as BaseModalShell, In as BaseNotFoundPage, $r as BaseNotificationPanel, Sr as BasePageHeader, ga as BasePillPickerModal, ni as BaseRemoveButton, Bt as BaseRow, Ga as BaseSearchSelect, Si as BaseSegmentedControl, pi as BaseSelect, nr as BaseSidebar, xo as BaseSidebarUser, Ri as BaseSpecFields, Vt as BaseSpinner, Vi as BaseStatBreakdown, co as BaseStatCard, ai as BaseStatusPill, Ai as BaseTable, Nn as BaseTextInputModal, Gt as BaseToast, Y as BaseToastEnum, fo as BaseToggle, Tr as BaseToolbarButton, qt as ColoredSquares, W as ColorsEnums, Xt as EarningsCard, tn as EuroAmount, it as LineEnum, sn as Pagination, Ht as PositioningEnum, fn as TrendArrow, Ns as buildSpecParams, Fs as computePnL, bs as currencySymbol, Ps as firstInvalidNumericSpec, Ts as fmtBytes, Ss as fmtCalendarDate, Cs as fmtCalendarDateTime, xs as fmtCurrencyAmount, us as fmtDate, fs as fmtDateShort, ds as fmtDateTime, ps as fmtDateTimeMs, Os as fmtDuration, _s as fmtMoney, ws as fmtMsAsSeconds, ls as fmtNumber, hs as fmtPct, ms as fmtPrice, gs as fmtUsd, Es as formatJson, Go as getBaseColor, Ko as getBaseColorOf, He as humanizeEnum, Ue as humanizeTextVNodes, Re as initTheme, Vo as isAbortError, os as isSafeHref, ks as isValidAbsoluteUrl, Ms as isValidBase64, As as isValidJson, js as isValidXml, Xo as methodBadgeBright, Yo as methodBadgeSolid, Qo as methodBadgeTinted, ns as rowKeyMissing, ts as rowValueMissing, cs as sanitizeHtml, Ho as stableStringify, $o as statusBadgeSoft, Zo as statusBadgeSolid, es as statusBadgeTinted, Ds as stringifyValue, Fo as useDebouncedRef, Uo as useDirtyState, pn as useEscapeKey, Ro as useFieldClasses, Bo as useLatestRequest, Rn as useMobileSidebar, Gn as useNotifications, zo as usePolling, Lo as useQueryParamSync, Hn as useSidebarCollapse, U as useTheme, X as useThemeClasses, Io as useToast };