@wishbone-media/spark 0.23.1 → 0.25.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/index.js CHANGED
@@ -1,88 +1,89 @@
1
- import { computed as S, resolveComponent as A, createElementBlock as g, openBlock as m, normalizeClass as H, createElementVNode as f, createCommentVNode as T, createVNode as b, unref as w, renderSlot as O, reactive as q, Fragment as R, renderList as z, toDisplayString as L, createBlock as V, resolveDynamicComponent as I, markRaw as fe, ref as E, watch as N, Transition as Ue, withCtx as C, normalizeProps as Ke, mergeProps as Z, createTextVNode as B, Teleport as Ge, TransitionGroup as le, inject as Ve, provide as We, toHandlers as Re, onMounted as be, withModifiers as Q, useSlots as Be, onUnmounted as Ye, h as ke } from "vue";
2
- import { library as Ee, icon as ce } from "@fortawesome/fontawesome-svg-core";
3
- import { FontAwesomeIcon as Xe } from "@fortawesome/vue-fontawesome";
4
- import { faCloudDownload as Je, faBolt as Qe, faUndo as et, faEye as tt, faSignOut as st, faXmark as ot, faTrash as at, faTimes as rt, faStreetView as nt, faSortUp as lt, faSortDown as it, faSort as ct, faScaleBalanced as ut, faSatelliteDish as dt, faLayerPlus as pt, faLaptopMobile as ft, faInfoCircle as mt, faGripDotsVertical as ht, faGearComplex as gt, faFlag as yt, faFaceSmileWink as vt, faFaceSmileRelaxed as bt, faExclamationTriangle as xt, faEllipsisVertical as kt, faEllipsis as wt, faEdit as _t, faComments as St, faCircleXmark as Ct, faCircleUser as $t, faChevronUp as Tt, faChevronRight as Lt, faChevronLeft as Pt, faChevronDown as Mt, faCheckCircle as Ht, faCheck as Vt, faBullhorn as Rt, faBellRing as Bt, faBarsSort as Et, faArrowRightToLine as At, faArrowLeftToLine as Ft } from "@fortawesome/pro-regular-svg-icons";
1
+ import { computed as C, resolveComponent as A, createElementBlock as h, openBlock as m, normalizeClass as H, createElementVNode as f, createCommentVNode as L, createVNode as b, unref as x, renderSlot as O, reactive as q, Fragment as R, renderList as D, toDisplayString as P, createBlock as V, resolveDynamicComponent as N, markRaw as me, ref as B, watch as I, Transition as Ue, withCtx as T, normalizeProps as Ke, mergeProps as Z, createTextVNode as E, Teleport as Ge, TransitionGroup as le, inject as Ve, provide as We, toHandlers as Re, onMounted as xe, withModifiers as Q, useSlots as Ee, onUnmounted as Ye, withDirectives as Xe, vShow as Je, h as ke } from "vue";
2
+ import { library as Be, icon as ce } from "@fortawesome/fontawesome-svg-core";
3
+ import { FontAwesomeIcon as Qe } from "@fortawesome/vue-fontawesome";
4
+ import { faInbox as et, faCloudDownload as tt, faBolt as st, faUndo as ot, faEye as at, faSignOut as rt, faXmark as nt, faTrash as lt, faTimes as it, faStreetView as ct, faSortUp as ut, faSortDown as dt, faSort as pt, faScaleBalanced as ft, faSatelliteDish as mt, faLayerPlus as ht, faLaptopMobile as gt, faInfoCircle as yt, faGripDotsVertical as vt, faGearComplex as bt, faFlag as xt, faFaceSmileWink as kt, faFaceSmileRelaxed as wt, faExclamationTriangle as _t, faEllipsisVertical as St, faEllipsis as Ct, faEdit as $t, faComments as Tt, faCircleXmark as Lt, faCircleUser as Pt, faChevronUp as Mt, faChevronRight as Ht, faChevronLeft as Vt, faChevronDown as Rt, faCheckCircle as Et, faCheck as Bt, faBullhorn as At, faBellRing as Ft, faBarsSort as Ot, faArrowRightToLine as zt, faArrowLeftToLine as Dt } from "@fortawesome/pro-regular-svg-icons";
5
5
  import { defineStore as ue } from "pinia";
6
- import { TransitionRoot as Ae, Dialog as Fe, TransitionChild as pe, DialogPanel as Oe } from "@headlessui/vue";
7
- import me from "nprogress";
8
- import { range as Ot, get as Y, find as zt, has as Dt } from "lodash";
9
- import { HotTable as jt } from "@handsontable/vue3";
6
+ import { TransitionRoot as Ae, Dialog as Fe, TransitionChild as fe, DialogPanel as Oe } from "@headlessui/vue";
7
+ import he from "nprogress";
8
+ import { range as jt, get as Y, find as It, has as Nt } from "lodash";
9
+ import { HotTable as Zt } from "@handsontable/vue3";
10
10
  import "handsontable/styles/handsontable.css";
11
11
  import "handsontable/styles/ht-theme-classic.css";
12
- import { registerPlugin as de, AutoColumnSize as Nt, CopyPaste as It, StretchColumns as Zt, NestedHeaders as qt } from "handsontable/plugins";
13
- import { registerAllCellTypes as Ut } from "handsontable/cellTypes";
12
+ import { registerPlugin as pe, AutoColumnSize as qt, CopyPaste as Ut, StretchColumns as Kt, NestedHeaders as Gt } from "handsontable/plugins";
13
+ import { registerAllCellTypes as Wt } from "handsontable/cellTypes";
14
14
  import { useDebounceFn as ze, watchDebounced as we } from "@vueuse/core";
15
- import { registerRenderer as Kt, baseRenderer as Gt } from "handsontable/renderers";
15
+ import { registerRenderer as Yt, baseRenderer as Xt } from "handsontable/renderers";
16
16
  import { useRouter as J, useRoute as ne } from "vue-router";
17
17
  import re from "axios";
18
- var Wt = {
18
+ var Jt = {
19
19
  prefix: "fad",
20
20
  iconName: "sort-up",
21
21
  icon: [384, 512, ["sort-asc"], "f0de", ["", "M32 224c-12.9 0-24.6-7.8-29.6-19.8S.2 178.5 9.4 169.4l160-160c12.5-12.5 32.8-12.5 45.3 0l160 160c9.2 9.2 11.9 22.9 6.9 34.9S364.9 224 352 224L32 224z"]]
22
- }, Yt = {
22
+ }, Qt = {
23
23
  prefix: "fad",
24
24
  iconName: "sort",
25
25
  icon: [384, 512, ["unsorted"], "f0dc", ["M2.4 307.8c-5 12-2.2 25.7 6.9 34.9l160 160c12.5 12.5 32.8 12.5 45.3 0l160-160c9.2-9.2 11.9-22.9 6.9-34.9S364.9 288 352 288L32 288c-12.9 0-24.6 7.8-29.6 19.8z", "M32 224c-12.9 0-24.6-7.8-29.6-19.8S.2 178.5 9.4 169.4l160-160c12.5-12.5 32.8-12.5 45.3 0l160 160c9.2 9.2 11.9 22.9 6.9 34.9S364.9 224 352 224L32 224z"]]
26
- }, Xt = {
26
+ }, es = {
27
27
  prefix: "fad",
28
28
  iconName: "sort-down",
29
29
  icon: [384, 512, ["sort-desc"], "f0dd", ["", "M32 288c-12.9 0-24.6 7.8-29.6 19.8S.2 333.5 9.4 342.6l160 160c12.5 12.5 32.8 12.5 45.3 0l160-160c9.2-9.2 11.9-22.9 6.9-34.9S364.9 288 352 288L32 288z"]]
30
30
  };
31
31
  const F = {
32
- farArrowLeftToLine: Ft,
33
- farArrowRightToLine: At,
34
- farBarsSort: Et,
35
- farBellRing: Bt,
36
- farBullhorn: Rt,
37
- farCheck: Vt,
38
- farCheckCircle: Ht,
39
- farChevronDown: Mt,
40
- farChevronLeft: Pt,
41
- farChevronRight: Lt,
42
- farChevronUp: Tt,
43
- farCircleUser: $t,
44
- farCircleXmark: Ct,
45
- farComments: St,
46
- farEdit: _t,
47
- farEllipsis: wt,
48
- farEllipsisVertical: kt,
49
- farExclamationTriangle: xt,
50
- farFaceSmileRelaxed: bt,
51
- farFaceSmileWink: vt,
52
- farFlag: yt,
53
- farGearComplex: gt,
54
- farGripDotsVertical: ht,
55
- farInfoCircle: mt,
56
- farLaptopMobile: ft,
57
- farLayerPlus: pt,
58
- farSatelliteDish: dt,
59
- farScaleBalanced: ut,
60
- farSort: ct,
61
- farSortDown: it,
62
- farSortUp: lt,
63
- farStreetView: nt,
64
- farTimes: rt,
65
- farTrash: at,
66
- farXmark: ot,
67
- farSignOut: st,
68
- farEye: tt,
69
- farUndo: et,
70
- farBolt: Qe,
71
- farCloudDownload: Je,
72
- fadSort: Yt,
73
- fadSortDown: Xt,
74
- fadSortUp: Wt
32
+ farArrowLeftToLine: Dt,
33
+ farArrowRightToLine: zt,
34
+ farBarsSort: Ot,
35
+ farBellRing: Ft,
36
+ farBullhorn: At,
37
+ farCheck: Bt,
38
+ farCheckCircle: Et,
39
+ farChevronDown: Rt,
40
+ farChevronLeft: Vt,
41
+ farChevronRight: Ht,
42
+ farChevronUp: Mt,
43
+ farCircleUser: Pt,
44
+ farCircleXmark: Lt,
45
+ farComments: Tt,
46
+ farEdit: $t,
47
+ farEllipsis: Ct,
48
+ farEllipsisVertical: St,
49
+ farExclamationTriangle: _t,
50
+ farFaceSmileRelaxed: wt,
51
+ farFaceSmileWink: kt,
52
+ farFlag: xt,
53
+ farGearComplex: bt,
54
+ farGripDotsVertical: vt,
55
+ farInfoCircle: yt,
56
+ farLaptopMobile: gt,
57
+ farLayerPlus: ht,
58
+ farSatelliteDish: mt,
59
+ farScaleBalanced: ft,
60
+ farSort: pt,
61
+ farSortDown: dt,
62
+ farSortUp: ut,
63
+ farStreetView: ct,
64
+ farTimes: it,
65
+ farTrash: lt,
66
+ farXmark: nt,
67
+ farSignOut: rt,
68
+ farEye: at,
69
+ farUndo: ot,
70
+ farBolt: st,
71
+ farCloudDownload: tt,
72
+ farInbox: et,
73
+ fadSort: Qt,
74
+ fadSortDown: es,
75
+ fadSortUp: Jt
75
76
  };
76
- function nn(e) {
77
- Object.assign(F, e), Ee.add(...Object.values(e));
77
+ function dn(e) {
78
+ Object.assign(F, e), Be.add(...Object.values(e));
78
79
  }
79
- function ln(e) {
80
- Ee.add(...Object.values(F)), e.component("FontAwesomeIcon", Xe);
80
+ function pn(e) {
81
+ Be.add(...Object.values(F)), e.component("FontAwesomeIcon", Qe);
81
82
  }
82
- const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }, es = { class: "ml-3" }, ts = {
83
+ const ts = { class: "flex items-center" }, ss = { class: "shrink-0 self-start" }, os = { class: "ml-3" }, as = {
83
84
  key: 0,
84
85
  class: "ml-auto pl-3 pt-1 self-start"
85
- }, ss = { class: "-mx-1.5 -my-1.5" }, se = {
86
+ }, rs = { class: "-mx-1.5 -my-1.5" }, se = {
86
87
  __name: "SparkAlert",
87
88
  props: {
88
89
  type: {
@@ -97,22 +98,22 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
97
98
  },
98
99
  emits: ["close"],
99
100
  setup(e) {
100
- const s = e, t = S(() => ({
101
+ const s = e, t = C(() => ({
101
102
  success: "bg-green-50 border-green-200 text-green-700",
102
103
  warning: "bg-yellow-50 border-yellow-200 text-yellow-700",
103
104
  danger: "bg-red-50 border-red-200 text-red-700",
104
105
  info: "bg-blue-50 border-blue-200 text-blue-700"
105
- })[s.type]), o = S(() => ({
106
+ })[s.type]), o = C(() => ({
106
107
  success: "text-green-400",
107
108
  warning: "text-yellow-400",
108
109
  danger: "text-red-400",
109
110
  info: "text-blue-400"
110
- })[s.type]), l = S(() => ({
111
+ })[s.type]), l = C(() => ({
111
112
  success: "farCheckCircle",
112
113
  warning: "farExclamationTriangle",
113
114
  danger: "farCircleXmark",
114
115
  info: "farInfoCircle"
115
- })[s.type]), n = S(() => ({
116
+ })[s.type]), n = C(() => ({
116
117
  success: "text-green-400 hover:bg-green-100",
117
118
  warning: "text-yellow-400 hover:bg-yellow-100",
118
119
  danger: "text-red-400 hover:bg-red-100",
@@ -120,37 +121,37 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
120
121
  })[s.type]);
121
122
  return (a, c) => {
122
123
  const r = A("font-awesome-icon");
123
- return m(), g("div", {
124
+ return m(), h("div", {
124
125
  class: H(["rounded-md border p-4", t.value])
125
126
  }, [
126
- f("div", Jt, [
127
- f("div", Qt, [
127
+ f("div", ts, [
128
+ f("div", ss, [
128
129
  b(r, {
129
- icon: w(F)[l.value],
130
+ icon: x(F)[l.value],
130
131
  class: H(o.value)
131
132
  }, null, 8, ["icon", "class"])
132
133
  ]),
133
- f("div", es, [
134
+ f("div", os, [
134
135
  O(a.$slots, "default")
135
136
  ]),
136
- e.closeable ? (m(), g("div", ts, [
137
- f("div", ss, [
137
+ e.closeable ? (m(), h("div", as, [
138
+ f("div", rs, [
138
139
  f("button", {
139
140
  type: "button",
140
141
  class: H(["inline-flex rounded-md px-2 py-1.5", n.value]),
141
142
  onClick: c[0] || (c[0] = (i) => a.$emit("close"))
142
143
  }, [
143
144
  b(r, {
144
- icon: w(F).farXmark
145
+ icon: x(F).farXmark
145
146
  }, null, 8, ["icon"])
146
147
  ], 2)
147
148
  ])
148
- ])) : T("", !0)
149
+ ])) : L("", !0)
149
150
  ])
150
151
  ], 2);
151
152
  };
152
153
  }
153
- }, he = [
154
+ }, ge = [
154
155
  {
155
156
  name: "Bolt",
156
157
  description: "Job management",
@@ -201,7 +202,7 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
201
202
  }
202
203
  ], De = ue("sparkAppSelector", () => {
203
204
  const e = q({
204
- apps: [...he]
205
+ apps: [...ge]
205
206
  }), s = (n = {}) => {
206
207
  if (n.apps && Array.isArray(n.apps)) {
207
208
  const a = n.apps.filter((c) => {
@@ -220,7 +221,7 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
220
221
  const a = /* @__PURE__ */ new Map();
221
222
  Object.keys(n.appHrefs).forEach((c) => {
222
223
  a.set(c.toLowerCase(), n.appHrefs[c]);
223
- }), e.apps = he.map((c) => {
224
+ }), e.apps = ge.map((c) => {
224
225
  const r = a.get(c.name.toLowerCase());
225
226
  return {
226
227
  ...c,
@@ -229,8 +230,8 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
229
230
  });
230
231
  return;
231
232
  }
232
- e.apps = [...he];
233
- }, t = S(() => e.apps), o = (n) => {
233
+ e.apps = [...ge];
234
+ }, t = C(() => e.apps), o = (n) => {
234
235
  if (!n) return null;
235
236
  const a = n.toLowerCase();
236
237
  return e.apps.find((c) => c.name.toLowerCase() === a) || null;
@@ -258,16 +259,16 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
258
259
  e.app = t.app || "", e.homeRoute = t.homeRoute ?? "dashboard", e.showBrandSelector = t.showBrandSelector ?? !0, e.showAppSelector = t.showAppSelector ?? !0;
259
260
  }
260
261
  };
261
- }), os = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, as = { class: "flex flex-1 flex-col" }, rs = { class: "divide-y divide-gray-200" }, ns = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, ls = { class: "ml-auto flex items-center" }, is = ["href", "onClick"], cs = { class: "gap-y-1" }, us = { class: "text-base text-gray-800 flex items-center" }, ds = { class: "font-medium" }, ps = {
262
+ }), ns = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, ls = { class: "flex flex-1 flex-col" }, is = { class: "divide-y divide-gray-200" }, cs = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, us = { class: "ml-auto flex items-center" }, ds = ["href", "onClick"], ps = { class: "gap-y-1" }, fs = { class: "text-base text-gray-800 flex items-center" }, ms = { class: "font-medium" }, hs = {
262
263
  key: 0,
263
264
  class: "inline-flex items-center rounded-full bg-green-100 px-1.5 py-0.5 text-xs font-medium text-green-700 ml-1"
264
- }, fs = { class: "text-sm text-gray-500" }, ms = { class: "ml-auto flex items-center" }, hs = { class: "mt-auto" }, gs = {
265
+ }, gs = { class: "text-sm text-gray-500" }, ys = { class: "ml-auto flex items-center" }, vs = { class: "mt-auto" }, bs = {
265
266
  key: 0,
266
267
  class: "p-6"
267
- }, ys = {
268
+ }, xs = {
268
269
  key: 1,
269
270
  class: "bg-gray-50 p-6"
270
- }, vs = {
271
+ }, ks = {
271
272
  __name: "SparkAppSelector",
272
273
  props: {
273
274
  bottomSlot: {
@@ -281,7 +282,7 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
281
282
  },
282
283
  emits: ["close", "select"],
283
284
  setup(e, { emit: s }) {
284
- const t = s, o = De(), l = je(), n = S(() => {
285
+ const t = s, o = De(), l = je(), n = C(() => {
285
286
  const c = l.state.app;
286
287
  return o.state.apps.map((r) => ({
287
288
  ...r,
@@ -292,66 +293,66 @@ const Jt = { class: "flex items-center" }, Qt = { class: "shrink-0 self-start" }
292
293
  };
293
294
  return (c, r) => {
294
295
  const i = A("font-awesome-icon");
295
- return m(), g("div", os, [
296
- f("div", as, [
297
- f("div", rs, [
298
- f("div", ns, [
296
+ return m(), h("div", ns, [
297
+ f("div", ls, [
298
+ f("div", is, [
299
+ f("div", cs, [
299
300
  r[1] || (r[1] = f("div", null, "Mr Group Network", -1)),
300
- f("div", ls, [
301
+ f("div", us, [
301
302
  b(i, {
302
- icon: w(F).farTimes,
303
+ icon: x(F).farTimes,
303
304
  class: "h-[15px] w-[15px] shrink-0 text-gray-400 cursor-pointer",
304
305
  onClick: r[0] || (r[0] = (u) => t("close"))
305
306
  }, null, 8, ["icon"])
306
307
  ])
307
308
  ]),
308
- (m(!0), g(R, null, z(n.value, (u) => (m(), g("a", {
309
+ (m(!0), h(R, null, D(n.value, (u) => (m(), h("a", {
309
310
  key: u.name,
310
311
  href: u.href,
311
312
  target: "_blank",
312
313
  class: H([u.current ? "bg-gray-50" : "hover:bg-gray-50", "flex px-[22px] py-[15px] cursor-pointer"]),
313
314
  onClick: (d) => u.current ? d.preventDefault() : a(u)
314
315
  }, [
315
- f("div", cs, [
316
- f("div", us, [
317
- f("div", ds, L(u.name), 1),
318
- u.current ? (m(), g("span", ps, " Active ")) : T("", !0)
316
+ f("div", ps, [
317
+ f("div", fs, [
318
+ f("div", ms, P(u.name), 1),
319
+ u.current ? (m(), h("span", hs, " Active ")) : L("", !0)
319
320
  ]),
320
- f("div", fs, L(u.description), 1)
321
+ f("div", gs, P(u.description), 1)
321
322
  ]),
322
- f("div", ms, [
323
+ f("div", ys, [
323
324
  b(i, {
324
325
  class: H([u.current ? "text-gray-700" : "text-gray-400", "h-5 w-5 shrink-0"]),
325
- icon: w(F)[u.icon]
326
+ icon: x(F)[u.icon]
326
327
  }, null, 8, ["class", "icon"])
327
328
  ])
328
- ], 10, is))), 128)),
329
+ ], 10, ds))), 128)),
329
330
  r[2] || (r[2] = f("div", null, null, -1))
330
331
  ]),
331
- f("div", hs, [
332
- c.$slots.bottom || e.bottomSlot ? (m(), g("div", gs, [
332
+ f("div", vs, [
333
+ c.$slots.bottom || e.bottomSlot ? (m(), h("div", bs, [
333
334
  O(c.$slots, "bottom", {}, () => [
334
- e.bottomSlot ? (m(), V(I(e.bottomSlot), { key: 0 })) : T("", !0)
335
+ e.bottomSlot ? (m(), V(N(e.bottomSlot), { key: 0 })) : L("", !0)
335
336
  ])
336
- ])) : T("", !0),
337
- c.$slots.footer || e.footerSlot ? (m(), g("div", ys, [
337
+ ])) : L("", !0),
338
+ c.$slots.footer || e.footerSlot ? (m(), h("div", xs, [
338
339
  O(c.$slots, "footer", {}, () => [
339
- e.footerSlot ? (m(), V(I(e.footerSlot), { key: 0 })) : T("", !0)
340
+ e.footerSlot ? (m(), V(N(e.footerSlot), { key: 0 })) : L("", !0)
340
341
  ])
341
- ])) : T("", !0)
342
+ ])) : L("", !0)
342
343
  ])
343
344
  ])
344
345
  ]);
345
346
  };
346
347
  }
347
- }, Ne = {
348
+ }, Ie = {
348
349
  success: 5e3,
349
350
  info: 5e3,
350
351
  warning: 5e3,
351
352
  danger: 0
352
353
  // sticky by default
353
354
  }, _e = ["top-left", "top-right", "center", "bottom-left", "bottom-right"];
354
- function bs() {
355
+ function ws() {
355
356
  const e = q({
356
357
  isVisible: !1,
357
358
  type: "info",
@@ -376,16 +377,16 @@ function bs() {
376
377
  show: (p = {}) => {
377
378
  n();
378
379
  const {
379
- type: y = "info",
380
+ type: v = "info",
380
381
  message: k = null,
381
- component: h = null,
382
- props: x = {},
383
- closeable: P = !0,
384
- duration: _ = null
382
+ component: $ = null,
383
+ props: g = {},
384
+ closeable: _ = !0,
385
+ duration: w = null
385
386
  } = p;
386
- e.type = y, e.message = k, e.component = h ? fe(h) : null, e.props = x, e.closeable = P, e.isVisible = !0;
387
- const v = _ !== null ? _ : Ne[y];
388
- e.duration = v, v > 0 && c(v);
387
+ e.type = v, e.message = k, e.component = $ ? me($) : null, e.props = g, e.closeable = _, e.isVisible = !0;
388
+ const y = w !== null ? w : Ie[v];
389
+ e.duration = y, y > 0 && c(y);
389
390
  },
390
391
  hide: a,
391
392
  reset: () => {
@@ -404,7 +405,7 @@ function bs() {
404
405
  }
405
406
  };
406
407
  }
407
- class xs {
408
+ class _s {
408
409
  constructor() {
409
410
  this.outlets = /* @__PURE__ */ new Map(), this.toastState = q({
410
411
  toasts: [],
@@ -422,7 +423,7 @@ class xs {
422
423
  * @returns {Object} Notification outlet instance
423
424
  */
424
425
  getOutlet(s = "default") {
425
- return this.outlets.has(s) || this.outlets.set(s, bs()), this.outlets.get(s);
426
+ return this.outlets.has(s) || this.outlets.set(s, ws()), this.outlets.get(s);
426
427
  }
427
428
  /**
428
429
  * Show a banner notification in the specified outlet
@@ -516,23 +517,23 @@ class xs {
516
517
  closeable: a = !0,
517
518
  duration: c = null,
518
519
  position: r = null
519
- } = s, i = ++this._toastIdCounter, u = r && _e.includes(r) ? r : this.toastState.defaultPosition, d = c !== null ? c : Ne[t], p = {
520
+ } = s, i = ++this._toastIdCounter, u = r && _e.includes(r) ? r : this.toastState.defaultPosition, d = c !== null ? c : Ie[t], p = {
520
521
  id: i,
521
522
  type: t,
522
523
  message: o,
523
- component: l ? fe(l) : null,
524
+ component: l ? me(l) : null,
524
525
  props: n,
525
526
  closeable: a,
526
527
  duration: d,
527
528
  position: u,
528
529
  createdAt: Date.now()
529
- }, y = this.toastState.toasts.filter((k) => k.position === u);
530
- if (y.length >= this.toastState.maxToasts) {
531
- const k = this.toastState.newestOnTop ? y[y.length - 1] : y[0];
530
+ }, v = this.toastState.toasts.filter((k) => k.position === u);
531
+ if (v.length >= this.toastState.maxToasts) {
532
+ const k = this.toastState.newestOnTop ? v[v.length - 1] : v[0];
532
533
  this.hideToast(k.id);
533
534
  }
534
535
  if (this.toastState.newestOnTop) {
535
- const k = this.toastState.toasts.findIndex((h) => h.position === u);
536
+ const k = this.toastState.toasts.findIndex(($) => $.position === u);
536
537
  k === -1 ? this.toastState.toasts.push(p) : this.toastState.toasts.splice(k, 0, p);
537
538
  } else
538
539
  this.toastState.toasts.push(p);
@@ -609,7 +610,7 @@ class xs {
609
610
  t && (t.timeout && clearTimeout(t.timeout), this._toastTimers.delete(s));
610
611
  }
611
612
  }
612
- const X = new xs(), cn = {
613
+ const X = new _s(), fn = {
613
614
  __name: "SparkNotificationOutlet",
614
615
  props: {
615
616
  name: {
@@ -618,8 +619,8 @@ const X = new xs(), cn = {
618
619
  }
619
620
  },
620
621
  setup(e) {
621
- const s = e, t = S(() => X.getOutlet(s.name)), o = E(0);
622
- N(
622
+ const s = e, t = C(() => X.getOutlet(s.name)), o = B(0);
623
+ I(
623
624
  () => [t.value.state.message, t.value.state.component, t.value.state.type],
624
625
  () => {
625
626
  t.value.state.isVisible && o.value++;
@@ -641,7 +642,7 @@ const X = new xs(), cn = {
641
642
  "leave-to-class": "opacity-0 -translate-y-2",
642
643
  mode: "out-in"
643
644
  }, {
644
- default: C(() => [
645
+ default: T(() => [
645
646
  t.value.state.isVisible ? (m(), V(se, {
646
647
  key: o.value,
647
648
  type: t.value.state.type,
@@ -650,29 +651,29 @@ const X = new xs(), cn = {
650
651
  onMouseenter: n,
651
652
  onMouseleave: a
652
653
  }, {
653
- default: C(() => [
654
- t.value.state.component ? (m(), V(I(t.value.state.component), Ke(Z({ key: 0 }, t.value.state.props)), null, 16)) : (m(), g(R, { key: 1 }, [
655
- B(L(t.value.state.message), 1)
654
+ default: T(() => [
655
+ t.value.state.component ? (m(), V(N(t.value.state.component), Ke(Z({ key: 0 }, t.value.state.props)), null, 16)) : (m(), h(R, { key: 1 }, [
656
+ E(P(t.value.state.message), 1)
656
657
  ], 64))
657
658
  ]),
658
659
  _: 1
659
- }, 8, ["type", "closeable"])) : T("", !0)
660
+ }, 8, ["type", "closeable"])) : L("", !0)
660
661
  ]),
661
662
  _: 1
662
663
  }));
663
664
  }
664
- }, ks = { class: "fixed top-4 left-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, ws = { class: "fixed top-4 right-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, _s = { class: "fixed top-[40%] left-1/2 -translate-x-1/2 -translate-y-1/2 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, Ss = { class: "fixed bottom-4 left-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, Cs = { class: "fixed bottom-4 right-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, un = {
665
+ }, Ss = { class: "fixed top-4 left-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, Cs = { class: "fixed top-4 right-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, $s = { class: "fixed top-[40%] left-1/2 -translate-x-1/2 -translate-y-1/2 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, Ts = { class: "fixed bottom-4 left-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, Ls = { class: "fixed bottom-4 right-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, mn = {
665
666
  __name: "SparkToastContainer",
666
667
  setup(e) {
667
- const s = X.toastState, t = S(
668
+ const s = X.toastState, t = C(
668
669
  () => s.toasts.filter((u) => u.position === "top-left")
669
- ), o = S(
670
+ ), o = C(
670
671
  () => s.toasts.filter((u) => u.position === "top-right")
671
- ), l = S(
672
+ ), l = C(
672
673
  () => s.toasts.filter((u) => u.position === "center")
673
- ), n = S(
674
+ ), n = C(
674
675
  () => s.toasts.filter((u) => u.position === "bottom-left")
675
- ), a = S(
676
+ ), a = C(
676
677
  () => s.toasts.filter((u) => u.position === "bottom-right")
677
678
  ), c = (u) => {
678
679
  X.hideToast(u);
@@ -682,7 +683,7 @@ const X = new xs(), cn = {
682
683
  X.resumeToast(u);
683
684
  };
684
685
  return (u, d) => (m(), V(Ge, { to: "body" }, [
685
- f("div", ks, [
686
+ f("div", Ss, [
686
687
  b(le, {
687
688
  "enter-active-class": "transition-all duration-300 ease-out",
688
689
  "enter-from-class": "opacity-0 -translate-x-4",
@@ -691,24 +692,24 @@ const X = new xs(), cn = {
691
692
  "leave-from-class": "opacity-100 translate-x-0",
692
693
  "leave-to-class": "opacity-0 -translate-x-4"
693
694
  }, {
694
- default: C(() => [
695
- (m(!0), g(R, null, z(t.value, (p) => (m(), g("div", {
695
+ default: T(() => [
696
+ (m(!0), h(R, null, D(t.value, (p) => (m(), h("div", {
696
697
  key: p.id,
697
698
  class: "pointer-events-auto"
698
699
  }, [
699
700
  b(se, {
700
701
  type: p.type,
701
702
  closeable: p.closeable,
702
- onClose: (y) => c(p.id),
703
- onMouseenter: (y) => r(p.id),
704
- onMouseleave: (y) => i(p.id)
703
+ onClose: (v) => c(p.id),
704
+ onMouseenter: (v) => r(p.id),
705
+ onMouseleave: (v) => i(p.id)
705
706
  }, {
706
- default: C(() => [
707
- p.component ? (m(), V(I(p.component), Z({
707
+ default: T(() => [
708
+ p.component ? (m(), V(N(p.component), Z({
708
709
  key: 0,
709
710
  ref_for: !0
710
- }, p.props), null, 16)) : (m(), g(R, { key: 1 }, [
711
- B(L(p.message), 1)
711
+ }, p.props), null, 16)) : (m(), h(R, { key: 1 }, [
712
+ E(P(p.message), 1)
712
713
  ], 64))
713
714
  ]),
714
715
  _: 2
@@ -718,7 +719,7 @@ const X = new xs(), cn = {
718
719
  _: 1
719
720
  })
720
721
  ]),
721
- f("div", ws, [
722
+ f("div", Cs, [
722
723
  b(le, {
723
724
  "enter-active-class": "transition-all duration-300 ease-out",
724
725
  "enter-from-class": "opacity-0 translate-x-4",
@@ -727,24 +728,24 @@ const X = new xs(), cn = {
727
728
  "leave-from-class": "opacity-100 translate-x-0",
728
729
  "leave-to-class": "opacity-0 translate-x-4"
729
730
  }, {
730
- default: C(() => [
731
- (m(!0), g(R, null, z(o.value, (p) => (m(), g("div", {
731
+ default: T(() => [
732
+ (m(!0), h(R, null, D(o.value, (p) => (m(), h("div", {
732
733
  key: p.id,
733
734
  class: "pointer-events-auto"
734
735
  }, [
735
736
  b(se, {
736
737
  type: p.type,
737
738
  closeable: p.closeable,
738
- onClose: (y) => c(p.id),
739
- onMouseenter: (y) => r(p.id),
740
- onMouseleave: (y) => i(p.id)
739
+ onClose: (v) => c(p.id),
740
+ onMouseenter: (v) => r(p.id),
741
+ onMouseleave: (v) => i(p.id)
741
742
  }, {
742
- default: C(() => [
743
- p.component ? (m(), V(I(p.component), Z({
743
+ default: T(() => [
744
+ p.component ? (m(), V(N(p.component), Z({
744
745
  key: 0,
745
746
  ref_for: !0
746
- }, p.props), null, 16)) : (m(), g(R, { key: 1 }, [
747
- B(L(p.message), 1)
747
+ }, p.props), null, 16)) : (m(), h(R, { key: 1 }, [
748
+ E(P(p.message), 1)
748
749
  ], 64))
749
750
  ]),
750
751
  _: 2
@@ -754,7 +755,7 @@ const X = new xs(), cn = {
754
755
  _: 1
755
756
  })
756
757
  ]),
757
- f("div", _s, [
758
+ f("div", $s, [
758
759
  b(le, {
759
760
  "enter-active-class": "transition-all duration-300 ease-out",
760
761
  "enter-from-class": "opacity-0 scale-95",
@@ -763,24 +764,24 @@ const X = new xs(), cn = {
763
764
  "leave-from-class": "opacity-100 scale-100",
764
765
  "leave-to-class": "opacity-0 scale-95"
765
766
  }, {
766
- default: C(() => [
767
- (m(!0), g(R, null, z(l.value, (p) => (m(), g("div", {
767
+ default: T(() => [
768
+ (m(!0), h(R, null, D(l.value, (p) => (m(), h("div", {
768
769
  key: p.id,
769
770
  class: "pointer-events-auto"
770
771
  }, [
771
772
  b(se, {
772
773
  type: p.type,
773
774
  closeable: p.closeable,
774
- onClose: (y) => c(p.id),
775
- onMouseenter: (y) => r(p.id),
776
- onMouseleave: (y) => i(p.id)
775
+ onClose: (v) => c(p.id),
776
+ onMouseenter: (v) => r(p.id),
777
+ onMouseleave: (v) => i(p.id)
777
778
  }, {
778
- default: C(() => [
779
- p.component ? (m(), V(I(p.component), Z({
779
+ default: T(() => [
780
+ p.component ? (m(), V(N(p.component), Z({
780
781
  key: 0,
781
782
  ref_for: !0
782
- }, p.props), null, 16)) : (m(), g(R, { key: 1 }, [
783
- B(L(p.message), 1)
783
+ }, p.props), null, 16)) : (m(), h(R, { key: 1 }, [
784
+ E(P(p.message), 1)
784
785
  ], 64))
785
786
  ]),
786
787
  _: 2
@@ -790,7 +791,7 @@ const X = new xs(), cn = {
790
791
  _: 1
791
792
  })
792
793
  ]),
793
- f("div", Ss, [
794
+ f("div", Ts, [
794
795
  b(le, {
795
796
  "enter-active-class": "transition-all duration-300 ease-out",
796
797
  "enter-from-class": "opacity-0 -translate-x-4",
@@ -799,24 +800,24 @@ const X = new xs(), cn = {
799
800
  "leave-from-class": "opacity-100 translate-x-0",
800
801
  "leave-to-class": "opacity-0 -translate-x-4"
801
802
  }, {
802
- default: C(() => [
803
- (m(!0), g(R, null, z(n.value, (p) => (m(), g("div", {
803
+ default: T(() => [
804
+ (m(!0), h(R, null, D(n.value, (p) => (m(), h("div", {
804
805
  key: p.id,
805
806
  class: "pointer-events-auto"
806
807
  }, [
807
808
  b(se, {
808
809
  type: p.type,
809
810
  closeable: p.closeable,
810
- onClose: (y) => c(p.id),
811
- onMouseenter: (y) => r(p.id),
812
- onMouseleave: (y) => i(p.id)
811
+ onClose: (v) => c(p.id),
812
+ onMouseenter: (v) => r(p.id),
813
+ onMouseleave: (v) => i(p.id)
813
814
  }, {
814
- default: C(() => [
815
- p.component ? (m(), V(I(p.component), Z({
815
+ default: T(() => [
816
+ p.component ? (m(), V(N(p.component), Z({
816
817
  key: 0,
817
818
  ref_for: !0
818
- }, p.props), null, 16)) : (m(), g(R, { key: 1 }, [
819
- B(L(p.message), 1)
819
+ }, p.props), null, 16)) : (m(), h(R, { key: 1 }, [
820
+ E(P(p.message), 1)
820
821
  ], 64))
821
822
  ]),
822
823
  _: 2
@@ -826,7 +827,7 @@ const X = new xs(), cn = {
826
827
  _: 1
827
828
  })
828
829
  ]),
829
- f("div", Cs, [
830
+ f("div", Ls, [
830
831
  b(le, {
831
832
  "enter-active-class": "transition-all duration-300 ease-out",
832
833
  "enter-from-class": "opacity-0 translate-x-4",
@@ -835,24 +836,24 @@ const X = new xs(), cn = {
835
836
  "leave-from-class": "opacity-100 translate-x-0",
836
837
  "leave-to-class": "opacity-0 translate-x-4"
837
838
  }, {
838
- default: C(() => [
839
- (m(!0), g(R, null, z(a.value, (p) => (m(), g("div", {
839
+ default: T(() => [
840
+ (m(!0), h(R, null, D(a.value, (p) => (m(), h("div", {
840
841
  key: p.id,
841
842
  class: "pointer-events-auto"
842
843
  }, [
843
844
  b(se, {
844
845
  type: p.type,
845
846
  closeable: p.closeable,
846
- onClose: (y) => c(p.id),
847
- onMouseenter: (y) => r(p.id),
848
- onMouseleave: (y) => i(p.id)
847
+ onClose: (v) => c(p.id),
848
+ onMouseenter: (v) => r(p.id),
849
+ onMouseleave: (v) => i(p.id)
849
850
  }, {
850
- default: C(() => [
851
- p.component ? (m(), V(I(p.component), Z({
851
+ default: T(() => [
852
+ p.component ? (m(), V(N(p.component), Z({
852
853
  key: 0,
853
854
  ref_for: !0
854
- }, p.props), null, 16)) : (m(), g(R, { key: 1 }, [
855
- B(L(p.message), 1)
855
+ }, p.props), null, 16)) : (m(), h(R, { key: 1 }, [
856
+ E(P(p.message), 1)
856
857
  ], 64))
857
858
  ]),
858
859
  _: 2
@@ -864,7 +865,7 @@ const X = new xs(), cn = {
864
865
  ])
865
866
  ]));
866
867
  }
867
- }, Ie = ue(
868
+ }, Ne = ue(
868
869
  "brandFilter",
869
870
  () => {
870
871
  const e = q({
@@ -886,7 +887,7 @@ const X = new xs(), cn = {
886
887
  logo: r.logo,
887
888
  current: r.current || !1
888
889
  }));
889
- }, t = S(() => e.brands.find((n) => n.current) || null), o = S(() => e.brands);
890
+ }, t = C(() => e.brands.find((n) => n.current) || null), o = C(() => e.brands);
890
891
  return {
891
892
  state: e,
892
893
  initialize: s,
@@ -908,57 +909,57 @@ const X = new xs(), cn = {
908
909
  paths: ["state.brands"]
909
910
  }
910
911
  }
911
- ), $s = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, Ts = { class: "flex flex-1 flex-col" }, Ls = { class: "divide-y divide-gray-200" }, Ps = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, Ms = { class: "ml-auto flex items-center" }, Hs = {
912
+ ), Ps = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, Ms = { class: "flex flex-1 flex-col" }, Hs = { class: "divide-y divide-gray-200" }, Vs = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, Rs = { class: "ml-auto flex items-center" }, Es = {
912
913
  key: 0,
913
914
  class: "flex px-[22px] py-[15px] text-gray-500 text-sm"
914
- }, Vs = ["onClick"], Rs = { class: "w-full gap-y-1 flex justify-between" }, Bs = { class: "flex flex-col" }, Es = { class: "flex items-center" }, As = { class: "font-medium text-base text-gray-900" }, Fs = {
915
+ }, Bs = ["onClick"], As = { class: "w-full gap-y-1 flex justify-between" }, Fs = { class: "flex flex-col" }, Os = { class: "flex items-center" }, zs = { class: "font-medium text-base text-gray-900" }, Ds = {
915
916
  key: 0,
916
917
  class: "inline-flex items-center rounded-full bg-green-100 px-1.5 py-0.5 text-xs font-medium text-green-800 ml-1"
917
- }, Os = { class: "text-sm text-gray-500 font-normal" }, zs = { class: "flex items-center" }, Ds = ["src", "alt"], js = {
918
+ }, js = { class: "text-sm text-gray-500 font-normal" }, Is = { class: "flex items-center" }, Ns = ["src", "alt"], Zs = {
918
919
  __name: "SparkBrandSelector",
919
920
  emits: ["close", "select"],
920
921
  setup(e, { emit: s }) {
921
- const t = s, o = Ie(), l = (n) => {
922
+ const t = s, o = Ne(), l = (n) => {
922
923
  t("select", n);
923
924
  };
924
925
  return (n, a) => {
925
926
  const c = A("font-awesome-icon");
926
- return m(), g("div", $s, [
927
- f("div", Ts, [
928
- f("div", Ls, [
929
- f("div", Ps, [
927
+ return m(), h("div", Ps, [
928
+ f("div", Ms, [
929
+ f("div", Hs, [
930
+ f("div", Vs, [
930
931
  a[1] || (a[1] = f("div", null, "Filter by Brand", -1)),
931
- f("div", Ms, [
932
+ f("div", Rs, [
932
933
  b(c, {
933
- icon: w(F).farTimes,
934
+ icon: x(F).farTimes,
934
935
  class: "size-4 text-gray-400 cursor-pointer",
935
936
  onClick: a[0] || (a[0] = (r) => t("close"))
936
937
  }, null, 8, ["icon"])
937
938
  ])
938
939
  ]),
939
- w(o).allBrands.length === 0 ? (m(), g("div", Hs, " No brands configured ")) : T("", !0),
940
- (m(!0), g(R, null, z(w(o).allBrands, (r) => (m(), g("div", {
940
+ x(o).allBrands.length === 0 ? (m(), h("div", Es, " No brands configured ")) : L("", !0),
941
+ (m(!0), h(R, null, D(x(o).allBrands, (r) => (m(), h("div", {
941
942
  key: r.id,
942
943
  class: H([r.current ? "bg-gray-50" : "hover:bg-gray-50", "flex px-[22px] py-[15px] cursor-pointer"]),
943
944
  onClick: (i) => l(r)
944
945
  }, [
945
- f("div", Rs, [
946
- f("div", Bs, [
947
- f("div", Es, [
948
- f("div", As, L(r.name), 1),
949
- r.current ? (m(), g("span", Fs, " Current ")) : T("", !0)
946
+ f("div", As, [
947
+ f("div", Fs, [
948
+ f("div", Os, [
949
+ f("div", zs, P(r.name), 1),
950
+ r.current ? (m(), h("span", Ds, " Current ")) : L("", !0)
950
951
  ]),
951
- f("div", Os, L(r.current ? "Current Brand" : "Change to"), 1)
952
+ f("div", js, P(r.current ? "Current Brand" : "Change to"), 1)
952
953
  ]),
953
- f("div", zs, [
954
+ f("div", Is, [
954
955
  f("img", {
955
956
  src: r.logo,
956
957
  alt: `${r.name} logo`,
957
958
  class: "h-8 w-auto"
958
- }, null, 8, Ds)
959
+ }, null, 8, Ns)
959
960
  ])
960
961
  ])
961
- ], 10, Vs))), 128)),
962
+ ], 10, Bs))), 128)),
962
963
  a[2] || (a[2] = f("div", null, null, -1))
963
964
  ]),
964
965
  a[3] || (a[3] = f("div", { class: "mt-auto" }, null, -1))
@@ -966,7 +967,7 @@ const X = new xs(), cn = {
966
967
  ]);
967
968
  };
968
969
  }
969
- }, Ns = ["disabled"], G = {
970
+ }, qs = ["disabled"], G = {
970
971
  __name: "SparkButton",
971
972
  props: {
972
973
  size: {
@@ -989,7 +990,7 @@ const X = new xs(), cn = {
989
990
  },
990
991
  emits: ["click"],
991
992
  setup(e) {
992
- const s = e, t = E(null), o = Ve("buttonGroup", null), l = S(() => {
993
+ const s = e, t = B(null), o = Ve("buttonGroup", null), l = C(() => {
993
994
  if (!o?.isInGroup || !t.value) return null;
994
995
  const r = o.getButtonIndex(t.value), i = o.getButtonCount();
995
996
  return {
@@ -1011,31 +1012,31 @@ const X = new xs(), cn = {
1011
1012
  }, a = (r, i) => {
1012
1013
  if (!i) return r;
1013
1014
  const u = r.split(" ").filter(Boolean), d = i.split(" ").filter(Boolean);
1014
- return [...u.filter((y) => !d.some((k) => {
1015
- const h = Object.entries(n).find(
1016
- ([P, _]) => _.test(y)
1017
- )?.[0], x = Object.entries(n).find(
1018
- ([P, _]) => _.test(k)
1015
+ return [...u.filter((v) => !d.some((k) => {
1016
+ const $ = Object.entries(n).find(
1017
+ ([_, w]) => w.test(v)
1018
+ )?.[0], g = Object.entries(n).find(
1019
+ ([_, w]) => w.test(k)
1019
1020
  )?.[0];
1020
- return h && h === x;
1021
+ return $ && $ === g;
1021
1022
  })), ...d].join(" ");
1022
- }, c = S(() => {
1023
+ }, c = C(() => {
1023
1024
  let r = "", i = "";
1024
1025
  switch (s.size) {
1025
1026
  case "xs":
1026
- r += " px-2 py-1 text-xs", i = "sm";
1027
+ r += " px-4 py-1 text-xs", i = "sm";
1027
1028
  break;
1028
1029
  case "sm":
1029
- r += " px-2 py-1 text-sm", i = "sm";
1030
+ r += " px-4 py-1 text-sm", i = "sm";
1030
1031
  break;
1031
1032
  case "md":
1032
- r += " px-2.5 py-1.5 text-sm", i = "md";
1033
+ r += " px-5 py-1.5 text-sm", i = "md";
1033
1034
  break;
1034
1035
  case "lg":
1035
- r += " px-3 py-2 text-sm", i = "md";
1036
+ r += " px-6 py-2 text-sm", i = "md";
1036
1037
  break;
1037
1038
  case "xl":
1038
- r += " px-3.5 py-2.5 min-h-[42px] text-sm", i = "md";
1039
+ r += " px-7 py-2.5 min-h-[42px] text-sm", i = "md";
1039
1040
  break;
1040
1041
  }
1041
1042
  if (o?.isInGroup && l.value) {
@@ -1067,7 +1068,7 @@ const X = new xs(), cn = {
1067
1068
  }
1068
1069
  return r = a(r, s.buttonClass), r;
1069
1070
  });
1070
- return (r, i) => (m(), g("button", {
1071
+ return (r, i) => (m(), h("button", {
1071
1072
  type: "button",
1072
1073
  ref_key: "buttonRef",
1073
1074
  ref: t,
@@ -1076,17 +1077,17 @@ const X = new xs(), cn = {
1076
1077
  onClick: i[0] || (i[0] = (u) => r.$emit("click"))
1077
1078
  }, [
1078
1079
  O(r.$slots, "default")
1079
- ], 10, Ns));
1080
+ ], 10, qs));
1080
1081
  }
1081
- }, Is = {
1082
+ }, Us = {
1082
1083
  __name: "SparkButtonGroup",
1083
1084
  setup(e) {
1084
- const s = E(null);
1085
+ const s = B(null);
1085
1086
  return We("buttonGroup", {
1086
1087
  isInGroup: !0,
1087
1088
  getButtonIndex: (l) => s.value ? Array.from(s.value.children).indexOf(l) : -1,
1088
1089
  getButtonCount: () => s.value?.children.length || 0
1089
- }), (l, n) => (m(), g("div", {
1090
+ }), (l, n) => (m(), h("div", {
1090
1091
  class: "inline-flex rounded-md shadow-xs",
1091
1092
  ref_key: "groupRef",
1092
1093
  ref: s
@@ -1094,13 +1095,13 @@ const X = new xs(), cn = {
1094
1095
  O(l.$slots, "default")
1095
1096
  ], 512));
1096
1097
  }
1097
- }, Zs = { class: "divide-y divide-gray-300 rounded-lg border border-gray-300 text-gray-700 bg-gray-100" }, qs = {
1098
+ }, Ks = { class: "divide-y divide-gray-300 rounded-lg border border-gray-300 text-gray-700 bg-gray-100" }, Gs = {
1098
1099
  key: 0,
1099
- class: "p-5"
1100
- }, Us = {
1100
+ class: "px-[30px] py-5"
1101
+ }, Ws = {
1101
1102
  key: 1,
1102
1103
  class: "p-5"
1103
- }, dn = {
1104
+ }, hn = {
1104
1105
  __name: "SparkCard",
1105
1106
  props: {
1106
1107
  padded: {
@@ -1114,24 +1115,24 @@ const X = new xs(), cn = {
1114
1115
  },
1115
1116
  setup(e) {
1116
1117
  const s = e;
1117
- return (t, o) => (m(), g("div", Zs, [
1118
- t.$slots.header ? (m(), g("div", qs, [
1118
+ return (t, o) => (m(), h("div", Ks, [
1119
+ t.$slots.header ? (m(), h("div", Gs, [
1119
1120
  O(t.$slots, "header")
1120
- ])) : T("", !0),
1121
+ ])) : L("", !0),
1121
1122
  f("div", {
1122
1123
  class: H([s.padded ? s.paddedClass : ""])
1123
1124
  }, [
1124
1125
  O(t.$slots, "default")
1125
1126
  ], 2),
1126
- t.$slots.footer ? (m(), g("div", Us, [
1127
+ t.$slots.footer ? (m(), h("div", Ws, [
1127
1128
  O(t.$slots, "footer")
1128
- ])) : T("", !0)
1129
+ ])) : L("", !0)
1129
1130
  ]));
1130
1131
  }
1131
- }, Ks = { class: "px-4 pt-5 pb-4 sm:p-6" }, Gs = {
1132
+ }, Ys = { class: "px-4 pt-5 pb-4 sm:p-6" }, Xs = {
1132
1133
  key: 0,
1133
1134
  class: "text-lg font-medium text-gray-900"
1134
- }, Ws = {
1135
+ }, Js = {
1135
1136
  __name: "SparkModalDialog",
1136
1137
  props: {
1137
1138
  title: {
@@ -1181,7 +1182,7 @@ const X = new xs(), cn = {
1181
1182
  "input"
1182
1183
  ],
1183
1184
  setup(e) {
1184
- const s = e, t = S(() => !s.buttons || s.buttons.length === 0 ? [{ text: "OK", variant: "primary", event: "ok" }] : s.buttons), o = S(() => {
1185
+ const s = e, t = C(() => !s.buttons || s.buttons.length === 0 ? [{ text: "OK", variant: "primary", event: "ok" }] : s.buttons), o = C(() => {
1185
1186
  switch (t.value.length) {
1186
1187
  case 1:
1187
1188
  return "sm:grid sm:grid-flow-row-dense";
@@ -1197,12 +1198,12 @@ const X = new xs(), cn = {
1197
1198
  success: "farCheckCircle",
1198
1199
  warning: "farExclamationTriangle",
1199
1200
  danger: "farCircleXmark"
1200
- }, n = S(() => s.icon || l[s.type]), a = S(() => ({
1201
+ }, n = C(() => s.icon || l[s.type]), a = C(() => ({
1201
1202
  info: "bg-blue-100",
1202
1203
  success: "bg-green-100",
1203
1204
  warning: "bg-yellow-100",
1204
1205
  danger: "bg-red-100"
1205
- })[s.type]), c = S(() => ({
1206
+ })[s.type]), c = C(() => ({
1206
1207
  info: "text-blue-400",
1207
1208
  success: "text-green-400",
1208
1209
  warning: "text-yellow-400",
@@ -1210,35 +1211,35 @@ const X = new xs(), cn = {
1210
1211
  })[s.type]);
1211
1212
  return (r, i) => {
1212
1213
  const u = A("font-awesome-icon");
1213
- return m(), g("div", Ks, [
1214
- n.value ? (m(), g("div", {
1214
+ return m(), h("div", Ys, [
1215
+ n.value ? (m(), h("div", {
1215
1216
  key: 0,
1216
1217
  class: H(["mx-auto flex size-12 items-center justify-center rounded-full", a.value])
1217
1218
  }, [
1218
1219
  b(u, {
1219
- icon: w(F)[n.value],
1220
+ icon: x(F)[n.value],
1220
1221
  class: H(["h-5 w-5", c.value])
1221
1222
  }, null, 8, ["icon", "class"])
1222
- ], 2)) : T("", !0),
1223
+ ], 2)) : L("", !0),
1223
1224
  f("div", {
1224
1225
  class: H(["text-center", { "mt-3 sm:mt-5": n.value }])
1225
1226
  }, [
1226
- e.title ? (m(), g("h3", Gs, L(e.title), 1)) : T("", !0),
1227
- e.message ? (m(), g("div", {
1227
+ e.title ? (m(), h("h3", Xs, P(e.title), 1)) : L("", !0),
1228
+ e.message ? (m(), h("div", {
1228
1229
  key: 1,
1229
1230
  class: H([{ "mt-2": e.title }, "text-sm text-gray-500"])
1230
- }, L(e.message), 3)) : T("", !0)
1231
+ }, P(e.message), 3)) : L("", !0)
1231
1232
  ], 2),
1232
1233
  f("div", {
1233
1234
  class: H(["mt-5 sm:mt-6", o.value])
1234
1235
  }, [
1235
- (m(!0), g(R, null, z(t.value, (d, p) => (m(), V(w(G), {
1236
+ (m(!0), h(R, null, D(t.value, (d, p) => (m(), V(x(G), {
1236
1237
  key: p,
1237
1238
  variant: d.variant,
1238
- onClick: (y) => r.$emit(d.event, d)
1239
+ onClick: (v) => r.$emit(d.event, d)
1239
1240
  }, {
1240
- default: C(() => [
1241
- B(L(d.text), 1)
1241
+ default: T(() => [
1242
+ E(P(d.text), 1)
1242
1243
  ]),
1243
1244
  _: 2
1244
1245
  }, 1032, ["variant", "onClick"]))), 128))
@@ -1247,7 +1248,7 @@ const X = new xs(), cn = {
1247
1248
  };
1248
1249
  }
1249
1250
  };
1250
- class Ys {
1251
+ class Qs {
1251
1252
  constructor() {
1252
1253
  this.state = q({
1253
1254
  isVisible: !1,
@@ -1257,7 +1258,7 @@ class Ys {
1257
1258
  });
1258
1259
  }
1259
1260
  show = (s, t = {}, o = {}) => {
1260
- this.state.content = fe(s), this.state.props = t, this.state.eventHandlers = o, this.state.isVisible = !0;
1261
+ this.state.content = me(s), this.state.props = t, this.state.eventHandlers = o, this.state.isVisible = !0;
1261
1262
  };
1262
1263
  hide = () => {
1263
1264
  this.state.isVisible = !1, this.state.eventHandlers = {};
@@ -1284,7 +1285,7 @@ class Ys {
1284
1285
  confirmVariant: r = "primary"
1285
1286
  } = s;
1286
1287
  this.show(
1287
- Ws,
1288
+ Js,
1288
1289
  {
1289
1290
  title: o,
1290
1291
  message: l,
@@ -1305,20 +1306,20 @@ class Ys {
1305
1306
  );
1306
1307
  });
1307
1308
  }
1308
- const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto" }, Js = { class: "flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0" }, Qs = {
1309
+ const oe = new Qs(), eo = { class: "fixed inset-0 z-10 w-screen overflow-y-auto" }, to = { class: "flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0" }, so = {
1309
1310
  __name: "SparkModalContainer",
1310
1311
  setup(e) {
1311
- return (s, t) => (m(), V(w(Ae), {
1312
+ return (s, t) => (m(), V(x(Ae), {
1312
1313
  as: "template",
1313
- show: w(oe).state.isVisible
1314
+ show: x(oe).state.isVisible
1314
1315
  }, {
1315
- default: C(() => [
1316
- b(w(Fe), {
1316
+ default: T(() => [
1317
+ b(x(Fe), {
1317
1318
  class: "relative z-1000",
1318
- onClose: w(oe).hide
1319
+ onClose: x(oe).hide
1319
1320
  }, {
1320
- default: C(() => [
1321
- b(w(pe), {
1321
+ default: T(() => [
1322
+ b(x(fe), {
1322
1323
  as: "template",
1323
1324
  enter: "ease-out duration-300",
1324
1325
  "enter-from": "opacity-0",
@@ -1327,14 +1328,14 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1327
1328
  "leave-from": "opacity-100",
1328
1329
  "leave-to": "opacity-0"
1329
1330
  }, {
1330
- default: C(() => [...t[0] || (t[0] = [
1331
+ default: T(() => [...t[0] || (t[0] = [
1331
1332
  f("div", { class: "fixed inset-0 bg-gray-500/75 transition-opacity" }, null, -1)
1332
1333
  ])]),
1333
1334
  _: 1
1334
1335
  }),
1335
- f("div", Xs, [
1336
- f("div", Js, [
1337
- b(w(pe), {
1336
+ f("div", eo, [
1337
+ f("div", to, [
1338
+ b(x(fe), {
1338
1339
  as: "template",
1339
1340
  enter: "ease-out duration-300",
1340
1341
  "enter-from": "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",
@@ -1343,10 +1344,10 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1343
1344
  "leave-from": "opacity-100 translate-y-0 sm:scale-100",
1344
1345
  "leave-to": "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
1345
1346
  }, {
1346
- default: C(() => [
1347
- b(w(Oe), { class: "relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:min-w-lg sm:max-w-max" }, {
1348
- default: C(() => [
1349
- (m(), V(I(w(oe).state.content), Z(w(oe).state.props, Re(w(oe).state.eventHandlers)), null, 16))
1347
+ default: T(() => [
1348
+ b(x(Oe), { class: "relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:min-w-lg sm:max-w-max" }, {
1349
+ default: T(() => [
1350
+ (m(), V(N(x(oe).state.content), Z(x(oe).state.props, Re(x(oe).state.eventHandlers)), null, 16))
1350
1351
  ]),
1351
1352
  _: 1
1352
1353
  })
@@ -1362,7 +1363,7 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1362
1363
  _: 1
1363
1364
  }, 8, ["show"]));
1364
1365
  }
1365
- }, eo = { class: "fixed inset-0 flex" }, Se = {
1366
+ }, oo = { class: "fixed inset-0 flex" }, Se = {
1366
1367
  __name: "SparkOverlay",
1367
1368
  props: {
1368
1369
  position: {
@@ -1377,27 +1378,27 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1377
1378
  },
1378
1379
  emits: ["close"],
1379
1380
  setup(e, { emit: s }) {
1380
- const t = E(null), o = {
1381
+ const t = B(null), o = {
1381
1382
  xs: "w-[250px]",
1382
1383
  sm: "w-[300px]",
1383
1384
  md: "w-[450px]",
1384
1385
  lg: "w-[810px]",
1385
1386
  xl: "w-[1000px]"
1386
- }, l = e, n = s, a = S(() => o[l.overlayInstance.state.size] || o.md), c = () => {
1387
+ }, l = e, n = s, a = C(() => o[l.overlayInstance.state.size] || o.md), c = () => {
1387
1388
  l.overlayInstance.close(), n("close");
1388
1389
  };
1389
- return (r, i) => (m(), V(w(Ae), {
1390
+ return (r, i) => (m(), V(x(Ae), {
1390
1391
  show: e.overlayInstance.state.isVisible,
1391
1392
  as: "template"
1392
1393
  }, {
1393
- default: C(() => [
1394
- b(w(Fe), {
1394
+ default: T(() => [
1395
+ b(x(Fe), {
1395
1396
  initialFocus: t.value,
1396
1397
  class: "relative z-1000",
1397
1398
  onClose: c
1398
1399
  }, {
1399
- default: C(() => [
1400
- b(w(pe), {
1400
+ default: T(() => [
1401
+ b(x(fe), {
1401
1402
  as: "template",
1402
1403
  enter: "transition-opacity ease-linear duration-150",
1403
1404
  "enter-from": "opacity-0",
@@ -1406,13 +1407,13 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1406
1407
  "leave-from": "opacity-100",
1407
1408
  "leave-to": "opacity-0"
1408
1409
  }, {
1409
- default: C(() => [...i[0] || (i[0] = [
1410
+ default: T(() => [...i[0] || (i[0] = [
1410
1411
  f("div", { class: "fixed inset-0 bg-gray-600/30" }, null, -1)
1411
1412
  ])]),
1412
1413
  _: 1
1413
1414
  }),
1414
- f("div", eo, [
1415
- b(w(pe), {
1415
+ f("div", oo, [
1416
+ b(x(fe), {
1416
1417
  as: "template",
1417
1418
  enter: "transition ease-in-out duration-150 transform",
1418
1419
  "enter-from": e.position === "left" ? "-translate-x-full opacity-0" : "translate-x-full opacity-0",
@@ -1421,8 +1422,8 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1421
1422
  "leave-from": "translate-x-0 opacity-100",
1422
1423
  "leave-to": e.position === "left" ? "-translate-x-full opacity-0" : "translate-x-full opacity-0"
1423
1424
  }, {
1424
- default: C(() => [
1425
- b(w(Oe), {
1425
+ default: T(() => [
1426
+ b(x(Oe), {
1426
1427
  ref_key: "panelRef",
1427
1428
  ref: t,
1428
1429
  class: H([
@@ -1431,8 +1432,8 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1431
1432
  e.position === "left" ? "relative left-[10px]" : "absolute right-[10px] h-full"
1432
1433
  ])
1433
1434
  }, {
1434
- default: C(() => [
1435
- (m(), V(I(e.overlayInstance.state.content), Z(e.overlayInstance.state.props, Re(e.overlayInstance.state.eventHandlers)), null, 16))
1435
+ default: T(() => [
1436
+ (m(), V(N(e.overlayInstance.state.content), Z(e.overlayInstance.state.props, Re(e.overlayInstance.state.eventHandlers)), null, 16))
1436
1437
  ]),
1437
1438
  _: 1
1438
1439
  }, 8, ["class"])
@@ -1447,13 +1448,13 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1447
1448
  _: 1
1448
1449
  }, 8, ["show"]));
1449
1450
  }
1450
- }, to = (e) => {
1451
+ }, ao = (e) => {
1451
1452
  if (e.includes(".")) {
1452
1453
  const s = e.split(".");
1453
1454
  e = s[s.length - 1];
1454
1455
  }
1455
1456
  return e.replace(/_/g, " ");
1456
- }, so = (e, s, t) => {
1457
+ }, ro = (e, s, t) => {
1457
1458
  const o = s.querySelector(".relative");
1458
1459
  if (!o || o.querySelector(".spark-table-head-sorting"))
1459
1460
  return;
@@ -1468,7 +1469,7 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1468
1469
  sortedBy: "asc"
1469
1470
  }));
1470
1471
  });
1471
- }, oo = (e, s, t) => {
1472
+ }, no = (e, s, t) => {
1472
1473
  if (s.querySelector(".spark-table-head-filter"))
1473
1474
  return;
1474
1475
  const o = document.createElement("div"), l = document.createElement("input");
@@ -1483,19 +1484,19 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1483
1484
  await t.methods.removeParam(i);
1484
1485
  }, 200);
1485
1486
  l.addEventListener("keyup", (a) => n(e, a)), s.appendChild(o);
1486
- }, ao = (e, s, t) => {
1487
+ }, lo = (e, s, t) => {
1487
1488
  e.classList.add("spark-table-head"), t && t.columnSort && e.classList.add("can-sort"), t && t.columnFilter && e.classList.add("can-filter"), e.querySelector(".relative").classList.add("spark-table-head-title-wrapper");
1488
1489
  const l = e.querySelector(".colHeader");
1489
- l.classList.add("spark-table-head-title"), l.innerHTML = to(s);
1490
- }, ro = (e, s, t) => {
1490
+ l.classList.add("spark-table-head-title"), l.innerHTML = ao(s);
1491
+ }, io = (e, s, t) => {
1491
1492
  if (typeof e != "number")
1492
1493
  return e;
1493
1494
  if (e < 0)
1494
1495
  return;
1495
1496
  let o = 2;
1496
1497
  const l = t.methods.colToProp(e), n = t.methods.getSettingsForProp(l);
1497
- s.childElementCount === 1 && ((!n || !n.columnSort) && o--, (!n || !n.columnFilter) && o--, n && n.columnSort && so(l, s, t), n && n.columnFilter && oo(l, s, t)), (s.childElementCount === o || o === 0) && ao(s, l, n);
1498
- }, no = (e) => {
1498
+ s.childElementCount === 1 && ((!n || !n.columnSort) && o--, (!n || !n.columnFilter) && o--, n && n.columnSort && ro(l, s, t), n && n.columnFilter && no(l, s, t)), (s.childElementCount === o || o === 0) && lo(s, l, n);
1499
+ }, co = (e) => {
1499
1500
  if (!e.hotInstance || !e.hotInstance.rootElement)
1500
1501
  return;
1501
1502
  const s = e.params.orderBy, t = e.params.sortedBy, o = e.hotInstance.rootElement.querySelectorAll("thead th.can-sort .relative");
@@ -1505,7 +1506,7 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1505
1506
  const n = l.closest("th"), a = Array.from(n.parentElement.children).indexOf(n);
1506
1507
  e.methods.colToProp(a) === s && l.classList.add(t);
1507
1508
  });
1508
- }, lo = (e) => (s, t, o, l, n, a, c) => {
1509
+ }, uo = (e) => (s, t, o, l, n, a, c) => {
1509
1510
  t.innerHTML = "", t.classList.add("spark-table-cell-actions");
1510
1511
  const i = (c.rendererConfig || {}).actions || [];
1511
1512
  if (i.length === 0)
@@ -1514,21 +1515,21 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1514
1515
  d.classList.add("flex", "items-center", "gap-2"), i.forEach((p) => {
1515
1516
  if (p.condition && typeof p.condition == "function" && !p.condition(u))
1516
1517
  return;
1517
- const y = document.createElement("button");
1518
- if (y.type = "button", y.classList.add("spark-table-action-button"), p.icon) {
1518
+ const v = document.createElement("button");
1519
+ if (v.type = "button", v.classList.add("spark-table-action-button"), p.icon) {
1519
1520
  const k = document.createElement("span");
1520
- k.innerHTML = ce({ prefix: "far", iconName: p.icon }).html, k.classList.add("size-4"), y.appendChild(k);
1521
+ k.innerHTML = ce({ prefix: "far", iconName: p.icon }).html, k.classList.add("size-4"), v.appendChild(k);
1521
1522
  }
1522
1523
  if (p.label) {
1523
1524
  const k = document.createElement("span");
1524
- k.textContent = p.label, y.appendChild(k);
1525
+ k.textContent = p.label, v.appendChild(k);
1525
1526
  }
1526
- y.addEventListener("click", async (k) => {
1527
+ v.addEventListener("click", async (k) => {
1527
1528
  if (k.preventDefault(), k.stopPropagation(), p.confirm) {
1528
- const h = typeof p.confirm == "string" ? p.confirm : `Are you sure you want to ${p.label?.toLowerCase() || "perform this action"}?`;
1529
+ const $ = typeof p.confirm == "string" ? p.confirm : `Are you sure you want to ${p.label?.toLowerCase() || "perform this action"}?`;
1529
1530
  if (!await oe.confirm({
1530
1531
  title: p.confirmTitle,
1531
- message: h,
1532
+ message: $,
1532
1533
  type: p.confirmType,
1533
1534
  confirmText: p.confirmText,
1534
1535
  cancelText: p.cancelText,
@@ -1537,7 +1538,7 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1537
1538
  return;
1538
1539
  }
1539
1540
  p.event && e.methods.fireEvent(p.event, u), p.handler && typeof p.handler == "function" && p.handler(u);
1540
- }), d.appendChild(y);
1541
+ }), d.appendChild(v);
1541
1542
  }), t.appendChild(d);
1542
1543
  }, Ce = {
1543
1544
  green: "bg-green-100 text-green-800",
@@ -1548,7 +1549,7 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1548
1549
  purple: "bg-purple-100 text-purple-800",
1549
1550
  pink: "bg-pink-100 text-pink-800",
1550
1551
  indigo: "bg-indigo-100 text-indigo-800"
1551
- }, io = (e) => (s, t, o, l, n, a, c) => {
1552
+ }, po = (e) => (s, t, o, l, n, a, c) => {
1552
1553
  if (t.innerHTML = "", t.classList.add("spark-table-cell-badge"), !a)
1553
1554
  return;
1554
1555
  const i = (c.rendererConfig || {}).colorMap || {}, u = i[a] || i[a?.toLowerCase()] || "gray", d = Ce[u] || Ce.gray, p = document.createElement("span");
@@ -1570,7 +1571,7 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1570
1571
  blue: { bg: "bg-blue-100", text: "text-blue-500" },
1571
1572
  gray: { bg: "bg-gray-100", text: "text-gray-500" },
1572
1573
  purple: { bg: "bg-purple-100", text: "text-purple-500" }
1573
- }, co = (e) => {
1574
+ }, fo = (e) => {
1574
1575
  if (e == null || e === "")
1575
1576
  return !1;
1576
1577
  if (typeof e == "boolean")
@@ -1582,24 +1583,24 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1582
1583
  return s === "1" || s === "yes" || s === "true";
1583
1584
  }
1584
1585
  return !1;
1585
- }, uo = (e) => (s, t, o, l, n, a, c) => {
1586
+ }, mo = (e) => (s, t, o, l, n, a, c) => {
1586
1587
  t.innerHTML = "", t.classList.add("spark-table-cell-boolean");
1587
- const r = c.rendererConfig || {}, i = co(a), u = i ? r.trueIcon || "check" : r.falseIcon || "xmark", d = i ? r.trueColor || "green" : r.falseColor || "red", p = r.size || 32, y = r.iconPrefix || "far", k = $e[d] || $e.gray;
1588
+ const r = c.rendererConfig || {}, i = fo(a), u = i ? r.trueIcon || "check" : r.falseIcon || "xmark", d = i ? r.trueColor || "green" : r.falseColor || "red", p = r.size || 32, v = r.iconPrefix || "far", k = $e[d] || $e.gray;
1588
1589
  t.dataset.copyValue = i ? "true" : "false";
1589
- const h = document.createElement("div");
1590
- h.classList.add(
1590
+ const $ = document.createElement("div");
1591
+ $.classList.add(
1591
1592
  "inline-flex",
1592
1593
  "items-center",
1593
1594
  "justify-center",
1594
1595
  "rounded-full",
1595
1596
  k.bg,
1596
1597
  k.text
1597
- ), h.style.width = `${p}px`, h.style.height = `${p}px`;
1598
- const x = document.createElement("span");
1599
- x.innerHTML = ce({ prefix: y, iconName: u }).html, x.classList.add("flex", "items-center", "justify-center");
1600
- const P = Math.round(p * 0.5);
1601
- x.style.fontSize = `${P}px`, h.appendChild(x), t.appendChild(h);
1602
- }, po = (e, s = 2) => {
1598
+ ), $.style.width = `${p}px`, $.style.height = `${p}px`;
1599
+ const g = document.createElement("span");
1600
+ g.innerHTML = ce({ prefix: v, iconName: u }).html, g.classList.add("flex", "items-center", "justify-center");
1601
+ const _ = Math.round(p * 0.5);
1602
+ g.style.fontSize = `${_}px`, $.appendChild(g), t.appendChild($);
1603
+ }, ho = (e, s = 2) => {
1603
1604
  const t = Number(e);
1604
1605
  if (isNaN(t)) return null;
1605
1606
  const o = t < 0, n = Math.abs(t).toLocaleString("en-AU", {
@@ -1607,21 +1608,21 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1607
1608
  maximumFractionDigits: s
1608
1609
  });
1609
1610
  return o ? `-$${n}` : `$${n}`;
1610
- }, fo = (e) => (s, t, o, l, n, a, c) => {
1611
+ }, go = (e) => (s, t, o, l, n, a, c) => {
1611
1612
  t.innerHTML = "", t.classList.add("spark-table-cell-currency");
1612
1613
  const r = c.rendererConfig || {}, { decimals: i = 2, emptyText: u = "" } = r;
1613
1614
  if (a == null || a === "") {
1614
1615
  t.textContent = u;
1615
1616
  return;
1616
1617
  }
1617
- const d = po(a, i);
1618
+ const d = ho(a, i);
1618
1619
  if (d === null) {
1619
1620
  t.textContent = u;
1620
1621
  return;
1621
1622
  }
1622
1623
  const p = document.createElement("span");
1623
1624
  p.textContent = d, t.appendChild(p);
1624
- }, mo = (e) => (s, t, o, l, n, a, c) => {
1625
+ }, yo = (e) => (s, t, o, l, n, a, c) => {
1625
1626
  if (t.innerHTML = "", t.classList.add("spark-table-cell-link"), !a)
1626
1627
  return;
1627
1628
  const r = c.rendererConfig || {}, i = s.getSourceDataAtRow(s.toPhysicalRow(o));
@@ -1635,46 +1636,46 @@ const oe = new Ys(), Xs = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1635
1636
  sm: "h-6 w-6",
1636
1637
  md: "h-8 w-8",
1637
1638
  lg: "h-12 w-12"
1638
- }, ho = (e) => (s, t, o, l, n, a, c) => {
1639
+ }, vo = (e) => (s, t, o, l, n, a, c) => {
1639
1640
  if (t.innerHTML = "", t.classList.add("spark-table-cell-image"), !a)
1640
1641
  return;
1641
1642
  const r = c.rendererConfig || {}, i = s.getSourceDataAtRow(s.toPhysicalRow(o)), u = r.size || "md", d = Te[u] || Te.md, p = r.rounded !== !1;
1642
- let y = r.alt || "";
1643
- typeof r.alt == "string" && i[r.alt] && (y = i[r.alt]);
1643
+ let v = r.alt || "";
1644
+ typeof r.alt == "string" && i[r.alt] && (v = i[r.alt]);
1644
1645
  const k = document.createElement("img");
1645
- k.src = a, k.alt = y, k.classList.add(...d.split(" "), "object-cover"), p ? k.classList.add("rounded-full") : k.classList.add("rounded"), t.appendChild(k);
1646
- }, go = (e) => (s, t, o, l, n, a, c) => {
1646
+ k.src = a, k.alt = v, k.classList.add(...d.split(" "), "object-cover"), p ? k.classList.add("rounded-full") : k.classList.add("rounded"), t.appendChild(k);
1647
+ }, bo = (e) => (s, t, o, l, n, a, c) => {
1647
1648
  if (t.innerHTML = "", t.classList.add("spark-table-cell-date"), !a)
1648
1649
  return;
1649
1650
  const r = c.rendererConfig || {}, i = r.format || "short", u = r.locale || "en-US";
1650
1651
  let d = a;
1651
1652
  try {
1652
- const y = new Date(a);
1653
- isNaN(y.getTime()) ? d = a : typeof i == "function" ? d = i(y) : i === "short" ? d = y.toLocaleDateString(u) : i === "long" ? d = y.toLocaleDateString(u, {
1653
+ const v = new Date(a);
1654
+ isNaN(v.getTime()) ? d = a : typeof i == "function" ? d = i(v) : i === "short" ? d = v.toLocaleDateString(u) : i === "long" ? d = v.toLocaleDateString(u, {
1654
1655
  year: "numeric",
1655
1656
  month: "long",
1656
1657
  day: "numeric"
1657
- }) : i === "relative" ? d = yo(y) : i === "datetime" ? d = y.toLocaleString(u) : d = y.toLocaleDateString(u);
1658
- } catch (y) {
1659
- console.error("Error formatting date:", y), d = a;
1658
+ }) : i === "relative" ? d = xo(v) : i === "datetime" ? d = v.toLocaleString(u) : d = v.toLocaleDateString(u);
1659
+ } catch (v) {
1660
+ console.error("Error formatting date:", v), d = a;
1660
1661
  }
1661
1662
  const p = document.createElement("span");
1662
1663
  p.textContent = d, t.appendChild(p);
1663
1664
  };
1664
- function yo(e) {
1665
+ function xo(e) {
1665
1666
  const t = /* @__PURE__ */ new Date() - e, o = Math.floor(Math.abs(t) / 1e3), l = Math.floor(o / 60), n = Math.floor(l / 60), a = Math.floor(n / 24), c = Math.floor(a / 30), r = Math.floor(a / 365), i = t > 0;
1666
1667
  return o < 60 ? i ? "just now" : "in a moment" : l < 60 ? i ? `${l} minute${l > 1 ? "s" : ""} ago` : `in ${l} minute${l > 1 ? "s" : ""}` : n < 24 ? i ? `${n} hour${n > 1 ? "s" : ""} ago` : `in ${n} hour${n > 1 ? "s" : ""}` : a < 30 ? i ? `${a} day${a > 1 ? "s" : ""} ago` : `in ${a} day${a > 1 ? "s" : ""}` : c < 12 ? i ? `${c} month${c > 1 ? "s" : ""} ago` : `in ${c} month${c > 1 ? "s" : ""}` : i ? `${r} year${r > 1 ? "s" : ""} ago` : `in ${r} year${r > 1 ? "s" : ""}`;
1667
1668
  }
1668
- const vo = (e) => {
1669
+ const ko = (e) => {
1669
1670
  const s = ["th", "st", "nd", "rd"], t = e % 100;
1670
1671
  return e + (s[(t - 20) % 10] || s[t] || s[0]);
1671
- }, j = (e, s = 2) => String(e).padStart(s, "0"), ge = /* @__PURE__ */ new Map(), bo = (e, s) => {
1672
+ }, j = (e, s = 2) => String(e).padStart(s, "0"), ye = /* @__PURE__ */ new Map(), wo = (e, s) => {
1672
1673
  const t = `${e}:${JSON.stringify(s)}`;
1673
- return ge.has(t) || ge.set(t, new Intl.DateTimeFormat(e, s)), ge.get(t);
1674
+ return ye.has(t) || ye.set(t, new Intl.DateTimeFormat(e, s)), ye.get(t);
1674
1675
  }, ie = (e, s, t, o) => {
1675
- const a = bo(s, t).formatToParts(e).find((c) => c.type === o);
1676
+ const a = wo(s, t).formatToParts(e).find((c) => c.type === o);
1676
1677
  return a ? a.value : "";
1677
- }, xo = (e) => e.epochMilliseconds !== void 0 ? new Date(e.epochMilliseconds) : new Date(
1678
+ }, _o = (e) => e.epochMilliseconds !== void 0 ? new Date(e.epochMilliseconds) : new Date(
1678
1679
  e.year,
1679
1680
  e.month - 1,
1680
1681
  e.day,
@@ -1682,7 +1683,7 @@ const vo = (e) => {
1682
1683
  e.minute || 0,
1683
1684
  e.second || 0,
1684
1685
  e.millisecond || 0
1685
- ), ko = (e) => {
1686
+ ), So = (e) => {
1686
1687
  const s = e.hour || 0, t = s % 12 || 12, o = s >= 12;
1687
1688
  return {
1688
1689
  year: e.year,
@@ -1705,8 +1706,8 @@ const vo = (e) => {
1705
1706
  return "";
1706
1707
  const t = Math.round(e.offsetNanoseconds / 6e10), o = t >= 0 ? "+" : "-", l = Math.abs(t), n = Math.floor(l / 60), a = l % 60;
1707
1708
  return s ? `${o}${j(n)}:${j(a)}` : `${o}${j(n)}${j(a)}`;
1708
- }, wo = (e, s) => {
1709
- const t = ko(e), o = xo(e), l = t.dayOfWeek === 7 ? 0 : t.dayOfWeek;
1709
+ }, Co = (e, s) => {
1710
+ const t = So(e), o = _o(e), l = t.dayOfWeek === 7 ? 0 : t.dayOfWeek;
1710
1711
  return [
1711
1712
  // Year
1712
1713
  ["YYYY", () => String(t.year)],
@@ -1718,7 +1719,7 @@ const vo = (e) => {
1718
1719
  ["M", () => String(t.month)],
1719
1720
  // Day of month
1720
1721
  ["DD", () => j(t.day)],
1721
- ["Do", () => vo(t.day)],
1722
+ ["Do", () => ko(t.day)],
1722
1723
  ["D", () => String(t.day)],
1723
1724
  // Day of week
1724
1725
  ["dddd", () => ie(o, s, { weekday: "long" }, "weekday")],
@@ -1752,7 +1753,7 @@ const vo = (e) => {
1752
1753
  ["x", () => String(e.epochMilliseconds ?? o.getTime())],
1753
1754
  ["X", () => String(Math.floor((e.epochMilliseconds ?? o.getTime()) / 1e3))]
1754
1755
  ];
1755
- }, _o = (e, s, t = {}) => {
1756
+ }, $o = (e, s, t = {}) => {
1756
1757
  const { locale: o = "en-US" } = t;
1757
1758
  if (!e)
1758
1759
  return "";
@@ -1768,49 +1769,49 @@ const vo = (e) => {
1768
1769
  } catch (r) {
1769
1770
  return console.error("Failed to parse date string:", e, r), e;
1770
1771
  }
1771
- const n = wo(l, o), a = n.map(([r]) => r).join("|"), c = new RegExp(`\\[([^\\]]+)\\]|(${a})`, "g");
1772
+ const n = Co(l, o), a = n.map(([r]) => r).join("|"), c = new RegExp(`\\[([^\\]]+)\\]|(${a})`, "g");
1772
1773
  return s.replace(c, (r, i, u) => {
1773
1774
  if (i !== void 0)
1774
1775
  return i;
1775
1776
  const d = n.find(([p]) => p === u);
1776
1777
  return d ? d[1]() : r;
1777
1778
  });
1778
- }, So = (e, s = {}) => {
1779
+ }, To = (e, s = {}) => {
1779
1780
  const { fromTimezone: t, toTimezone: o } = s;
1780
1781
  if (!e)
1781
1782
  return null;
1782
1783
  const l = e.replace(" ", "T");
1783
1784
  return t && o ? Temporal.PlainDateTime.from(l).toZonedDateTime(t).withTimeZone(o) : t ? Temporal.PlainDateTime.from(l).toZonedDateTime(t) : Temporal.PlainDateTime.from(l);
1784
- }, Co = (e) => (s, t, o, l, n, a, c) => {
1785
+ }, Lo = (e) => (s, t, o, l, n, a, c) => {
1785
1786
  t.innerHTML = "", t.classList.add("spark-table-cell-datetime");
1786
1787
  const r = c.rendererConfig || {}, {
1787
1788
  format: i = "DD MMM YYYY, HH:mm",
1788
1789
  fromTimezone: u,
1789
1790
  toTimezone: d,
1790
1791
  locale: p = "en-US",
1791
- emptyText: y = ""
1792
+ emptyText: v = ""
1792
1793
  } = r;
1793
1794
  if (!a) {
1794
- t.textContent = y;
1795
+ t.textContent = v;
1795
1796
  return;
1796
1797
  }
1797
1798
  try {
1798
- const k = So(a, { fromTimezone: u, toTimezone: d });
1799
+ const k = To(a, { fromTimezone: u, toTimezone: d });
1799
1800
  if (!k) {
1800
- t.textContent = y;
1801
+ t.textContent = v;
1801
1802
  return;
1802
1803
  }
1803
- const h = _o(k, i, { locale: p }), x = document.createElement("span");
1804
- x.textContent = h, t.appendChild(x);
1804
+ const $ = $o(k, i, { locale: p }), g = document.createElement("span");
1805
+ g.textContent = $, t.appendChild(g);
1805
1806
  } catch (k) {
1806
1807
  console.error("Error formatting datetime:", k, { value: a, format: i }), t.textContent = a;
1807
1808
  }
1808
- }, $o = /* @__PURE__ */ new Map(), U = (e, s) => {
1809
- Kt(e, (t, o, l, n, a, c, r) => {
1810
- Gt.apply(null, [t, o, l, n, a, c, r]), s(t, o, l, n, a, c, r);
1811
- }), $o.set(e, s);
1812
- }, To = (e) => {
1813
- U("spark.actions", lo(e)), U("spark.badge", io()), U("spark.boolean", uo()), U("spark.currency", fo()), U("spark.link", mo()), U("spark.image", ho()), U("spark.date", go()), U("spark.datetime", Co()), U("style.capitalize", (s, t, o, l, n, a) => {
1809
+ }, Po = /* @__PURE__ */ new Map(), U = (e, s) => {
1810
+ Yt(e, (t, o, l, n, a, c, r) => {
1811
+ Xt.apply(null, [t, o, l, n, a, c, r]), s(t, o, l, n, a, c, r);
1812
+ }), Po.set(e, s);
1813
+ }, Mo = (e) => {
1814
+ U("spark.actions", uo(e)), U("spark.badge", po()), U("spark.boolean", mo()), U("spark.currency", go()), U("spark.link", yo()), U("spark.image", vo()), U("spark.date", bo()), U("spark.datetime", Lo()), U("style.capitalize", (s, t, o, l, n, a) => {
1814
1815
  if (!a || a.length === 0) {
1815
1816
  t.innerText = "";
1816
1817
  return;
@@ -1818,118 +1819,118 @@ const vo = (e) => {
1818
1819
  const c = document.createElement("span");
1819
1820
  c.innerHTML = a, c.classList.add("capitalize"), t.replaceChildren(c);
1820
1821
  });
1821
- }, Lo = () => {
1822
- }, Po = (e, s = {}) => {
1823
- const t = J(), o = ne(), l = s.namespace, n = l === null, a = s.syncToRoute !== !1, c = s.persistToStorage === !0, r = s.restoreOnMount !== !1, i = s.storageTTL || 7, u = n ? `spark-table:${o.path}` : `spark-table:${l}`, d = (v, $ = "") => {
1822
+ }, Ho = () => {
1823
+ }, Vo = (e, s = {}) => {
1824
+ const t = J(), o = ne(), l = s.namespace, n = l === null, a = s.syncToRoute !== !1, c = s.persistToStorage === !0, r = s.restoreOnMount !== !1, i = s.storageTTL || 7, u = n ? `spark-table:${o.path}` : `spark-table:${l}`, d = (y, S = "") => {
1824
1825
  const M = {};
1825
- return Object.keys(v).forEach((D) => {
1826
- const W = v[D], xe = $ ? `${$}[${D}]` : D;
1827
- W != null && (typeof W == "object" && !Array.isArray(W) ? Object.assign(M, d(W, xe)) : M[xe] = String(W));
1826
+ return Object.keys(y).forEach((z) => {
1827
+ const W = y[z], de = S ? `${S}[${z}]` : z;
1828
+ W != null && (typeof W == "object" && !Array.isArray(W) ? Object.assign(M, d(W, de)) : M[de] = String(W));
1828
1829
  }), M;
1829
1830
  }, p = () => {
1830
1831
  if (c)
1831
1832
  try {
1832
- const v = {
1833
+ const y = {
1833
1834
  params: e.params,
1834
1835
  timestamp: Date.now()
1835
1836
  };
1836
- localStorage.setItem(u, JSON.stringify(v));
1837
- } catch (v) {
1838
- console.warn("Failed to save table state to localStorage:", v);
1837
+ localStorage.setItem(u, JSON.stringify(y));
1838
+ } catch (y) {
1839
+ console.warn("Failed to save table state to localStorage:", y);
1839
1840
  }
1840
- }, y = () => {
1841
+ }, v = () => {
1841
1842
  if (!c) return null;
1842
1843
  try {
1843
- const v = localStorage.getItem(u);
1844
- if (!v) return null;
1845
- const $ = JSON.parse(v);
1844
+ const y = localStorage.getItem(u);
1845
+ if (!y) return null;
1846
+ const S = JSON.parse(y);
1846
1847
  if (i > 0) {
1847
- const M = Date.now() - $.timestamp, D = i * 24 * 60 * 60 * 1e3;
1848
- if (M > D)
1848
+ const M = Date.now() - S.timestamp, z = i * 24 * 60 * 60 * 1e3;
1849
+ if (M > z)
1849
1850
  return localStorage.removeItem(u), null;
1850
1851
  }
1851
- return $.params;
1852
- } catch (v) {
1853
- return console.warn("Failed to load table state from localStorage:", v), null;
1852
+ return S.params;
1853
+ } catch (y) {
1854
+ return console.warn("Failed to load table state from localStorage:", y), null;
1854
1855
  }
1855
1856
  }, k = () => {
1856
1857
  try {
1857
1858
  localStorage.removeItem(u);
1858
- } catch (v) {
1859
- console.warn("Failed to clear table state from localStorage:", v);
1859
+ } catch (y) {
1860
+ console.warn("Failed to clear table state from localStorage:", y);
1860
1861
  }
1861
- }, h = () => {
1862
+ }, $ = () => {
1862
1863
  if (!a) return;
1863
- const v = { ...o.query };
1864
+ const y = { ...o.query };
1864
1865
  if (n) {
1865
- Object.keys(v).forEach((M) => {
1866
- x(M) && delete v[M];
1866
+ Object.keys(y).forEach((M) => {
1867
+ g(M) && delete y[M];
1867
1868
  });
1868
- const $ = d(e.params);
1869
- Object.assign(v, $);
1869
+ const S = d(e.params);
1870
+ Object.assign(y, S);
1870
1871
  } else {
1871
- Object.keys(v).forEach((M) => {
1872
- (M.startsWith(`${l}[`) || M === l) && delete v[M];
1872
+ Object.keys(y).forEach((M) => {
1873
+ (M.startsWith(`${l}[`) || M === l) && delete y[M];
1873
1874
  });
1874
- const $ = d(e.params, l);
1875
- Object.assign(v, $);
1875
+ const S = d(e.params, l);
1876
+ Object.assign(y, S);
1876
1877
  }
1877
- t.replace({ query: v });
1878
- }, x = (v) => !!(["page", "limit", "search", "orderBy", "sortedBy"].includes(v) || v.includes("[")), P = (v, $) => {
1879
- if (["page", "limit"].includes(v) && $ !== null && $ !== void 0) {
1880
- const D = parseInt($, 10);
1881
- return isNaN(D) ? $ : D;
1878
+ t.replace({ query: y });
1879
+ }, g = (y) => !!(["page", "limit", "search", "orderBy", "sortedBy"].includes(y) || y.includes("[")), _ = (y, S) => {
1880
+ if (["page", "limit"].includes(y) && S !== null && S !== void 0) {
1881
+ const z = parseInt(S, 10);
1882
+ return isNaN(z) ? S : z;
1882
1883
  }
1883
- return $;
1884
- }, _ = () => {
1884
+ return S;
1885
+ }, w = () => {
1885
1886
  if (n)
1886
- Object.keys(o.query).forEach((v) => {
1887
- x(v) && (e.params[v] = P(v, o.query[v]));
1887
+ Object.keys(o.query).forEach((y) => {
1888
+ g(y) && (e.params[y] = _(y, o.query[y]));
1888
1889
  });
1889
1890
  else {
1890
- const v = `${l}[`;
1891
- Object.keys(o.query).forEach(($) => {
1892
- if ($.startsWith(v)) {
1893
- const M = $.slice(v.length, -1);
1894
- e.params[M] = P(M, o.query[$]);
1891
+ const y = `${l}[`;
1892
+ Object.keys(o.query).forEach((S) => {
1893
+ if (S.startsWith(y)) {
1894
+ const M = S.slice(y.length, -1);
1895
+ e.params[M] = _(M, o.query[S]);
1895
1896
  }
1896
1897
  });
1897
1898
  }
1898
1899
  };
1899
- return N(
1900
+ return I(
1900
1901
  () => e.params,
1901
1902
  () => {
1902
- a && h(), c && p();
1903
+ a && $(), c && p();
1903
1904
  },
1904
1905
  { deep: !0 }
1905
- ), r && be(() => {
1906
- let v = !1;
1906
+ ), r && xe(() => {
1907
+ let y = !1;
1907
1908
  if (a) {
1908
- let $ = !1;
1909
+ let S = !1;
1909
1910
  if (n)
1910
- $ = Object.keys(o.query).some((M) => x(M));
1911
+ S = Object.keys(o.query).some((M) => g(M));
1911
1912
  else {
1912
1913
  const M = `${l}[`;
1913
- $ = Object.keys(o.query).some(
1914
- (D) => D.startsWith(M)
1914
+ S = Object.keys(o.query).some(
1915
+ (z) => z.startsWith(M)
1915
1916
  );
1916
1917
  }
1917
- $ && (v = !0, _());
1918
+ S && (y = !0, w());
1918
1919
  }
1919
- if (!v && c) {
1920
- const $ = y();
1921
- $ && Object.keys($).length > 0 && (Object.keys($).forEach((M) => {
1922
- $[M] = P(M, $[M]);
1923
- }), Object.assign(e.params, $));
1920
+ if (!y && c) {
1921
+ const S = v();
1922
+ S && Object.keys(S).length > 0 && (Object.keys(S).forEach((M) => {
1923
+ S[M] = _(M, S[M]);
1924
+ }), Object.assign(e.params, S));
1924
1925
  }
1925
1926
  }), {
1926
- syncToRoute: h,
1927
- restoreFromRoute: _,
1927
+ syncToRoute: $,
1928
+ restoreFromRoute: w,
1928
1929
  saveToStorage: p,
1929
- loadFromStorage: y,
1930
+ loadFromStorage: v,
1930
1931
  clearStorage: k
1931
1932
  };
1932
- }, Mo = { class: "flex items-center gap-4 py-3" }, Ho = { class: "shrink-0" }, Vo = { class: "text-sm text-gray-700" }, Ro = { class: "font-medium" }, Bo = { class: "font-medium" }, Eo = { class: "font-medium" }, Ao = {
1933
+ }, Ro = { class: "flex items-center gap-4 py-3" }, Eo = { class: "shrink-0" }, Bo = { class: "text-sm text-gray-700" }, Ao = { class: "font-medium" }, Fo = { class: "font-medium" }, Oo = { class: "font-medium" }, zo = {
1933
1934
  __name: "SparkTablePaginationDetails",
1934
1935
  props: {
1935
1936
  sparkTable: {
@@ -1939,29 +1940,29 @@ const vo = (e) => {
1939
1940
  },
1940
1941
  setup(e) {
1941
1942
  const s = e;
1942
- return (t, o) => (m(), g("div", null, [
1943
- f("div", Mo, [
1944
- f("div", Ho, [
1945
- f("div", Vo, [
1946
- o[0] || (o[0] = B(" Showing ", -1)),
1947
- f("span", Ro, L(s.sparkTable.response.meta.from), 1),
1948
- o[1] || (o[1] = B(" to ", -1)),
1949
- f("span", Bo, L(s.sparkTable.response.meta.to), 1),
1950
- o[2] || (o[2] = B(" of ", -1)),
1951
- f("span", Eo, L(s.sparkTable.response.meta.total), 1),
1952
- o[3] || (o[3] = B(" results ", -1))
1943
+ return (t, o) => (m(), h("div", null, [
1944
+ f("div", Ro, [
1945
+ f("div", Eo, [
1946
+ f("div", Bo, [
1947
+ o[0] || (o[0] = E(" Showing ", -1)),
1948
+ f("span", Ao, P(s.sparkTable.response.meta.from), 1),
1949
+ o[1] || (o[1] = E(" to ", -1)),
1950
+ f("span", Fo, P(s.sparkTable.response.meta.to), 1),
1951
+ o[2] || (o[2] = E(" of ", -1)),
1952
+ f("span", Oo, P(s.sparkTable.response.meta.total), 1),
1953
+ o[3] || (o[3] = E(" results ", -1))
1953
1954
  ])
1954
1955
  ])
1955
1956
  ])
1956
1957
  ]));
1957
1958
  }
1958
- }, Fo = { class: "flex items-center gap-4 px-4 py-3" }, Oo = {
1959
+ }, Do = { class: "flex items-center gap-4 px-4 py-3" }, jo = {
1959
1960
  key: 0,
1960
1961
  class: "shrink-0 ml-auto"
1961
- }, zo = {
1962
+ }, Io = {
1962
1963
  class: "isolate inline-flex -space-x-px rounded-md shadow-xs bg-white",
1963
1964
  "aria-label": "Pagination"
1964
- }, Do = ["onClick"], jo = {
1965
+ }, No = ["onClick"], Zo = {
1965
1966
  __name: "SparkTablePaginationPaging",
1966
1967
  props: {
1967
1968
  sparkTable: {
@@ -1977,51 +1978,51 @@ const vo = (e) => {
1977
1978
  u < 1 || u > t.sparkTable.response.meta.last_page || o("paginate", {
1978
1979
  page: u
1979
1980
  });
1980
- }, a = S(() => t.sparkTable.params.page ? Math.ceil(t.sparkTable.params.page / 10) * 10 : 1), c = S(() => t.sparkTable.computed.ready ? Ot(
1981
+ }, a = C(() => t.sparkTable.params.page ? Math.ceil(t.sparkTable.params.page / 10) * 10 : 1), c = C(() => t.sparkTable.computed.ready ? jt(
1981
1982
  Math.floor((a.value - 1) / 10) * 10 + 1,
1982
1983
  a.value > t.sparkTable.response.meta.last_page ? t.sparkTable.response.meta.last_page + 1 : a.value + 1
1983
- ) : []), r = S(
1984
+ ) : []), r = C(
1984
1985
  () => t.sparkTable.params.page < Y(t.sparkTable.response.meta, "last_page", 1)
1985
- ), i = S(() => t.sparkTable.params.page > 1);
1986
+ ), i = C(() => t.sparkTable.params.page > 1);
1986
1987
  return (u, d) => {
1987
1988
  const p = A("font-awesome-icon");
1988
- return m(), g("div", null, [
1989
- f("div", Fo, [
1990
- c.value.length > 1 ? (m(), g("div", Oo, [
1989
+ return m(), h("div", null, [
1990
+ f("div", Do, [
1991
+ c.value.length > 1 ? (m(), h("div", jo, [
1991
1992
  f("div", null, [
1992
- f("nav", zo, [
1993
+ f("nav", Io, [
1993
1994
  f("a", {
1994
1995
  class: H([i.value ? "" : "disabled", "relative inline-flex items-center rounded-l-md px-2 py-[9px] text-gray-400 ring-1 ring-gray-300 ring-inset hover:bg-gray-50 focus:z-20 focus:outline-offset-0"]),
1995
1996
  href: "#",
1996
- onClick: d[0] || (d[0] = Q((y) => l(-1), ["prevent"]))
1997
+ onClick: d[0] || (d[0] = Q((v) => l(-1), ["prevent"]))
1997
1998
  }, [
1998
1999
  b(p, {
1999
- icon: w(F).farChevronLeft,
2000
+ icon: x(F).farChevronLeft,
2000
2001
  class: "size-5"
2001
2002
  }, null, 8, ["icon"])
2002
2003
  ], 2),
2003
- (m(!0), g(R, null, z(c.value, (y) => (m(), g("a", {
2004
- key: `page-${y}`,
2004
+ (m(!0), h(R, null, D(c.value, (v) => (m(), h("a", {
2005
+ key: `page-${v}`,
2005
2006
  href: "#",
2006
2007
  class: H([
2007
2008
  "relative inline-flex items-center px-4 py-[9px] text-sm font-semibold ring-1 ring-inset",
2008
- e.sparkTable.params.page === y ? "z-10 text-white bg-primary-600 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary-600 hover:bg-primary-600" : "text-gray-900 hover:bg-gray-50 ring-gray-300 focus:z-20 focus:outline-offset-0"
2009
+ e.sparkTable.params.page === v ? "z-10 text-white bg-primary-600 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary-600 hover:bg-primary-600" : "text-gray-900 hover:bg-gray-50 ring-gray-300 focus:z-20 focus:outline-offset-0"
2009
2010
  ]),
2010
- onClick: (k) => n(y)
2011
- }, L(y), 11, Do))), 128)),
2011
+ onClick: (k) => n(v)
2012
+ }, P(v), 11, No))), 128)),
2012
2013
  f("a", {
2013
2014
  class: H([r.value ? "" : "disabled", "relative inline-flex items-center rounded-r-md px-2 py-[9px] text-gray-400 ring-1 ring-gray-300 ring-inset hover:bg-gray-50 focus:z-20 focus:outline-offset-0"]),
2014
- onClick: d[1] || (d[1] = Q((y) => l(1), ["prevent"])),
2015
+ onClick: d[1] || (d[1] = Q((v) => l(1), ["prevent"])),
2015
2016
  href: "#"
2016
2017
  }, [
2017
2018
  b(p, {
2018
- icon: w(F).farChevronRight,
2019
+ icon: x(F).farChevronRight,
2019
2020
  class: "size-5"
2020
2021
  }, null, 8, ["icon"])
2021
2022
  ], 2)
2022
2023
  ])
2023
2024
  ])
2024
- ])) : T("", !0)
2025
+ ])) : L("", !0)
2025
2026
  ])
2026
2027
  ]);
2027
2028
  };
@@ -2031,7 +2032,7 @@ const vo = (e) => {
2031
2032
  for (const [o, l] of s)
2032
2033
  t[o] = l;
2033
2034
  return t;
2034
- }, No = { class: "spark-table-pagination-per-page" }, Io = {
2035
+ }, qo = { class: "spark-table-pagination-per-page" }, Uo = {
2035
2036
  __name: "SparkTablePaginationPerPage",
2036
2037
  props: {
2037
2038
  sparkTable: {
@@ -2041,7 +2042,7 @@ const vo = (e) => {
2041
2042
  },
2042
2043
  emits: ["paginate"],
2043
2044
  setup(e, { emit: s }) {
2044
- const t = e, o = s, l = S(() => t.sparkTable.options.perPages.map((a) => ({
2045
+ const t = e, o = s, l = C(() => t.sparkTable.options.perPages.map((a) => ({
2045
2046
  label: String(a),
2046
2047
  value: a
2047
2048
  }))), n = (a) => {
@@ -2052,7 +2053,7 @@ const vo = (e) => {
2052
2053
  };
2053
2054
  return (a, c) => {
2054
2055
  const r = A("FormKit");
2055
- return m(), g("div", No, [
2056
+ return m(), h("div", qo, [
2056
2057
  b(r, {
2057
2058
  "model-value": e.sparkTable.params.limit,
2058
2059
  type: "select",
@@ -2065,7 +2066,7 @@ const vo = (e) => {
2065
2066
  ]);
2066
2067
  };
2067
2068
  }
2068
- }, Zo = /* @__PURE__ */ ee(Io, [["__scopeId", "data-v-9ef8544b"]]), Pe = {
2069
+ }, Ko = /* @__PURE__ */ ee(Uo, [["__scopeId", "data-v-9ef8544b"]]), Pe = {
2069
2070
  __name: "SparkTableToolbar",
2070
2071
  props: {
2071
2072
  position: {
@@ -2075,18 +2076,18 @@ const vo = (e) => {
2075
2076
  }
2076
2077
  },
2077
2078
  setup(e) {
2078
- const s = e, t = Be(), o = S(() => !!t.default), l = S(() => {
2079
+ const s = e, t = Ee(), o = C(() => !!t.default), l = C(() => {
2079
2080
  const n = "spark-table-toolbar flex flex-wrap items-center gap-x-5 w-full";
2080
2081
  return s.position === "footer" ? `${n} spark-table-toolbar-footer justify-between` : `${n} spark-table-toolbar-header gap-y-5 py-5`;
2081
2082
  });
2082
- return (n, a) => o.value ? (m(), g("div", {
2083
+ return (n, a) => o.value ? (m(), h("div", {
2083
2084
  key: 0,
2084
2085
  class: H(l.value)
2085
2086
  }, [
2086
2087
  O(n.$slots, "default")
2087
- ], 2)) : T("", !0);
2088
+ ], 2)) : L("", !0);
2088
2089
  }
2089
- }, qo = { class: "spark-table-search" }, Uo = {
2090
+ }, Go = { class: "spark-table-search" }, Wo = {
2090
2091
  __name: "SparkTableSearch",
2091
2092
  props: {
2092
2093
  /** SparkTable instance object */
@@ -2105,7 +2106,7 @@ const vo = (e) => {
2105
2106
  }
2106
2107
  },
2107
2108
  setup(e) {
2108
- const s = e, t = E(""), o = s.config.param || "search";
2109
+ const s = e, t = B(""), o = s.config.param || "search";
2109
2110
  s.sparkTable.params[o] ? t.value = s.sparkTable.params[o] : s.config.initialValue && (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
2110
2111
  [o]: s.config.initialValue
2111
2112
  }));
@@ -2115,23 +2116,23 @@ const vo = (e) => {
2115
2116
  [o]: a
2116
2117
  }) : s.sparkTable.methods.removeParam(o);
2117
2118
  }, s.config.debounce || 300);
2118
- N(t, (a) => {
2119
+ I(t, (a) => {
2119
2120
  l(a);
2120
2121
  });
2121
2122
  const n = s.config.placeholder || "Search...";
2122
- return N(
2123
+ return I(
2123
2124
  () => s.sparkTable.params[o],
2124
2125
  (a) => {
2125
2126
  a && a !== t.value ? t.value = a : !a && t.value && (t.value = "");
2126
2127
  }
2127
2128
  ), (a, c) => {
2128
2129
  const r = A("FormKit");
2129
- return m(), g("div", qo, [
2130
+ return m(), h("div", Go, [
2130
2131
  b(r, Z({
2131
2132
  modelValue: t.value,
2132
2133
  "onUpdate:modelValue": c[0] || (c[0] = (i) => t.value = i),
2133
2134
  type: "text",
2134
- placeholder: w(n),
2135
+ placeholder: x(n),
2135
2136
  suffixIcon: "search",
2136
2137
  "outer-class": "!mb-0",
2137
2138
  "wrapper-class": "!mb-0",
@@ -2140,7 +2141,7 @@ const vo = (e) => {
2140
2141
  ]);
2141
2142
  };
2142
2143
  }
2143
- }, Ko = /* @__PURE__ */ ee(Uo, [["__scopeId", "data-v-976170dc"]]), Go = { class: "spark-table-filter-select" }, Wo = {
2144
+ }, Yo = /* @__PURE__ */ ee(Wo, [["__scopeId", "data-v-976170dc"]]), Xo = { class: "spark-table-filter-select" }, Jo = {
2144
2145
  __name: "SparkTableFilterSelect",
2145
2146
  props: {
2146
2147
  /** SparkTable instance object */
@@ -2156,32 +2157,32 @@ const vo = (e) => {
2156
2157
  }
2157
2158
  },
2158
2159
  setup(e) {
2159
- const s = e, t = E(""), o = s.config.param || `filter[${s.config.key}]`;
2160
+ const s = e, t = B(""), o = s.config.param || `filter[${s.config.key}]`;
2160
2161
  s.sparkTable.params[o] ? t.value = s.sparkTable.params[o] : s.config.initialValue !== void 0 && s.config.initialValue !== null && (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
2161
2162
  [o]: s.config.initialValue
2162
2163
  }));
2163
- const l = s.config.label || null, n = S(() => [
2164
+ const l = s.config.label || null, n = C(() => [
2164
2165
  { label: s.config.placeholder || "All", value: "" },
2165
2166
  ...s.config.options
2166
2167
  ]);
2167
- return N(t, (a) => {
2168
+ return I(t, (a) => {
2168
2169
  a ? s.sparkTable.methods.applyParams({
2169
2170
  page: 1,
2170
2171
  [o]: a
2171
2172
  }) : s.sparkTable.methods.removeParam(o);
2172
- }), N(
2173
+ }), I(
2173
2174
  () => s.sparkTable.params[o],
2174
2175
  (a) => {
2175
2176
  a != null && a !== "" ? t.value !== a && (t.value = a) : t.value && (t.value = "");
2176
2177
  }
2177
2178
  ), (a, c) => {
2178
2179
  const r = A("FormKit");
2179
- return m(), g("div", Go, [
2180
+ return m(), h("div", Xo, [
2180
2181
  b(r, Z({
2181
2182
  modelValue: t.value,
2182
2183
  "onUpdate:modelValue": c[0] || (c[0] = (i) => t.value = i),
2183
2184
  type: "select",
2184
- label: w(l),
2185
+ label: x(l),
2185
2186
  options: n.value,
2186
2187
  placeholder: e.config.placeholder || "All",
2187
2188
  "outer-class": "!mb-0",
@@ -2190,10 +2191,10 @@ const vo = (e) => {
2190
2191
  ]);
2191
2192
  };
2192
2193
  }
2193
- }, Yo = /* @__PURE__ */ ee(Wo, [["__scopeId", "data-v-642dbc69"]]), Xo = { class: "spark-table-filter-buttons" }, Jo = {
2194
+ }, Qo = /* @__PURE__ */ ee(Jo, [["__scopeId", "data-v-642dbc69"]]), ea = { class: "spark-table-filter-buttons" }, ta = {
2194
2195
  key: 0,
2195
2196
  class: "spark-table-filter-buttons-label"
2196
- }, Qo = {
2197
+ }, sa = {
2197
2198
  __name: "SparkTableFilterButtons",
2198
2199
  props: {
2199
2200
  /** SparkTable instance object */
@@ -2209,7 +2210,7 @@ const vo = (e) => {
2209
2210
  }
2210
2211
  },
2211
2212
  setup(e) {
2212
- const s = e, t = E(null), o = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`;
2213
+ const s = e, t = B(null), o = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`;
2213
2214
  s.sparkTable.params[l] !== void 0 ? t.value = s.sparkTable.params[l] : s.config.initialValue !== void 0 && (t.value = s.config.initialValue, s.config.initialValue !== null && s.sparkTable.methods.applyParams({
2214
2215
  [l]: s.config.initialValue
2215
2216
  }));
@@ -2219,23 +2220,24 @@ const vo = (e) => {
2219
2220
  [l]: c
2220
2221
  });
2221
2222
  };
2222
- return N(
2223
+ return I(
2223
2224
  () => s.sparkTable.params[l],
2224
2225
  (c) => {
2225
2226
  (c == null || c === "") && t.value ? t.value = null : c !== t.value && (t.value = c);
2226
2227
  }
2227
- ), (c, r) => (m(), g("div", Xo, [
2228
- w(o) ? (m(), g("span", Jo, L(w(o)), 1)) : T("", !0),
2229
- b(Is, { class: "isolate" }, {
2230
- default: C(() => [
2231
- (m(!0), g(R, null, z(e.config.options, (i) => (m(), V(G, {
2228
+ ), (c, r) => (m(), h("div", ea, [
2229
+ x(o) ? (m(), h("span", ta, P(x(o)), 1)) : L("", !0),
2230
+ b(Us, { class: "isolate" }, {
2231
+ default: T(() => [
2232
+ (m(!0), h(R, null, D(e.config.options, (i) => (m(), V(G, {
2232
2233
  key: i.value,
2233
2234
  size: "xl",
2235
+ "button-class": "px-3.5",
2234
2236
  variant: n(i.value) ? "primary" : "secondary",
2235
2237
  onClick: (u) => a(i.value)
2236
2238
  }, {
2237
- default: C(() => [
2238
- B(L(i.label), 1)
2239
+ default: T(() => [
2240
+ E(P(i.label), 1)
2239
2241
  ]),
2240
2242
  _: 2
2241
2243
  }, 1032, ["variant", "onClick"]))), 128))
@@ -2244,7 +2246,7 @@ const vo = (e) => {
2244
2246
  })
2245
2247
  ]));
2246
2248
  }
2247
- }, ea = /* @__PURE__ */ ee(Qo, [["__scopeId", "data-v-0fcd0cce"]]), ta = { class: "spark-table-date-picker" }, sa = {
2249
+ }, oa = /* @__PURE__ */ ee(sa, [["__scopeId", "data-v-01a49899"]]), aa = { class: "spark-table-date-picker" }, ra = {
2248
2250
  __name: "SparkTableDatePicker",
2249
2251
  props: {
2250
2252
  /** SparkTable instance object */
@@ -2260,15 +2262,15 @@ const vo = (e) => {
2260
2262
  }
2261
2263
  },
2262
2264
  setup(e) {
2263
- const s = e, t = E(null), o = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`, n = E(`${l}-0`);
2265
+ const s = e, t = B(null), o = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`, n = B(`${l}-0`);
2264
2266
  return s.sparkTable.params[l] ? t.value = s.sparkTable.params[l] : s.config.initialValue ? (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
2265
2267
  [l]: s.config.initialValue
2266
- })) : t.value = null, N(t, (a) => {
2268
+ })) : t.value = null, I(t, (a) => {
2267
2269
  a ? s.sparkTable.methods.applyParams({
2268
2270
  page: 1,
2269
2271
  [l]: a
2270
2272
  }) : s.sparkTable.methods.removeParam(l);
2271
- }), N(
2273
+ }), I(
2272
2274
  () => s.sparkTable.params[l],
2273
2275
  (a) => {
2274
2276
  if ((a == null || a === "") && t.value) {
@@ -2279,14 +2281,14 @@ const vo = (e) => {
2279
2281
  }
2280
2282
  ), (a, c) => {
2281
2283
  const r = A("FormKit");
2282
- return m(), g("div", ta, [
2284
+ return m(), h("div", aa, [
2283
2285
  (m(), V(r, Z({
2284
2286
  key: n.value,
2285
2287
  modelValue: t.value,
2286
2288
  "onUpdate:modelValue": c[0] || (c[0] = (i) => t.value = i),
2287
2289
  type: "datepicker",
2288
2290
  "picker-only": "",
2289
- label: w(o),
2291
+ label: x(o),
2290
2292
  placeholder: e.config.placeholder || "Select date",
2291
2293
  overlay: !0,
2292
2294
  "value-format": "YYYY-MM-DD",
@@ -2297,7 +2299,7 @@ const vo = (e) => {
2297
2299
  ]);
2298
2300
  };
2299
2301
  }
2300
- }, oa = /* @__PURE__ */ ee(sa, [["__scopeId", "data-v-44ef9cb8"]]), aa = { class: "spark-table-reset" }, ra = { key: 1 }, na = {
2302
+ }, na = /* @__PURE__ */ ee(ra, [["__scopeId", "data-v-44ef9cb8"]]), la = { class: "spark-table-reset" }, ia = { key: 1 }, ca = {
2301
2303
  __name: "SparkTableReset",
2302
2304
  props: {
2303
2305
  /** SparkTable instance object */
@@ -2335,34 +2337,38 @@ const vo = (e) => {
2335
2337
  };
2336
2338
  return (o, l) => {
2337
2339
  const n = A("font-awesome-icon");
2338
- return m(), g("div", aa, [
2340
+ return m(), h("div", la, [
2339
2341
  b(G, {
2340
2342
  onClick: t,
2341
2343
  variant: "secondary",
2344
+ "button-class": "px-3.5",
2342
2345
  size: "xl"
2343
2346
  }, {
2344
- default: C(() => [
2347
+ default: T(() => [
2345
2348
  e.config.icon ? (m(), V(n, {
2346
2349
  key: 0,
2347
2350
  icon: ["far", e.config.icon],
2348
2351
  class: H({ "mr-1.5": e.config.label })
2349
- }, null, 8, ["icon", "class"])) : T("", !0),
2350
- e.config.label ? (m(), g("span", ra, L(e.config.label), 1)) : T("", !0)
2352
+ }, null, 8, ["icon", "class"])) : L("", !0),
2353
+ e.config.label ? (m(), h("span", ia, P(e.config.label), 1)) : L("", !0)
2351
2354
  ]),
2352
2355
  _: 1
2353
2356
  })
2354
2357
  ]);
2355
2358
  };
2356
2359
  }
2357
- }, la = /* @__PURE__ */ ee(na, [["__scopeId", "data-v-45343158"]]), ia = { class: "spark-table" }, ca = {
2360
+ }, ua = /* @__PURE__ */ ee(ca, [["__scopeId", "data-v-0894e3bf"]]), da = { class: "spark-table" }, pa = {
2358
2361
  key: 1,
2359
2362
  class: "pt-5"
2360
- }, ua = { class: "flex items-center gap-x-3" }, ve = {
2363
+ }, fa = {
2364
+ key: 2,
2365
+ class: "flex flex-col items-center justify-center py-16 text-gray-500 rounded-md border border-gray-300 bg-white"
2366
+ }, ma = { class: "flex items-center gap-x-3 ml-auto" }, be = {
2361
2367
  perPages: [15, 30, 50, 100, 200, 500],
2362
2368
  limit: 15
2363
- }, da = {
2369
+ }, ha = {
2364
2370
  page: 1,
2365
- limit: ve.limit
2371
+ limit: be.limit
2366
2372
  }, Me = {
2367
2373
  colHeaders: !0,
2368
2374
  filters: !1,
@@ -2373,7 +2379,7 @@ const vo = (e) => {
2373
2379
  tableClassName: "spark-table-table",
2374
2380
  readOnlyCellClassName: "read-only",
2375
2381
  licenseKey: "non-commercial-and-evaluation"
2376
- }, pn = {
2382
+ }, gn = {
2377
2383
  __name: "SparkTable",
2378
2384
  props: {
2379
2385
  url: {
@@ -2397,13 +2403,13 @@ const vo = (e) => {
2397
2403
  params: {
2398
2404
  type: Object,
2399
2405
  default() {
2400
- return da;
2406
+ return ha;
2401
2407
  }
2402
2408
  },
2403
2409
  options: {
2404
2410
  type: Object,
2405
2411
  default() {
2406
- return ve;
2412
+ return be;
2407
2413
  }
2408
2414
  },
2409
2415
  settings: {
@@ -2438,18 +2444,18 @@ const vo = (e) => {
2438
2444
  ],
2439
2445
  setup(e, { expose: s, emit: t }) {
2440
2446
  const o = e;
2441
- Ut(), de(Nt), de(It), de(Zt), Y(o, "settings.nestedHeaders") && de(qt);
2442
- const l = t, n = Ve("axios"), a = E(null), c = E(!1), r = E(null);
2447
+ Wt(), pe(qt), pe(Ut), pe(Kt), Y(o, "settings.nestedHeaders") && pe(Gt);
2448
+ const l = t, n = Ve("axios"), a = B(null), c = B(!1), r = B(null);
2443
2449
  let i = !1;
2444
2450
  const u = {
2445
- search: Ko,
2446
- filterSelect: Yo,
2447
- filterButtons: ea,
2448
- datePicker: oa,
2449
- reset: la
2451
+ search: Yo,
2452
+ filterSelect: Qo,
2453
+ filterButtons: oa,
2454
+ datePicker: na,
2455
+ reset: ua
2450
2456
  }, d = q({
2451
2457
  hotInstance: null,
2452
- url: S(() => o.url),
2458
+ url: C(() => o.url),
2453
2459
  plugins: o.plugins,
2454
2460
  response: {},
2455
2461
  params: {
@@ -2457,144 +2463,146 @@ const vo = (e) => {
2457
2463
  limit: o.options.limit
2458
2464
  },
2459
2465
  methods: {
2460
- applyParams: (h) => {
2461
- h && (d.params = {
2466
+ applyParams: (g) => {
2467
+ g && (d.params = {
2462
2468
  ...d.params,
2463
- ...h
2469
+ ...g
2464
2470
  }, l("page-change", d.params));
2465
2471
  },
2466
- removeParam: async (h) => {
2467
- d.params[h] && (delete d.params[h], await d.methods.loadTable());
2472
+ removeParam: async (g) => {
2473
+ d.params[g] && (delete d.params[g], await d.methods.loadTable());
2468
2474
  },
2469
- loadTable: async (h) => {
2475
+ loadTable: async (g) => {
2470
2476
  if (!(!a.value || !a.value.hotInstance)) {
2471
- c.value = !0, r.value = null, l("loading", !0), me.start(), d.hotInstance = a.value.hotInstance;
2477
+ c.value = !0, r.value = null, l("loading", !0), he.start(), d.hotInstance = a.value.hotInstance;
2472
2478
  try {
2473
2479
  if (o.dataProvider) {
2474
- const _ = await o.dataProvider(d.computed.params);
2475
- d.response = o.dataTransformer(_, o);
2480
+ const y = await o.dataProvider(d.computed.params);
2481
+ d.response = o.dataTransformer(y, o);
2476
2482
  } else if (o.url) {
2477
- const _ = await n.get(o.url, {
2483
+ const y = await n.get(o.url, {
2478
2484
  params: d.computed.params
2479
2485
  });
2480
- d.response = o.dataTransformer(_, o);
2486
+ d.response = o.dataTransformer(y, o);
2481
2487
  } else {
2482
- console.error("No data provider or URL provided"), c.value = !1, l("loading", !1), me.done();
2488
+ console.error("No data provider or URL provided"), c.value = !1, l("loading", !1), he.done();
2483
2489
  return;
2484
2490
  }
2485
2491
  if (i) return;
2486
2492
  d.hotInstance.updateData(d.response.data), d.options.callback && typeof d.options.callback == "function" && await d.options.callback();
2487
- const x = d.hotInstance.getPlugin("autoColumnSize");
2488
- Y(o.settings, "columns", []).forEach((_, v) => {
2489
- _.width || x.calculateColumnsWidth(v, v, !0);
2493
+ const _ = d.hotInstance.getPlugin("autoColumnSize");
2494
+ Y(o.settings, "columns", []).forEach((y, S) => {
2495
+ y.width || _.calculateColumnsWidth(S, S, !0);
2490
2496
  }), l("load", {
2491
2497
  data: d.response.data,
2492
2498
  meta: d.response.meta
2493
- }), h && typeof h == "function" && h();
2494
- } catch (x) {
2495
- r.value = x, l("error", x), console.error("Error loading table data:", x);
2499
+ }), g && typeof g == "function" && g();
2500
+ } catch (_) {
2501
+ r.value = _, l("error", _), console.error("Error loading table data:", _);
2496
2502
  } finally {
2497
- c.value = !1, l("loading", !1), me.done();
2503
+ c.value = !1, l("loading", !1), he.done();
2498
2504
  }
2499
2505
  }
2500
2506
  },
2501
2507
  // can't use sparkTable.hotInstance here because the ref isn't ready
2502
- colToProp: (h) => a.value.hotInstance.colToProp(h),
2503
- fireEvent: (h, x) => {
2504
- l(h, x);
2508
+ colToProp: (g) => a.value.hotInstance.colToProp(g),
2509
+ fireEvent: (g, _) => {
2510
+ l(g, _);
2505
2511
  },
2506
- getSettingsForProp: (h) => zt(Y(d.tableSettings, "columns"), { data: h }),
2512
+ getSettingsForProp: (g) => It(Y(d.tableSettings, "columns"), { data: g }),
2507
2513
  // Helper methods for easier param access
2508
2514
  getParams: () => d.computed.params,
2509
- getParam: (h) => d.computed.params[h],
2510
- setParam: (h, x) => {
2511
- d.methods.applyParams({ [h]: x });
2515
+ getParam: (g) => d.computed.params[g],
2516
+ setParam: (g, _) => {
2517
+ d.methods.applyParams({ [g]: _ });
2512
2518
  },
2513
- clearParam: (h) => d.methods.removeParam(h),
2514
- clearParams: (h) => {
2515
- (Array.isArray(h) ? h : [h]).forEach((P) => {
2516
- d.params[P] !== void 0 && delete d.params[P];
2519
+ clearParam: (g) => d.methods.removeParam(g),
2520
+ clearParams: (g) => {
2521
+ (Array.isArray(g) ? g : [g]).forEach((w) => {
2522
+ d.params[w] !== void 0 && delete d.params[w];
2517
2523
  }), d.methods.applyParams({ page: 1 });
2518
2524
  }
2519
2525
  },
2520
2526
  computed: {
2521
- params: S(() => ({
2527
+ params: C(() => ({
2522
2528
  ...o.params,
2523
2529
  ...d.params
2524
2530
  })),
2525
- ready: S(() => Dt(d, "response.meta.last_page"))
2531
+ ready: C(() => Nt(d, "response.meta.last_page"))
2526
2532
  },
2527
- options: S(() => ({
2528
- ...ve,
2533
+ options: C(() => ({
2534
+ ...be,
2529
2535
  ...o.options
2530
2536
  })),
2531
- tableSettings: S(() => ({
2537
+ tableSettings: C(() => ({
2532
2538
  ...Me,
2533
2539
  nestedHeaders: Y(o.settings, "nestedHeaders", []),
2534
2540
  ...!Y(o.settings, "nestedHeaders") && {
2535
- afterGetColHeader: (h, x) => ro(h, x, d)
2541
+ afterGetColHeader: (g, _) => io(g, _, d)
2536
2542
  },
2537
- afterChange: (h, x) => Lo(),
2538
- afterRender: () => no(d),
2543
+ afterChange: (g, _) => Ho(),
2544
+ afterRender: () => co(d),
2539
2545
  /**
2540
2546
  * Prevent columns with explicit width from being stretched
2541
2547
  * This hook fires BEFORE stretchH is applied, allowing us to cap specific columns
2542
2548
  * while letting others stretch normally
2543
2549
  */
2544
- beforeStretchingColumnWidth: (h, x) => {
2545
- const _ = Y(o.settings, "columns", [])[x];
2546
- return _ && _.width !== void 0 ? _.width : h;
2550
+ beforeStretchingColumnWidth: (g, _) => {
2551
+ const y = Y(o.settings, "columns", [])[_];
2552
+ return y && y.width !== void 0 ? y.width : g;
2547
2553
  },
2548
2554
  /**
2549
2555
  * Copy displayed cell content instead of raw data values
2550
2556
  * This ensures custom renderers copy their visual output, not the underlying data
2551
2557
  */
2552
- beforeCopy: (h, x) => {
2553
- const P = a.value?.hotInstance;
2554
- P && x.forEach((_) => {
2555
- for (let v = _.startRow; v <= _.endRow; v++)
2556
- for (let $ = _.startCol; $ <= _.endCol; $++) {
2557
- const M = P.getCell(v, $);
2558
- if (M) {
2559
- const D = v - x[0].startRow, W = $ - x[0].startCol;
2560
- h[D][W] = M.dataset.copyValue ?? M.textContent ?? "";
2558
+ beforeCopy: (g, _) => {
2559
+ const w = a.value?.hotInstance;
2560
+ w && _.forEach((y) => {
2561
+ for (let S = y.startRow; S <= y.endRow; S++)
2562
+ for (let M = y.startCol; M <= y.endCol; M++) {
2563
+ const z = w.getCell(S, M);
2564
+ if (z) {
2565
+ const W = S - _[0].startRow, de = M - _[0].startCol;
2566
+ g[W][de] = z.dataset.copyValue ?? z.textContent ?? "";
2561
2567
  }
2562
2568
  }
2563
2569
  });
2564
2570
  },
2565
2571
  ...o.settings
2566
2572
  }))
2567
- }), p = (h) => {
2568
- if (!h) return null;
2569
- switch (h.type) {
2573
+ }), p = C(
2574
+ () => d.computed.ready && d.response.data?.length === 0
2575
+ ), v = (g) => {
2576
+ if (!g) return null;
2577
+ switch (g.type) {
2570
2578
  case "search":
2571
- return h.param || "search";
2579
+ return g.param || "search";
2572
2580
  case "filterSelect":
2573
2581
  case "filterButtons":
2574
2582
  case "datePicker":
2575
- return h.param || `filter[${h.key}]`;
2583
+ return g.param || `filter[${g.key}]`;
2576
2584
  default:
2577
2585
  return null;
2578
2586
  }
2579
- }, y = (h) => h ? typeof h.enabled == "function" ? h.enabled(d.params) : h.enabled : !1, k = S(() => Object.entries(o.plugins).filter(([h, x]) => y(x)).map(([h, x]) => ({ name: h, config: x })));
2580
- if (N(
2587
+ }, k = (g) => g ? typeof g.enabled == "function" ? g.enabled(d.params) : g.enabled : !1, $ = C(() => Object.entries(o.plugins).filter(([g, _]) => k(_)).map(([g, _]) => ({ name: g, config: _ })));
2588
+ if (I(
2581
2589
  () => ({ ...d.params }),
2582
2590
  () => {
2583
- const h = [];
2584
- Object.values(o.plugins).forEach((x) => {
2585
- const P = p(x);
2586
- if (!P) return;
2587
- const _ = y(x), v = d.params[P] !== void 0;
2588
- !_ && v && h.push(P);
2589
- }), h.length > 0 && h.forEach((x) => {
2590
- delete d.params[x];
2591
+ const g = [];
2592
+ Object.values(o.plugins).forEach((_) => {
2593
+ const w = v(_);
2594
+ if (!w) return;
2595
+ const y = k(_), S = d.params[w] !== void 0;
2596
+ !y && S && g.push(w);
2597
+ }), g.length > 0 && g.forEach((_) => {
2598
+ delete d.params[_];
2591
2599
  });
2592
2600
  },
2593
2601
  { deep: !0, flush: "sync" }
2594
2602
  ), o.syncToRoute || o.persistToStorage) {
2595
- const h = typeof o.syncToRoute == "string";
2596
- Po(d, {
2597
- namespace: h ? o.syncToRoute : null,
2603
+ const g = typeof o.syncToRoute == "string";
2604
+ Vo(d, {
2605
+ namespace: g ? o.syncToRoute : null,
2598
2606
  syncToRoute: !!o.syncToRoute,
2599
2607
  persistToStorage: o.persistToStorage
2600
2608
  });
@@ -2611,78 +2619,94 @@ const vo = (e) => {
2611
2619
  await d.methods.loadTable();
2612
2620
  },
2613
2621
  { debounce: 50, maxWait: 1e3 }
2614
- ), N(
2622
+ ), I(
2615
2623
  () => o.url,
2616
- async (h, x) => {
2617
- h !== x && (d.params.page = 1, await d.methods.loadTable());
2624
+ async (g, _) => {
2625
+ g !== _ && (d.params.page = 1, await d.methods.loadTable());
2618
2626
  }
2619
- ), be(async () => {
2627
+ ), xe(async () => {
2620
2628
  await d.methods.loadTable(), l("ready");
2621
2629
  }), Ye(() => {
2622
2630
  i = !0;
2623
- }), To(d), s({
2631
+ }), Mo(d), s({
2624
2632
  refresh: () => d.methods.loadTable(),
2625
2633
  getParams: () => d.methods.getParams(),
2626
- getParam: (h) => d.methods.getParam(h),
2627
- setParam: (h, x) => d.methods.setParam(h, x),
2628
- clearParam: (h) => d.methods.clearParam(h),
2629
- clearParams: (h) => d.methods.clearParams(h),
2630
- applyParams: (h) => d.methods.applyParams(h),
2634
+ getParam: (g) => d.methods.getParam(g),
2635
+ setParam: (g, _) => d.methods.setParam(g, _),
2636
+ clearParam: (g) => d.methods.clearParam(g),
2637
+ clearParams: (g) => d.methods.clearParams(g),
2638
+ applyParams: (g) => d.methods.applyParams(g),
2631
2639
  loading: c,
2632
2640
  error: r,
2633
2641
  sparkTable: d,
2634
2642
  table: a
2635
- }), (h, x) => (m(), g("div", ia, [
2636
- d.computed.ready && k.value && k.value.length ? (m(), V(Pe, {
2637
- key: 0,
2638
- position: "header"
2639
- }, {
2640
- default: C(() => [
2641
- (m(!0), g(R, null, z(k.value, (P) => (m(), V(I(u[P.config.type]), {
2642
- key: P.name,
2643
- class: H(P.config.align ? `self-${P.config.align}` : ""),
2644
- "spark-table": d,
2645
- config: P.config
2646
- }, null, 8, ["class", "spark-table", "config"]))), 128)),
2647
- O(h.$slots, "header", {
2648
- sparkTable: d,
2649
- loading: c.value,
2650
- error: r.value
2651
- })
2652
- ]),
2653
- _: 3
2654
- })) : (m(), g("div", ca)),
2655
- b(w(jt), {
2656
- "theme-name": "ht-theme-classic",
2657
- ref_key: "table",
2658
- ref: a,
2659
- settings: d.tableSettings
2660
- }, null, 8, ["settings"]),
2661
- d.computed.ready ? (m(), V(Pe, {
2662
- key: 2,
2663
- position: "footer"
2664
- }, {
2665
- default: C(() => [
2666
- b(Ao, { "spark-table": d }, null, 8, ["spark-table"]),
2667
- f("div", ua, [
2668
- b(jo, {
2669
- "spark-table": d,
2670
- onPaginate: d.methods.applyParams
2671
- }, null, 8, ["spark-table", "onPaginate"]),
2672
- b(Zo, {
2643
+ }), (g, _) => {
2644
+ const w = A("font-awesome-icon");
2645
+ return m(), h("div", da, [
2646
+ d.computed.ready && $.value && $.value.length ? (m(), V(Pe, {
2647
+ key: 0,
2648
+ position: "header"
2649
+ }, {
2650
+ default: T(() => [
2651
+ (m(!0), h(R, null, D($.value, (y) => (m(), V(N(u[y.config.type]), {
2652
+ key: y.name,
2653
+ class: H(y.config.align ? `self-${y.config.align}` : ""),
2673
2654
  "spark-table": d,
2674
- onPaginate: d.methods.applyParams
2675
- }, null, 8, ["spark-table", "onPaginate"]),
2676
- O(h.$slots, "footer", {
2655
+ config: y.config
2656
+ }, null, 8, ["class", "spark-table", "config"]))), 128)),
2657
+ O(g.$slots, "header", {
2677
2658
  sparkTable: d,
2678
2659
  loading: c.value,
2679
2660
  error: r.value
2680
2661
  })
2681
- ])
2662
+ ]),
2663
+ _: 3
2664
+ })) : (m(), h("div", pa)),
2665
+ Xe(b(x(Zt), {
2666
+ "theme-name": "ht-theme-classic",
2667
+ ref_key: "table",
2668
+ ref: a,
2669
+ settings: d.tableSettings
2670
+ }, null, 8, ["settings"]), [
2671
+ [Je, !p.value]
2682
2672
  ]),
2683
- _: 3
2684
- })) : T("", !0)
2685
- ]));
2673
+ p.value ? (m(), h("div", fa, [
2674
+ b(w, {
2675
+ icon: x(F).farInbox,
2676
+ class: "size-12 mb-4 text-gray-300"
2677
+ }, null, 8, ["icon"]),
2678
+ _[0] || (_[0] = f("p", { class: "text-sm" }, "No records found", -1))
2679
+ ])) : L("", !0),
2680
+ d.computed.ready ? (m(), V(Pe, {
2681
+ key: 3,
2682
+ position: "footer"
2683
+ }, {
2684
+ default: T(() => [
2685
+ p.value ? L("", !0) : (m(), V(zo, {
2686
+ key: 0,
2687
+ "spark-table": d
2688
+ }, null, 8, ["spark-table"])),
2689
+ f("div", ma, [
2690
+ p.value ? L("", !0) : (m(), V(Zo, {
2691
+ key: 0,
2692
+ "spark-table": d,
2693
+ onPaginate: d.methods.applyParams
2694
+ }, null, 8, ["spark-table", "onPaginate"])),
2695
+ b(Ko, {
2696
+ "spark-table": d,
2697
+ onPaginate: d.methods.applyParams
2698
+ }, null, 8, ["spark-table", "onPaginate"]),
2699
+ O(g.$slots, "footer", {
2700
+ sparkTable: d,
2701
+ loading: c.value,
2702
+ error: r.value
2703
+ })
2704
+ ])
2705
+ ]),
2706
+ _: 3
2707
+ })) : L("", !0)
2708
+ ]);
2709
+ };
2686
2710
  }
2687
2711
  };
2688
2712
  function He() {
@@ -2699,7 +2723,7 @@ function He() {
2699
2723
  }, o = () => {
2700
2724
  e.isVisible = !0;
2701
2725
  }, l = (a, c = {}, r = {}, i = {}) => {
2702
- e.content = fe(a), e.props = c, e.eventHandlers = r, e.size = i.size || "md";
2726
+ e.content = me(a), e.props = c, e.eventHandlers = r, e.size = i.size || "md";
2703
2727
  };
2704
2728
  return {
2705
2729
  state: e,
@@ -2712,7 +2736,7 @@ function He() {
2712
2736
  }
2713
2737
  };
2714
2738
  }
2715
- class pa {
2739
+ class ga {
2716
2740
  constructor() {
2717
2741
  this.left = He(), this.right = He();
2718
2742
  }
@@ -2744,22 +2768,22 @@ class pa {
2744
2768
  this.left.close(), this.right.close();
2745
2769
  };
2746
2770
  }
2747
- const te = new pa(), fa = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, ma = { class: "flex flex-1 flex-col" }, ha = {
2771
+ const te = new ga(), ya = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, va = { class: "flex flex-1 flex-col" }, ba = {
2748
2772
  class: "flex flex-1 flex-col gap-y-7",
2749
2773
  role: "list"
2750
- }, ga = { class: "flex flex-1 flex-col" }, ya = {
2774
+ }, xa = { class: "flex flex-1 flex-col" }, ka = {
2751
2775
  role: "list",
2752
2776
  class: "flex flex-1 flex-col"
2753
- }, va = { class: "flex items-center pb-8" }, ba = ["href", "onClick"], xa = {
2777
+ }, wa = { class: "flex items-center pb-8" }, _a = ["href", "onClick"], Sa = {
2754
2778
  key: 2,
2755
2779
  class: "w-full flex justify-center"
2756
- }, ka = {
2780
+ }, Ca = {
2757
2781
  key: 0,
2758
2782
  class: "mt-[5px] flex flex-col gap-[5px]"
2759
- }, wa = ["href", "onClick"], _a = {
2783
+ }, $a = ["href", "onClick"], Ta = {
2760
2784
  key: 1,
2761
2785
  class: "text-[13px]"
2762
- }, Sa = { class: "mt-auto" }, Ca = { class: "p-[10px] flex-shrink-0" }, $a = { class: "flex flex-1 items-center gap-x-6" }, Ta = { class: "relative flex flex-1 items-center gap-4" }, La = { class: "cursor-pointer" }, Pa = ["src"], Ma = { class: "ml-auto" }, Ha = { class: "mr-[10px] pb-[10px] flex-1 flex flex-col" }, fn = {
2786
+ }, La = { class: "mt-auto" }, Pa = { class: "p-[10px] flex-shrink-0" }, Ma = { class: "flex flex-1 items-center gap-x-6" }, Ha = { class: "relative flex flex-1 items-center gap-4" }, Va = { class: "cursor-pointer" }, Ra = ["src"], Ea = { class: "ml-auto" }, Ba = { class: "mr-[10px] pb-[10px] flex-1 flex flex-col" }, yn = {
2763
2787
  __name: "SparkDefaultContainer",
2764
2788
  props: {
2765
2789
  appStore: {
@@ -2777,16 +2801,16 @@ const te = new pa(), fa = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, ma =
2777
2801
  },
2778
2802
  emits: ["overlayClose"],
2779
2803
  setup(e, { emit: s }) {
2780
- const t = e, o = s, l = Be(), n = ne(), a = Ie(), c = De(), r = S(() => c.getAppIcon(t.appStore.state.app)), i = S(() => n.meta.hideBrandSelector === !0 ? !1 : t.appStore.state.showBrandSelector), u = () => {
2804
+ const t = e, o = s, l = Ee(), n = ne(), a = Ne(), c = De(), r = C(() => c.getAppIcon(t.appStore.state.app)), i = C(() => n.meta.hideBrandSelector === !0 ? !1 : t.appStore.state.showBrandSelector), u = () => {
2781
2805
  const k = {};
2782
- l["app-selector-bottom"] ? k.bottomSlot = () => ke("div", {}, l["app-selector-bottom"]()) : t.appSelectorSlots.bottomSlot && (k.bottomSlot = t.appSelectorSlots.bottomSlot), l["app-selector-footer"] ? k.footerSlot = () => ke("div", {}, l["app-selector-footer"]()) : t.appSelectorSlots.footerSlot && (k.footerSlot = t.appSelectorSlots.footerSlot), te.showRight(vs, k, {
2783
- select: (h) => {
2806
+ l["app-selector-bottom"] ? k.bottomSlot = () => ke("div", {}, l["app-selector-bottom"]()) : t.appSelectorSlots.bottomSlot && (k.bottomSlot = t.appSelectorSlots.bottomSlot), l["app-selector-footer"] ? k.footerSlot = () => ke("div", {}, l["app-selector-footer"]()) : t.appSelectorSlots.footerSlot && (k.footerSlot = t.appSelectorSlots.footerSlot), te.showRight(ks, k, {
2807
+ select: ($) => {
2784
2808
  te.closeRight();
2785
2809
  }
2786
2810
  });
2787
2811
  }, d = () => {
2788
2812
  te.showLeft(
2789
- js,
2813
+ Zs,
2790
2814
  {},
2791
2815
  {
2792
2816
  select: (k) => {
@@ -2794,96 +2818,96 @@ const te = new pa(), fa = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, ma =
2794
2818
  }
2795
2819
  }
2796
2820
  );
2797
- }, p = S(() => t.mainNavStore.state.hidden ? ["w-0 overflow-hidden"] : [t.mainNavStore.state.collapsed ? "w-[80px]" : "w-[240px]"]), y = S(() => t.mainNavStore.state.hidden ? ["pl-2.5"] : [t.mainNavStore.state.collapsed ? "pl-[80px]" : "pl-[240px]"]);
2798
- return (k, h) => {
2799
- const x = A("font-awesome-icon"), P = A("router-view");
2800
- return m(), g(R, null, [
2821
+ }, p = C(() => t.mainNavStore.state.hidden ? ["w-0 overflow-hidden"] : [t.mainNavStore.state.collapsed ? "w-[80px]" : "w-[240px]"]), v = C(() => t.mainNavStore.state.hidden ? ["pl-2.5"] : [t.mainNavStore.state.collapsed ? "pl-[80px]" : "pl-[240px]"]);
2822
+ return (k, $) => {
2823
+ const g = A("font-awesome-icon"), _ = A("router-view");
2824
+ return m(), h(R, null, [
2801
2825
  f("div", {
2802
2826
  class: H([p.value, "fixed inset-y-0 flex transition-all z-100"])
2803
2827
  }, [
2804
- f("div", fa, [
2805
- f("nav", ma, [
2806
- f("ul", ha, [
2807
- f("li", ga, [
2808
- f("ul", ya, [
2809
- f("li", va, [
2828
+ f("div", ya, [
2829
+ f("nav", va, [
2830
+ f("ul", ba, [
2831
+ f("li", xa, [
2832
+ f("ul", ka, [
2833
+ f("li", wa, [
2810
2834
  f("a", {
2811
2835
  class: "grid w-[40px] h-[40px] place-items-center rounded-md bg-primary-600 text-white text-[13px] cursor-pointer",
2812
- onClick: h[0] || (h[0] = Q((_) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"]))
2836
+ onClick: $[0] || ($[0] = Q((w) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"]))
2813
2837
  }, [
2814
- b(x, {
2815
- icon: w(F)[r.value],
2838
+ b(g, {
2839
+ icon: x(F)[r.value],
2816
2840
  class: "size-5"
2817
2841
  }, null, 8, ["icon"])
2818
2842
  ]),
2819
- e.mainNavStore.state.collapsed ? T("", !0) : (m(), g("a", {
2843
+ e.mainNavStore.state.collapsed ? L("", !0) : (m(), h("a", {
2820
2844
  key: 0,
2821
- onClick: h[1] || (h[1] = Q((_) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"])),
2845
+ onClick: $[1] || ($[1] = Q((w) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"])),
2822
2846
  class: "font-medium text-gray-800 ml-[10px] cursor-pointer"
2823
- }, L(e.appStore.state.app), 1))
2847
+ }, P(e.appStore.state.app), 1))
2824
2848
  ]),
2825
- (m(!0), g(R, null, z(e.mainNavStore.state.menu, (_) => (m(), g("li", {
2826
- key: _.name,
2849
+ (m(!0), h(R, null, D(e.mainNavStore.state.menu, (w) => (m(), h("li", {
2850
+ key: w.name,
2827
2851
  class: H({
2828
- "mt-[10px]": _.children,
2829
- "mt-auto": _.footerSection
2852
+ "mt-[10px]": w.children,
2853
+ "mt-auto": w.footerSection
2830
2854
  })
2831
2855
  }, [
2832
2856
  f("a", {
2833
2857
  class: H([{
2834
- "bg-gray-100": _.current,
2835
- "hover:bg-gray-100": _?.href
2858
+ "bg-gray-100": w.current,
2859
+ "hover:bg-gray-100": w?.href
2836
2860
  }, "h-[37px] sgroup flex items-center gap-x-2 rounded-md p-3 text-gray-800 leading-5 transition-all duration-300 ease-in-out"]),
2837
- href: _?.href,
2838
- onClick: Q((v) => e.mainNavStore.goto(_.href), ["prevent"])
2861
+ href: w?.href,
2862
+ onClick: Q((y) => e.mainNavStore.goto(w.href), ["prevent"])
2839
2863
  }, [
2840
- _.icon ? (m(), V(x, {
2864
+ w.icon ? (m(), V(g, {
2841
2865
  key: 0,
2842
- icon: w(F)[_.icon],
2843
- class: H([[(_.current, "text-gray-400")], "size-4"])
2844
- }, null, 8, ["icon", "class"])) : T("", !0),
2845
- e.mainNavStore.state.collapsed ? _?.children ? (m(), g("div", xa, [...h[6] || (h[6] = [
2866
+ icon: x(F)[w.icon],
2867
+ class: H([[(w.current, "text-gray-400")], "size-4"])
2868
+ }, null, 8, ["icon", "class"])) : L("", !0),
2869
+ e.mainNavStore.state.collapsed ? w?.children ? (m(), h("div", Sa, [...$[6] || ($[6] = [
2846
2870
  f("div", { class: "w-[10px] h-px bg-gray-400" }, null, -1)
2847
- ])])) : T("", !0) : (m(), g("span", {
2871
+ ])])) : L("", !0) : (m(), h("span", {
2848
2872
  key: 1,
2849
2873
  class: H({
2850
- "text-[11px]": _?.children,
2851
- "text-[13px]": !_?.children,
2852
- "font-semibold": _?.children,
2853
- "text-gray-500": _?.children
2874
+ "text-[11px]": w?.children,
2875
+ "text-[13px]": !w?.children,
2876
+ "font-semibold": w?.children,
2877
+ "text-gray-500": w?.children
2854
2878
  })
2855
- }, L(_.name), 3))
2856
- ], 10, ba),
2857
- _.children ? (m(), g("ul", ka, [
2858
- (m(!0), g(R, null, z(_.children, (v) => (m(), g("li", {
2859
- key: v.name
2879
+ }, P(w.name), 3))
2880
+ ], 10, _a),
2881
+ w.children ? (m(), h("ul", Ca, [
2882
+ (m(!0), h(R, null, D(w.children, (y) => (m(), h("li", {
2883
+ key: y.name
2860
2884
  }, [
2861
2885
  f("a", {
2862
- class: H([[v.current ? "bg-gray-100" : "", "hover:bg-gray-100"], "h-[37px] sgroup flex items-center gap-x-2 rounded-md p-3 text-gray-800 leading-5 transition-all duration-300 ease-in-out"]),
2863
- href: v.href,
2864
- onClick: Q(($) => e.mainNavStore.goto(v.href), ["prevent"])
2886
+ class: H([[y.current ? "bg-gray-100" : "", "hover:bg-gray-100"], "h-[37px] sgroup flex items-center gap-x-2 rounded-md p-3 text-gray-800 leading-5 transition-all duration-300 ease-in-out"]),
2887
+ href: y.href,
2888
+ onClick: Q((S) => e.mainNavStore.goto(y.href), ["prevent"])
2865
2889
  }, [
2866
- v.icon ? (m(), V(x, {
2890
+ y.icon ? (m(), V(g, {
2867
2891
  key: 0,
2868
- icon: w(F)[v.icon],
2869
- class: H([[(v.current, "text-gray-400")], "size-4"])
2870
- }, null, 8, ["icon", "class"])) : T("", !0),
2871
- e.mainNavStore.state.collapsed ? T("", !0) : (m(), g("span", _a, L(v.name), 1))
2872
- ], 10, wa)
2892
+ icon: x(F)[y.icon],
2893
+ class: H([[(y.current, "text-gray-400")], "size-4"])
2894
+ }, null, 8, ["icon", "class"])) : L("", !0),
2895
+ e.mainNavStore.state.collapsed ? L("", !0) : (m(), h("span", Ta, P(y.name), 1))
2896
+ ], 10, $a)
2873
2897
  ]))), 128))
2874
- ])) : T("", !0)
2898
+ ])) : L("", !0)
2875
2899
  ], 2))), 128))
2876
2900
  ])
2877
2901
  ]),
2878
- f("li", Sa, [
2902
+ f("li", La, [
2879
2903
  O(k.$slots, "sidebar-footer"),
2880
2904
  f("a", {
2881
2905
  class: "font-medium grid place-content-center gap-x-3 rounded-md h-10 p-2.5 text-gray-800 text-[13px] hover:bg-gray-100 transition-all duration-300 ease-in-out",
2882
2906
  href: "#",
2883
- onClick: h[2] || (h[2] = Q((_) => e.mainNavStore.toggleCollapsed(), ["prevent"]))
2907
+ onClick: $[2] || ($[2] = Q((w) => e.mainNavStore.toggleCollapsed(), ["prevent"]))
2884
2908
  }, [
2885
- b(x, {
2886
- icon: w(F)[e.mainNavStore.state.collapsed ? "farArrowRightToLine" : "farArrowLeftToLine"],
2909
+ b(g, {
2910
+ icon: x(F)[e.mainNavStore.state.collapsed ? "farArrowRightToLine" : "farArrowLeftToLine"],
2887
2911
  class: "class-5"
2888
2912
  }, null, 8, ["icon"])
2889
2913
  ])
@@ -2893,81 +2917,81 @@ const te = new pa(), fa = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, ma =
2893
2917
  ])
2894
2918
  ], 2),
2895
2919
  f("div", {
2896
- class: H([y.value, "h-full transition-all flex flex-col"])
2920
+ class: H([v.value, "h-full transition-all flex flex-col"])
2897
2921
  }, [
2898
- f("div", Ca, [
2899
- f("div", $a, [
2900
- f("div", Ta, [
2922
+ f("div", Pa, [
2923
+ f("div", Ma, [
2924
+ f("div", Ha, [
2901
2925
  O(k.$slots, "header-left", {}, () => [
2902
- f("div", La, [
2903
- b(x, {
2904
- icon: w(F).farBarsSort,
2926
+ f("div", Va, [
2927
+ b(g, {
2928
+ icon: x(F).farBarsSort,
2905
2929
  class: "size-5",
2906
- onClick: h[3] || (h[3] = (_) => e.mainNavStore.toggleHidden())
2930
+ onClick: $[3] || ($[3] = (w) => e.mainNavStore.toggleHidden())
2907
2931
  }, null, 8, ["icon"])
2908
2932
  ])
2909
2933
  ]),
2910
2934
  O(k.$slots, "header-center", {}, () => [
2911
- i.value ? (m(), g("div", {
2935
+ i.value ? (m(), h("div", {
2912
2936
  key: 0,
2913
2937
  class: "absolute left-1/2 -translate-x-1/2 cursor-pointer h-9 flex items-center",
2914
2938
  onClick: d
2915
2939
  }, [
2916
- w(a).currentBrand ? (m(), g("img", {
2940
+ x(a).currentBrand ? (m(), h("img", {
2917
2941
  key: 0,
2918
- src: w(a).currentBrand.logo,
2942
+ src: x(a).currentBrand.logo,
2919
2943
  alt: "",
2920
2944
  class: "h-[30px] w-auto"
2921
- }, null, 8, Pa)) : T("", !0)
2922
- ])) : T("", !0)
2945
+ }, null, 8, Ra)) : L("", !0)
2946
+ ])) : L("", !0)
2923
2947
  ]),
2924
- f("div", Ma, [
2948
+ f("div", Ea, [
2925
2949
  O(k.$slots, "header-right", {}, () => [
2926
- e.appStore.state.showAppSelector ? (m(), g("button", {
2950
+ e.appStore.state.showAppSelector ? (m(), h("button", {
2927
2951
  key: 0,
2928
2952
  class: "rounded-sm bg-white w-[42px] h-[42px] ring-1 ring-inset ring-gray-300",
2929
2953
  type: "button",
2930
2954
  onClick: u
2931
2955
  }, [
2932
- b(x, {
2933
- icon: w(F).farGripDotsVertical,
2956
+ b(g, {
2957
+ icon: x(F).farGripDotsVertical,
2934
2958
  class: "size-4 text-gray-400"
2935
2959
  }, null, 8, ["icon"])
2936
- ])) : T("", !0)
2960
+ ])) : L("", !0)
2937
2961
  ])
2938
2962
  ])
2939
2963
  ])
2940
2964
  ])
2941
2965
  ]),
2942
- f("main", Ha, [
2943
- b(P)
2966
+ f("main", Ba, [
2967
+ b(_)
2944
2968
  ])
2945
2969
  ], 2),
2946
- b(w(Se), {
2970
+ b(x(Se), {
2947
2971
  position: "left",
2948
- "overlay-instance": w(te).left,
2949
- onClose: h[4] || (h[4] = (_) => o("overlayClose", "left"))
2972
+ "overlay-instance": x(te).left,
2973
+ onClose: $[4] || ($[4] = (w) => o("overlayClose", "left"))
2950
2974
  }, null, 8, ["overlay-instance"]),
2951
- b(w(Se), {
2975
+ b(x(Se), {
2952
2976
  position: "right",
2953
- "overlay-instance": w(te).right,
2954
- onClose: h[5] || (h[5] = (_) => o("overlayClose", "right"))
2977
+ "overlay-instance": x(te).right,
2978
+ onClose: $[5] || ($[5] = (w) => o("overlayClose", "right"))
2955
2979
  }, null, 8, ["overlay-instance"]),
2956
- b(w(Qs))
2980
+ b(x(so))
2957
2981
  ], 64);
2958
2982
  };
2959
2983
  }
2960
- }, Va = {}, Ra = { class: "h-full" };
2961
- function Ba(e, s) {
2984
+ }, Aa = {}, Fa = { class: "h-full" };
2985
+ function Oa(e, s) {
2962
2986
  const t = A("router-view");
2963
- return m(), g("main", Ra, [
2987
+ return m(), h("main", Fa, [
2964
2988
  b(t)
2965
2989
  ]);
2966
2990
  }
2967
- const mn = /* @__PURE__ */ ee(Va, [["render", Ba]]), Ea = (e) => {
2991
+ const vn = /* @__PURE__ */ ee(Aa, [["render", Oa]]), za = (e) => {
2968
2992
  const s = document.cookie.match(new RegExp(`(^| )${e}=([^;]+)`));
2969
2993
  return s ? s[2] : null;
2970
- }, Aa = (e, s, t = {}) => {
2994
+ }, Da = (e, s, t = {}) => {
2971
2995
  const {
2972
2996
  maxAge: o = 31536e3,
2973
2997
  // 365 days in seconds
@@ -2978,7 +3002,7 @@ const mn = /* @__PURE__ */ ee(Va, [["render", Ba]]), Ea = (e) => {
2978
3002
  } = t;
2979
3003
  let r = `${e}=${s}; max-age=${o}; path=${c}; samesite=${a}`;
2980
3004
  l && (r += `; domain=${l}`), n && (r += "; secure"), document.cookie = r;
2981
- }, Fa = (e, s = {}) => {
3005
+ }, ja = (e, s = {}) => {
2982
3006
  const { domain: t = Ze(), path: o = "/" } = s;
2983
3007
  let l = `${e}=; max-age=0; path=${o}`;
2984
3008
  t && (l += `; domain=${t}`), document.cookie = l;
@@ -2986,15 +3010,15 @@ const mn = /* @__PURE__ */ ee(Va, [["render", Ba]]), Ea = (e) => {
2986
3010
  const e = window.location.hostname;
2987
3011
  return e === "localhost" ? "localhost" : e.endsWith(".test") || e.endsWith(".io") ? "." + e.split(".").slice(-2).join(".") : e.endsWith(".com.au") ? "." + e.split(".").slice(-3).join(".") : e;
2988
3012
  }, qe = [];
2989
- function Oa(e) {
3013
+ function Ia(e) {
2990
3014
  qe.push(e);
2991
3015
  }
2992
- function za() {
3016
+ function Na() {
2993
3017
  qe.forEach((e) => e());
2994
3018
  }
2995
- function hn(e) {
3019
+ function bn(e) {
2996
3020
  let s = !1;
2997
- return Oa(() => {
3021
+ return Ia(() => {
2998
3022
  s = !1;
2999
3023
  }), {
3000
3024
  bootstrapApp: async () => {
@@ -3007,7 +3031,7 @@ function hn(e) {
3007
3031
  }
3008
3032
  };
3009
3033
  }
3010
- const ye = "bolt-next-token", K = ue("auth", () => {
3034
+ const ve = "bolt-next-token", K = ue("auth", () => {
3011
3035
  const e = q({
3012
3036
  user: null,
3013
3037
  token: null,
@@ -3043,10 +3067,10 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3043
3067
  }), s = (i = {}) => {
3044
3068
  i.endpoints && Object.assign(e.endpoints, i.endpoints), i.routes && Object.assign(e.routes, i.routes), i.devCredentials && Object.assign(e.devCredentials, i.devCredentials), i.callbacks && Object.assign(e.callbacks, i.callbacks), i.overrideToken && (e.overrideToken = i.overrideToken);
3045
3069
  }, t = (i) => {
3046
- Aa(ye, i), e.token = i;
3070
+ Da(ve, i), e.token = i;
3047
3071
  }, o = () => {
3048
- Fa(ye), e.token = null;
3049
- }, l = () => Ea(ye), n = async (i) => {
3072
+ ja(ve), e.token = null;
3073
+ }, l = () => za(ve), n = async (i) => {
3050
3074
  const u = await re.post(e.endpoints.login, i), d = u.headers.authorization;
3051
3075
  return t(d), e.user = u.data, e.callbacks.onLoginSuccess && await e.callbacks.onLoginSuccess(u.data), u.data;
3052
3076
  }, a = async () => {
@@ -3063,7 +3087,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3063
3087
  } catch (i) {
3064
3088
  throw e.callbacks.onLogoutError && await e.callbacks.onLogoutError(i), i;
3065
3089
  } finally {
3066
- o(), e.user = null, za();
3090
+ o(), e.user = null, Na();
3067
3091
  }
3068
3092
  }, c = async () => {
3069
3093
  const i = e.overrideToken || l();
@@ -3081,7 +3105,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3081
3105
  } finally {
3082
3106
  e.ready = !0;
3083
3107
  }
3084
- }, r = S(() => e.overrideToken ? !0 : !!e.token && !!e.user);
3108
+ }, r = C(() => e.overrideToken ? !0 : !!e.token && !!e.user);
3085
3109
  return {
3086
3110
  state: e,
3087
3111
  initialize: s,
@@ -3093,17 +3117,17 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3093
3117
  clearTokenCookie: o,
3094
3118
  getTokenCookie: l
3095
3119
  };
3096
- }), Da = { class: "h-full grid place-content-center relative" }, ja = { class: "absolute top-8 left-8" }, Na = ["src"], Ia = {
3120
+ }), Za = { class: "h-full grid place-content-center relative" }, qa = { class: "absolute top-8 left-8" }, Ua = ["src"], Ka = {
3097
3121
  key: 1,
3098
3122
  width: "59",
3099
3123
  height: "23",
3100
3124
  viewBox: "0 0 59 23",
3101
3125
  fill: "none",
3102
3126
  xmlns: "http://www.w3.org/2000/svg"
3103
- }, Za = { class: "max-w-sm grid gap-y-1 -mt-8" }, qa = { class: "mb-7" }, Ua = { class: "text-gray-600" }, Ka = { class: "grid grid-flow-col justify-between mt-1 mb-4" }, Ga = {
3127
+ }, Ga = { class: "max-w-sm grid gap-y-1 -mt-8" }, Wa = { class: "mb-7" }, Ya = { class: "text-gray-600" }, Xa = { class: "grid grid-flow-col justify-between mt-1 mb-4" }, Ja = {
3104
3128
  key: 0,
3105
3129
  class: "text-red-600 text-sm mb-2"
3106
- }, Wa = { key: 0 }, Ya = { key: 1 }, Xa = {
3130
+ }, Qa = { key: 0 }, er = { key: 1 }, tr = {
3107
3131
  __name: "SparkLoginView",
3108
3132
  props: {
3109
3133
  logo: {
@@ -3120,7 +3144,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3120
3144
  }
3121
3145
  },
3122
3146
  setup(e) {
3123
- const s = J(), t = ne(), o = je(), l = K(), n = e, a = E(!1), c = E(""), r = async (i) => {
3147
+ const s = J(), t = ne(), o = je(), l = K(), n = e, a = B(!1), c = B(""), r = async (i) => {
3124
3148
  a.value = !0, c.value = "";
3125
3149
  try {
3126
3150
  await l.login(i);
@@ -3141,14 +3165,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3141
3165
  };
3142
3166
  return (i, u) => {
3143
3167
  const d = A("FormKit"), p = A("router-link");
3144
- return m(), g("div", Da, [
3145
- f("div", ja, [
3146
- n.logo ? (m(), g("img", {
3168
+ return m(), h("div", Za, [
3169
+ f("div", qa, [
3170
+ n.logo ? (m(), h("img", {
3147
3171
  key: 0,
3148
3172
  src: n.logo,
3149
3173
  alt: "Logo",
3150
3174
  class: "h-[23px] w-auto"
3151
- }, null, 8, Na)) : (m(), g("svg", Ia, [...u[0] || (u[0] = [
3175
+ }, null, 8, Ua)) : (m(), h("svg", Ka, [...u[0] || (u[0] = [
3152
3176
  f("path", {
3153
3177
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3154
3178
  fill: "#1C64F2"
@@ -3167,17 +3191,17 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3167
3191
  }, null, -1)
3168
3192
  ])]))
3169
3193
  ]),
3170
- f("div", Za, [
3171
- f("div", qa, [
3194
+ f("div", Ga, [
3195
+ f("div", Wa, [
3172
3196
  u[1] || (u[1] = f("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Log in", -1)),
3173
- f("p", Ua, " Welcome back" + L(w(o).state.app ? ` to ${w(o).state.app}` : "") + "! Please enter your details. ", 1)
3197
+ f("p", Ya, " Welcome back" + P(x(o).state.app ? ` to ${x(o).state.app}` : "") + "! Please enter your details. ", 1)
3174
3198
  ]),
3175
3199
  b(d, {
3176
3200
  type: "form",
3177
3201
  onSubmit: r,
3178
3202
  actions: !1
3179
3203
  }, {
3180
- default: C(() => [
3204
+ default: T(() => [
3181
3205
  b(d, {
3182
3206
  label: "Email",
3183
3207
  name: "email",
@@ -3185,7 +3209,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3185
3209
  type: "email",
3186
3210
  validation: "required|email",
3187
3211
  "outer-class": "max-w-full",
3188
- value: w(l).state.devCredentials.username
3212
+ value: x(l).state.devCredentials.username
3189
3213
  }, null, 8, ["value"]),
3190
3214
  b(d, {
3191
3215
  label: "Password",
@@ -3194,29 +3218,29 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3194
3218
  type: "password",
3195
3219
  validation: "required",
3196
3220
  "outer-class": "max-w-full",
3197
- value: w(l).state.devCredentials.password
3221
+ value: x(l).state.devCredentials.password
3198
3222
  }, null, 8, ["value"]),
3199
- f("div", Ka, [
3223
+ f("div", Xa, [
3200
3224
  u[3] || (u[3] = f("span", null, null, -1)),
3201
3225
  b(p, {
3202
3226
  to: n.forgotPasswordRoute,
3203
3227
  class: "text-sm text-primary-600 font-semibold"
3204
3228
  }, {
3205
- default: C(() => [...u[2] || (u[2] = [
3206
- B(" Forgot password ", -1)
3229
+ default: T(() => [...u[2] || (u[2] = [
3230
+ E(" Forgot password ", -1)
3207
3231
  ])]),
3208
3232
  _: 1
3209
3233
  }, 8, ["to"])
3210
3234
  ]),
3211
- c.value ? (m(), g("div", Ga, L(c.value), 1)) : T("", !0),
3212
- b(w(G), {
3235
+ c.value ? (m(), h("div", Ja, P(c.value), 1)) : L("", !0),
3236
+ b(x(G), {
3213
3237
  type: "submit",
3214
3238
  size: "xl",
3215
3239
  disabled: a.value,
3216
3240
  "button-class": "w-full mb-2"
3217
3241
  }, {
3218
- default: C(() => [
3219
- a.value ? (m(), g("span", Ya, "Signing in...")) : (m(), g("span", Wa, "Sign in"))
3242
+ default: T(() => [
3243
+ a.value ? (m(), h("span", er, "Signing in...")) : (m(), h("span", Qa, "Sign in"))
3220
3244
  ]),
3221
3245
  _: 1
3222
3246
  }, 8, ["disabled"])
@@ -3227,7 +3251,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3227
3251
  ]);
3228
3252
  };
3229
3253
  }
3230
- }, Ja = {
3254
+ }, sr = {
3231
3255
  __name: "SparkLogoutView",
3232
3256
  props: {
3233
3257
  defaultRedirect: {
@@ -3237,26 +3261,26 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3237
3261
  },
3238
3262
  setup(e) {
3239
3263
  const s = J(), t = ne(), o = K(), l = e;
3240
- return be(async () => {
3264
+ return xe(async () => {
3241
3265
  await o.logout();
3242
3266
  const n = t.query.redirect;
3243
3267
  n && n.startsWith("http") ? window.location.href = n : await s.push(n || l.defaultRedirect);
3244
3268
  }), (n, a) => null;
3245
3269
  }
3246
- }, Qa = { class: "h-full grid place-content-center relative" }, er = { class: "absolute top-8 left-8" }, tr = ["src"], sr = {
3270
+ }, or = { class: "h-full grid place-content-center relative" }, ar = { class: "absolute top-8 left-8" }, rr = ["src"], nr = {
3247
3271
  key: 1,
3248
3272
  width: "59",
3249
3273
  height: "23",
3250
3274
  viewBox: "0 0 59 23",
3251
3275
  fill: "none",
3252
3276
  xmlns: "http://www.w3.org/2000/svg"
3253
- }, or = { class: "max-w-sm grid gap-y-1 -mt-8" }, ar = {
3277
+ }, lr = { class: "max-w-sm grid gap-y-1 -mt-8" }, ir = {
3254
3278
  key: 0,
3255
3279
  class: "text-red-600 text-sm mb-2"
3256
- }, rr = {
3280
+ }, cr = {
3257
3281
  key: 1,
3258
3282
  class: "text-green-600 text-sm mb-2"
3259
- }, nr = { key: 0 }, lr = { key: 1 }, ir = {
3283
+ }, ur = { key: 0 }, dr = { key: 1 }, pr = {
3260
3284
  __name: "SparkForgotPasswordView",
3261
3285
  props: {
3262
3286
  logo: {
@@ -3269,7 +3293,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3269
3293
  }
3270
3294
  },
3271
3295
  setup(e) {
3272
- const s = K(), t = e, o = E(!1), l = E(""), n = E(""), a = async ({ email: c }) => {
3296
+ const s = K(), t = e, o = B(!1), l = B(""), n = B(""), a = async ({ email: c }) => {
3273
3297
  o.value = !0, l.value = "", n.value = "";
3274
3298
  try {
3275
3299
  await re.post(s.state.endpoints.passwordEmail, { email: c }), n.value = "Password reset link sent! Check your email.";
@@ -3281,14 +3305,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3281
3305
  };
3282
3306
  return (c, r) => {
3283
3307
  const i = A("FormKit"), u = A("router-link");
3284
- return m(), g("div", Qa, [
3285
- f("div", er, [
3286
- t.logo ? (m(), g("img", {
3308
+ return m(), h("div", or, [
3309
+ f("div", ar, [
3310
+ t.logo ? (m(), h("img", {
3287
3311
  key: 0,
3288
3312
  src: t.logo,
3289
3313
  alt: "Logo",
3290
3314
  class: "h-[23px] w-auto"
3291
- }, null, 8, tr)) : (m(), g("svg", sr, [...r[0] || (r[0] = [
3315
+ }, null, 8, rr)) : (m(), h("svg", nr, [...r[0] || (r[0] = [
3292
3316
  f("path", {
3293
3317
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3294
3318
  fill: "#1C64F2"
@@ -3307,7 +3331,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3307
3331
  }, null, -1)
3308
3332
  ])]))
3309
3333
  ]),
3310
- f("div", or, [
3334
+ f("div", lr, [
3311
3335
  r[2] || (r[2] = f("div", { class: "mb-7" }, [
3312
3336
  f("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Reset password"),
3313
3337
  f("p", { class: "text-gray-600" }, " Enter your email and we'll send you a link to reset your password. ")
@@ -3317,7 +3341,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3317
3341
  onSubmit: a,
3318
3342
  actions: !1
3319
3343
  }, {
3320
- default: C(() => [
3344
+ default: T(() => [
3321
3345
  b(i, {
3322
3346
  label: "Email",
3323
3347
  name: "email",
@@ -3326,16 +3350,16 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3326
3350
  validation: "required|email",
3327
3351
  "outer-class": "max-w-full"
3328
3352
  }),
3329
- l.value ? (m(), g("div", ar, L(l.value), 1)) : T("", !0),
3330
- n.value ? (m(), g("div", rr, L(n.value), 1)) : T("", !0),
3331
- b(w(G), {
3353
+ l.value ? (m(), h("div", ir, P(l.value), 1)) : L("", !0),
3354
+ n.value ? (m(), h("div", cr, P(n.value), 1)) : L("", !0),
3355
+ b(x(G), {
3332
3356
  type: "submit",
3333
3357
  size: "xl",
3334
3358
  disabled: o.value,
3335
3359
  "button-class": "w-full mb-2"
3336
3360
  }, {
3337
- default: C(() => [
3338
- o.value ? (m(), g("span", lr, "Sending...")) : (m(), g("span", nr, "Send reset link"))
3361
+ default: T(() => [
3362
+ o.value ? (m(), h("span", dr, "Sending...")) : (m(), h("span", ur, "Send reset link"))
3339
3363
  ]),
3340
3364
  _: 1
3341
3365
  }, 8, ["disabled"]),
@@ -3343,8 +3367,8 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3343
3367
  to: t.loginRoute,
3344
3368
  class: "text-sm text-center text-primary-600 font-semibold block"
3345
3369
  }, {
3346
- default: C(() => [...r[1] || (r[1] = [
3347
- B(" Back to login ", -1)
3370
+ default: T(() => [...r[1] || (r[1] = [
3371
+ E(" Back to login ", -1)
3348
3372
  ])]),
3349
3373
  _: 1
3350
3374
  }, 8, ["to"])
@@ -3355,17 +3379,17 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3355
3379
  ]);
3356
3380
  };
3357
3381
  }
3358
- }, cr = { class: "h-full grid place-content-center relative" }, ur = { class: "absolute top-8 left-8" }, dr = ["src"], pr = {
3382
+ }, fr = { class: "h-full grid place-content-center relative" }, mr = { class: "absolute top-8 left-8" }, hr = ["src"], gr = {
3359
3383
  key: 1,
3360
3384
  width: "59",
3361
3385
  height: "23",
3362
3386
  viewBox: "0 0 59 23",
3363
3387
  fill: "none",
3364
3388
  xmlns: "http://www.w3.org/2000/svg"
3365
- }, fr = { class: "max-w-sm grid gap-y-1 -mt-8" }, mr = {
3389
+ }, yr = { class: "max-w-sm grid gap-y-1 -mt-8" }, vr = {
3366
3390
  key: 0,
3367
3391
  class: "text-red-600 text-sm mb-2"
3368
- }, hr = { key: 0 }, gr = { key: 1 }, yr = {
3392
+ }, br = { key: 0 }, xr = { key: 1 }, kr = {
3369
3393
  __name: "SparkResetPasswordView",
3370
3394
  props: {
3371
3395
  logo: {
@@ -3378,7 +3402,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3378
3402
  }
3379
3403
  },
3380
3404
  setup(e) {
3381
- const s = J(), t = ne(), o = K(), l = e, n = E(!1), a = E(""), c = async ({ password: r, password_confirmation: i }) => {
3405
+ const s = J(), t = ne(), o = K(), l = e, n = B(!1), a = B(""), c = async ({ password: r, password_confirmation: i }) => {
3382
3406
  n.value = !0, a.value = "";
3383
3407
  try {
3384
3408
  await re.post(o.state.endpoints.passwordReset, {
@@ -3395,14 +3419,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3395
3419
  };
3396
3420
  return (r, i) => {
3397
3421
  const u = A("FormKit");
3398
- return m(), g("div", cr, [
3399
- f("div", ur, [
3400
- l.logo ? (m(), g("img", {
3422
+ return m(), h("div", fr, [
3423
+ f("div", mr, [
3424
+ l.logo ? (m(), h("img", {
3401
3425
  key: 0,
3402
3426
  src: l.logo,
3403
3427
  alt: "Logo",
3404
3428
  class: "h-[23px] w-auto"
3405
- }, null, 8, dr)) : (m(), g("svg", pr, [...i[0] || (i[0] = [
3429
+ }, null, 8, hr)) : (m(), h("svg", gr, [...i[0] || (i[0] = [
3406
3430
  f("path", {
3407
3431
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3408
3432
  fill: "#1C64F2"
@@ -3421,7 +3445,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3421
3445
  }, null, -1)
3422
3446
  ])]))
3423
3447
  ]),
3424
- f("div", fr, [
3448
+ f("div", yr, [
3425
3449
  i[1] || (i[1] = f("div", { class: "mb-7" }, [
3426
3450
  f("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Set new password"),
3427
3451
  f("p", { class: "text-gray-600" }, " Enter your new password below. ")
@@ -3431,7 +3455,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3431
3455
  onSubmit: c,
3432
3456
  actions: !1
3433
3457
  }, {
3434
- default: C(() => [
3458
+ default: T(() => [
3435
3459
  b(u, {
3436
3460
  label: "New Password",
3437
3461
  name: "password",
@@ -3448,15 +3472,15 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3448
3472
  validation: "required|confirm:password",
3449
3473
  "outer-class": "max-w-full"
3450
3474
  }),
3451
- a.value ? (m(), g("div", mr, L(a.value), 1)) : T("", !0),
3452
- b(w(G), {
3475
+ a.value ? (m(), h("div", vr, P(a.value), 1)) : L("", !0),
3476
+ b(x(G), {
3453
3477
  type: "submit",
3454
3478
  size: "xl",
3455
3479
  disabled: n.value,
3456
3480
  "button-class": "w-full mb-2"
3457
3481
  }, {
3458
- default: C(() => [
3459
- n.value ? (m(), g("span", gr, "Resetting...")) : (m(), g("span", hr, "Reset password"))
3482
+ default: T(() => [
3483
+ n.value ? (m(), h("span", xr, "Resetting...")) : (m(), h("span", br, "Reset password"))
3460
3484
  ]),
3461
3485
  _: 1
3462
3486
  }, 8, ["disabled"])
@@ -3467,14 +3491,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3467
3491
  ]);
3468
3492
  };
3469
3493
  }
3470
- }, vr = { class: "h-full grid place-content-center relative" }, br = { class: "absolute top-8 left-8" }, xr = ["src"], kr = {
3494
+ }, wr = { class: "h-full grid place-content-center relative" }, _r = { class: "absolute top-8 left-8" }, Sr = ["src"], Cr = {
3471
3495
  key: 1,
3472
3496
  width: "59",
3473
3497
  height: "23",
3474
3498
  viewBox: "0 0 59 23",
3475
3499
  fill: "none",
3476
3500
  xmlns: "http://www.w3.org/2000/svg"
3477
- }, wr = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, _r = { class: "flex gap-4 justify-center" }, Sr = {
3501
+ }, $r = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, Tr = { class: "flex gap-4 justify-center" }, Lr = {
3478
3502
  __name: "SparkError403View",
3479
3503
  props: {
3480
3504
  logo: {
@@ -3490,14 +3514,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3490
3514
  const s = J(), t = e, o = () => {
3491
3515
  s.push(t.homeRoute);
3492
3516
  };
3493
- return (l, n) => (m(), g("div", vr, [
3494
- f("div", br, [
3495
- t.logo ? (m(), g("img", {
3517
+ return (l, n) => (m(), h("div", wr, [
3518
+ f("div", _r, [
3519
+ t.logo ? (m(), h("img", {
3496
3520
  key: 0,
3497
3521
  src: t.logo,
3498
3522
  alt: "Logo",
3499
3523
  class: "h-[23px] w-auto"
3500
- }, null, 8, xr)) : (m(), g("svg", kr, [...n[0] || (n[0] = [
3524
+ }, null, 8, Sr)) : (m(), h("svg", Cr, [...n[0] || (n[0] = [
3501
3525
  f("path", {
3502
3526
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3503
3527
  fill: "#1C64F2"
@@ -3516,23 +3540,23 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3516
3540
  }, null, -1)
3517
3541
  ])]))
3518
3542
  ]),
3519
- f("div", wr, [
3543
+ f("div", $r, [
3520
3544
  n[2] || (n[2] = f("div", null, [
3521
3545
  f("div", { class: "text-primary-600 text-7xl font-bold mb-4" }, "403"),
3522
3546
  f("h1", { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, " Access Forbidden "),
3523
3547
  f("p", { class: "text-gray-600" }, [
3524
- B(" You don't have permission to access this resource."),
3548
+ E(" You don't have permission to access this resource."),
3525
3549
  f("br"),
3526
- B(" If you believe this is an error, please contact your administrator. ")
3550
+ E(" If you believe this is an error, please contact your administrator. ")
3527
3551
  ])
3528
3552
  ], -1)),
3529
- f("div", _r, [
3530
- b(w(G), {
3553
+ f("div", Tr, [
3554
+ b(x(G), {
3531
3555
  onClick: o,
3532
3556
  size: "lg"
3533
3557
  }, {
3534
- default: C(() => [...n[1] || (n[1] = [
3535
- B(" Go to Home ", -1)
3558
+ default: T(() => [...n[1] || (n[1] = [
3559
+ E(" Go to Home ", -1)
3536
3560
  ])]),
3537
3561
  _: 1
3538
3562
  })
@@ -3540,14 +3564,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3540
3564
  ])
3541
3565
  ]));
3542
3566
  }
3543
- }, Cr = { class: "h-full grid place-content-center relative" }, $r = { class: "absolute top-8 left-8" }, Tr = ["src"], Lr = {
3567
+ }, Pr = { class: "h-full grid place-content-center relative" }, Mr = { class: "absolute top-8 left-8" }, Hr = ["src"], Vr = {
3544
3568
  key: 1,
3545
3569
  width: "59",
3546
3570
  height: "23",
3547
3571
  viewBox: "0 0 59 23",
3548
3572
  fill: "none",
3549
3573
  xmlns: "http://www.w3.org/2000/svg"
3550
- }, Pr = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, Mr = { class: "flex gap-4 justify-center" }, Hr = {
3574
+ }, Rr = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, Er = { class: "flex gap-4 justify-center" }, Br = {
3551
3575
  __name: "SparkError404View",
3552
3576
  props: {
3553
3577
  logo: {
@@ -3563,14 +3587,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3563
3587
  const s = J(), t = e, o = () => {
3564
3588
  s.push(t.homeRoute);
3565
3589
  };
3566
- return (l, n) => (m(), g("div", Cr, [
3567
- f("div", $r, [
3568
- t.logo ? (m(), g("img", {
3590
+ return (l, n) => (m(), h("div", Pr, [
3591
+ f("div", Mr, [
3592
+ t.logo ? (m(), h("img", {
3569
3593
  key: 0,
3570
3594
  src: t.logo,
3571
3595
  alt: "Logo",
3572
3596
  class: "h-[23px] w-auto"
3573
- }, null, 8, Tr)) : (m(), g("svg", Lr, [...n[0] || (n[0] = [
3597
+ }, null, 8, Hr)) : (m(), h("svg", Vr, [...n[0] || (n[0] = [
3574
3598
  f("path", {
3575
3599
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3576
3600
  fill: "#1C64F2"
@@ -3589,19 +3613,19 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3589
3613
  }, null, -1)
3590
3614
  ])]))
3591
3615
  ]),
3592
- f("div", Pr, [
3616
+ f("div", Rr, [
3593
3617
  n[2] || (n[2] = f("div", null, [
3594
3618
  f("div", { class: "text-primary-600 text-7xl font-bold mb-4" }, "404"),
3595
3619
  f("h1", { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, " Page Not Found "),
3596
3620
  f("p", { class: "text-gray-600" }, " The page you're looking for doesn't exist or has been moved. ")
3597
3621
  ], -1)),
3598
- f("div", Mr, [
3599
- b(w(G), {
3622
+ f("div", Er, [
3623
+ b(x(G), {
3600
3624
  onClick: o,
3601
3625
  size: "lg"
3602
3626
  }, {
3603
- default: C(() => [...n[1] || (n[1] = [
3604
- B(" Go to Home ", -1)
3627
+ default: T(() => [...n[1] || (n[1] = [
3628
+ E(" Go to Home ", -1)
3605
3629
  ])]),
3606
3630
  _: 1
3607
3631
  })
@@ -3609,14 +3633,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3609
3633
  ])
3610
3634
  ]));
3611
3635
  }
3612
- }, Vr = { class: "h-full grid place-content-center relative" }, Rr = { class: "absolute top-8 left-8" }, Br = ["src"], Er = {
3636
+ }, Ar = { class: "h-full grid place-content-center relative" }, Fr = { class: "absolute top-8 left-8" }, Or = ["src"], zr = {
3613
3637
  key: 1,
3614
3638
  width: "59",
3615
3639
  height: "23",
3616
3640
  viewBox: "0 0 59 23",
3617
3641
  fill: "none",
3618
3642
  xmlns: "http://www.w3.org/2000/svg"
3619
- }, Ar = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, Fr = { class: "text-primary-600 text-7xl font-bold mb-4" }, Or = { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, zr = { class: "text-gray-600" }, Dr = { class: "flex gap-4 justify-center" }, gn = {
3643
+ }, Dr = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, jr = { class: "text-primary-600 text-7xl font-bold mb-4" }, Ir = { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, Nr = { class: "text-gray-600" }, Zr = { class: "flex gap-4 justify-center" }, xn = {
3620
3644
  __name: "SparkErrorGeneralView",
3621
3645
  props: {
3622
3646
  logo: {
@@ -3644,14 +3668,14 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3644
3668
  const s = J(), t = e, o = () => {
3645
3669
  s.push(t.homeRoute);
3646
3670
  };
3647
- return (l, n) => (m(), g("div", Vr, [
3648
- f("div", Rr, [
3649
- t.logo ? (m(), g("img", {
3671
+ return (l, n) => (m(), h("div", Ar, [
3672
+ f("div", Fr, [
3673
+ t.logo ? (m(), h("img", {
3650
3674
  key: 0,
3651
3675
  src: t.logo,
3652
3676
  alt: "Logo",
3653
3677
  class: "h-[23px] w-auto"
3654
- }, null, 8, Br)) : (m(), g("svg", Er, [...n[0] || (n[0] = [
3678
+ }, null, 8, Or)) : (m(), h("svg", zr, [...n[0] || (n[0] = [
3655
3679
  f("path", {
3656
3680
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3657
3681
  fill: "#1C64F2"
@@ -3670,19 +3694,19 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3670
3694
  }, null, -1)
3671
3695
  ])]))
3672
3696
  ]),
3673
- f("div", Ar, [
3697
+ f("div", Dr, [
3674
3698
  f("div", null, [
3675
- f("div", Fr, L(t.errorCode || "Error"), 1),
3676
- f("h1", Or, L(t.title || "Something went wrong"), 1),
3677
- f("p", zr, L(t.message || "An unexpected error occurred. Please try again later."), 1)
3699
+ f("div", jr, P(t.errorCode || "Error"), 1),
3700
+ f("h1", Ir, P(t.title || "Something went wrong"), 1),
3701
+ f("p", Nr, P(t.message || "An unexpected error occurred. Please try again later."), 1)
3678
3702
  ]),
3679
- f("div", Dr, [
3680
- b(w(G), {
3703
+ f("div", Zr, [
3704
+ b(x(G), {
3681
3705
  onClick: o,
3682
3706
  size: "lg"
3683
3707
  }, {
3684
- default: C(() => [...n[1] || (n[1] = [
3685
- B(" Go to Home ", -1)
3708
+ default: T(() => [...n[1] || (n[1] = [
3709
+ E(" Go to Home ", -1)
3686
3710
  ])]),
3687
3711
  _: 1
3688
3712
  })
@@ -3691,7 +3715,7 @@ const ye = "bolt-next-token", K = ue("auth", () => {
3691
3715
  ]));
3692
3716
  }
3693
3717
  };
3694
- function yn(e = {}) {
3718
+ function kn(e = {}) {
3695
3719
  const {
3696
3720
  loginPath: s = "/login",
3697
3721
  logoutPath: t = "/logout",
@@ -3704,41 +3728,41 @@ function yn(e = {}) {
3704
3728
  {
3705
3729
  path: s,
3706
3730
  name: "login",
3707
- component: Xa,
3731
+ component: tr,
3708
3732
  props: { logo: n, defaultRedirect: a },
3709
3733
  meta: { auth: !1 }
3710
3734
  },
3711
3735
  {
3712
3736
  path: t,
3713
3737
  name: "logout",
3714
- component: Ja,
3738
+ component: sr,
3715
3739
  props: { defaultRedirect: s },
3716
3740
  meta: { auth: !1 }
3717
3741
  },
3718
3742
  {
3719
3743
  path: o,
3720
3744
  name: "forgot-password",
3721
- component: ir,
3745
+ component: pr,
3722
3746
  props: { logo: n, loginRoute: s },
3723
3747
  meta: { auth: !1 }
3724
3748
  },
3725
3749
  {
3726
3750
  path: l,
3727
3751
  name: "password-reset",
3728
- component: yr,
3752
+ component: kr,
3729
3753
  props: { logo: n, loginRoute: s },
3730
3754
  meta: { auth: !1 }
3731
3755
  }
3732
3756
  ];
3733
3757
  }
3734
- function vn(e, s = {}) {
3758
+ function wn(e, s = {}) {
3735
3759
  const { defaultAuthenticatedRoute: t = "/dashboard" } = s;
3736
3760
  e.beforeEach(async (o, l, n) => {
3737
3761
  const a = K();
3738
- a.state.ready || await a.fetchUser(), jr(o, n, a, t);
3762
+ a.state.ready || await a.fetchUser(), qr(o, n, a, t);
3739
3763
  });
3740
3764
  }
3741
- function jr(e, s, t, o) {
3765
+ function qr(e, s, t, o) {
3742
3766
  const l = e.meta.auth !== !1, n = t.check;
3743
3767
  if (t.state.overrideToken && e.path === "/logout") {
3744
3768
  s({ path: o });
@@ -3776,7 +3800,7 @@ function jr(e, s, t, o) {
3776
3800
  s();
3777
3801
  }
3778
3802
  }
3779
- function bn(e = {}) {
3803
+ function _n(e = {}) {
3780
3804
  const {
3781
3805
  forbiddenPath: s = "/error/403",
3782
3806
  logo: t = "",
@@ -3785,12 +3809,12 @@ function bn(e = {}) {
3785
3809
  return {
3786
3810
  path: s,
3787
3811
  name: "error-403",
3788
- component: Sr,
3812
+ component: Lr,
3789
3813
  props: { logo: t, homeRoute: o },
3790
3814
  meta: { auth: !1 }
3791
3815
  };
3792
3816
  }
3793
- function xn(e = {}) {
3817
+ function Sn(e = {}) {
3794
3818
  const {
3795
3819
  logo: s = "",
3796
3820
  homeRoute: t = "/dashboard"
@@ -3798,12 +3822,12 @@ function xn(e = {}) {
3798
3822
  return {
3799
3823
  path: "/:pathMatch(.*)*",
3800
3824
  name: "error-404",
3801
- component: Hr,
3825
+ component: Br,
3802
3826
  props: { logo: s, homeRoute: t },
3803
3827
  meta: { auth: !1 }
3804
3828
  };
3805
3829
  }
3806
- function kn(e, s) {
3830
+ function Cn(e, s) {
3807
3831
  e.beforeResolve(async (t) => {
3808
3832
  if (t.meta.auth !== !1) {
3809
3833
  const o = K();
@@ -3811,7 +3835,7 @@ function kn(e, s) {
3811
3835
  }
3812
3836
  });
3813
3837
  }
3814
- function Nr(e = {}) {
3838
+ function Ur(e = {}) {
3815
3839
  const s = re.create({
3816
3840
  baseURL: e.baseURL || "",
3817
3841
  timeout: e.timeout || 3e4,
@@ -3852,15 +3876,15 @@ function Nr(e = {}) {
3852
3876
  ), s;
3853
3877
  }
3854
3878
  let ae = null;
3855
- function wn(e, s = {}) {
3856
- return ae = Nr(s), e.provide("axios", ae), e.config.globalProperties.$axios = ae, ae;
3879
+ function $n(e, s = {}) {
3880
+ return ae = Ur(s), e.provide("axios", ae), e.config.globalProperties.$axios = ae, ae;
3857
3881
  }
3858
- function _n() {
3882
+ function Tn() {
3859
3883
  if (!ae)
3860
3884
  throw new Error("Axios instance not initialized. Call setupAxios() first.");
3861
3885
  return ae;
3862
3886
  }
3863
- const Sn = ue("sparkNav", () => {
3887
+ const Ln = ue("sparkNav", () => {
3864
3888
  const e = q({
3865
3889
  menu: [],
3866
3890
  collapsed: !1,
@@ -3900,7 +3924,7 @@ const Sn = ue("sparkNav", () => {
3900
3924
  u(e.menu);
3901
3925
  }
3902
3926
  };
3903
- return N(
3927
+ return I(
3904
3928
  () => t.path,
3905
3929
  () => {
3906
3930
  r();
@@ -3918,62 +3942,62 @@ const Sn = ue("sparkNav", () => {
3918
3942
  export {
3919
3943
  F as Icons,
3920
3944
  se as SparkAlert,
3921
- vs as SparkAppSelector,
3922
- js as SparkBrandSelector,
3945
+ ks as SparkAppSelector,
3946
+ Zs as SparkBrandSelector,
3923
3947
  G as SparkButton,
3924
- Is as SparkButtonGroup,
3925
- dn as SparkCard,
3926
- fn as SparkDefaultContainer,
3927
- Sr as SparkError403View,
3928
- Hr as SparkError404View,
3929
- gn as SparkErrorGeneralView,
3930
- ir as SparkForgotPasswordView,
3931
- Xa as SparkLoginView,
3932
- Ja as SparkLogoutView,
3933
- Qs as SparkModalContainer,
3934
- Ws as SparkModalDialog,
3935
- cn as SparkNotificationOutlet,
3948
+ Us as SparkButtonGroup,
3949
+ hn as SparkCard,
3950
+ yn as SparkDefaultContainer,
3951
+ Lr as SparkError403View,
3952
+ Br as SparkError404View,
3953
+ xn as SparkErrorGeneralView,
3954
+ pr as SparkForgotPasswordView,
3955
+ tr as SparkLoginView,
3956
+ sr as SparkLogoutView,
3957
+ so as SparkModalContainer,
3958
+ Js as SparkModalDialog,
3959
+ fn as SparkNotificationOutlet,
3936
3960
  Se as SparkOverlay,
3937
- mn as SparkPublicContainer,
3938
- yr as SparkResetPasswordView,
3939
- pn as SparkTable,
3940
- oa as SparkTableDatePicker,
3941
- ea as SparkTableFilterButtons,
3942
- Yo as SparkTableFilterSelect,
3943
- jo as SparkTablePaginationPaging,
3944
- Zo as SparkTablePaginationPerPage,
3945
- la as SparkTableReset,
3946
- Ko as SparkTableSearch,
3961
+ vn as SparkPublicContainer,
3962
+ kr as SparkResetPasswordView,
3963
+ gn as SparkTable,
3964
+ na as SparkTableDatePicker,
3965
+ oa as SparkTableFilterButtons,
3966
+ Qo as SparkTableFilterSelect,
3967
+ Zo as SparkTablePaginationPaging,
3968
+ Ko as SparkTablePaginationPerPage,
3969
+ ua as SparkTableReset,
3970
+ Yo as SparkTableSearch,
3947
3971
  Pe as SparkTableToolbar,
3948
- un as SparkToastContainer,
3949
- nn as addIcons,
3950
- bn as create403Route,
3951
- xn as create404Route,
3952
- yn as createAuthRoutes,
3953
- Nr as createAxiosInstance,
3954
- hn as createBootstrapService,
3955
- ro as customiseHeader,
3956
- Fa as deleteCookie,
3957
- _o as formatTemporal,
3958
- _n as getAxiosInstance,
3959
- Ea as getCookie,
3972
+ mn as SparkToastContainer,
3973
+ dn as addIcons,
3974
+ _n as create403Route,
3975
+ Sn as create404Route,
3976
+ kn as createAuthRoutes,
3977
+ Ur as createAxiosInstance,
3978
+ bn as createBootstrapService,
3979
+ io as customiseHeader,
3980
+ ja as deleteCookie,
3981
+ $o as formatTemporal,
3982
+ Tn as getAxiosInstance,
3983
+ za as getCookie,
3960
3984
  Ze as getDomain,
3961
- So as parseDatetime,
3962
- to as renderHeaderTitle,
3963
- Aa as setCookie,
3964
- vn as setupAuthGuards,
3965
- wn as setupAxios,
3966
- kn as setupBootstrapGuard,
3967
- ln as setupFontAwesome,
3985
+ To as parseDatetime,
3986
+ ao as renderHeaderTitle,
3987
+ Da as setCookie,
3988
+ wn as setupAuthGuards,
3989
+ $n as setupAxios,
3990
+ Cn as setupBootstrapGuard,
3991
+ pn as setupFontAwesome,
3968
3992
  oe as sparkModalService,
3969
3993
  X as sparkNotificationService,
3970
3994
  te as sparkOverlayService,
3971
- Lo as updateRow,
3995
+ Ho as updateRow,
3972
3996
  De as useSparkAppSelectorStore,
3973
3997
  je as useSparkAppStore,
3974
3998
  K as useSparkAuthStore,
3975
- Ie as useSparkBrandFilterStore,
3976
- Sn as useSparkNavStore,
3999
+ Ne as useSparkBrandFilterStore,
4000
+ Ln as useSparkNavStore,
3977
4001
  He as useSparkOverlay,
3978
- Po as useSparkTableRouteSync
4002
+ Vo as useSparkTableRouteSync
3979
4003
  };