@wishbone-media/spark 0.28.0 → 0.29.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,11 +1,12 @@
1
- import { computed as $, resolveComponent as F, createElementBlock as g, openBlock as m, normalizeClass as V, createElementVNode as f, createCommentVNode as T, createVNode as k, unref as _, renderSlot as D, reactive as K, Fragment as E, renderList as z, toDisplayString as M, createBlock as H, resolveDynamicComponent as Z, markRaw as me, ref as R, watch as N, Transition as dt, withCtx as L, normalizeProps as pt, mergeProps as q, createTextVNode as O, Teleport as ft, TransitionGroup as ie, inject as _e, provide as mt, withModifiers as U, toHandlers as Oe, onMounted as Se, useSlots as De, onUnmounted as ht, withDirectives as gt, vShow as yt, h as Ce } from "vue";
2
- import { icon as ee, library as Be } from "@fortawesome/fontawesome-svg-core";
3
- import { FontAwesomeIcon as bt } from "@fortawesome/vue-fontawesome";
4
- import { faCircleDot as je, faEyeDropper as ze, faAnglesLeft as Ie, faAnglesRight as Ne, faStar as Ze, faSpinnerThird as qe, faCircle as vt, faFile as ve, faCalendar as Ue, faArrowUp as Ke, faArrowDown as Ge, faPlus as We, faInbox as xt, faCloudDownload as kt, faBolt as wt, faUndo as _t, faEye as St, faSignOut as Ct, faXmark as xe, faTrash as Ye, faTimes as $t, faStreetView as Tt, faSortUp as Lt, faSortDown as Pt, faSort as Mt, faScaleBalanced as Vt, faSatelliteDish as Ht, faLayerPlus as Rt, faLaptopMobile as Ft, faInfoCircle as Et, faGripDotsVertical as Xe, faGearComplex as At, faFlag as Ot, faFaceSmileWink as Dt, faFaceSmileRelaxed as Bt, faExclamationTriangle as jt, faEllipsisVertical as zt, faEllipsis as It, faEdit as Nt, faComments as Zt, faCircleXmark as qt, faCircleUser as Ut, faChevronUp as Kt, faChevronRight as Je, faChevronLeft as Qe, faChevronDown as et, faCheckCircle as Gt, faCheck as ke, faBullhorn as Wt, faBellRing as Yt, faBarsSort as Xt, faArrowRightToLine as Jt, faArrowLeftToLine as Qt } from "@fortawesome/pro-regular-svg-icons";
1
+ import { computed as $, resolveComponent as F, createElementBlock as g, openBlock as m, normalizeClass as V, createElementVNode as f, createCommentVNode as T, createVNode as k, unref as S, renderSlot as B, reactive as K, Fragment as E, renderList as I, toDisplayString as M, createBlock as H, resolveDynamicComponent as Z, markRaw as me, ref as R, watch as z, onMounted as he, Transition as dt, withCtx as P, normalizeProps as pt, mergeProps as q, createTextVNode as A, Teleport as ft, TransitionGroup as ie, inject as Se, provide as mt, withModifiers as U, toHandlers as Ae, useSlots as Be, onUnmounted as ht, withDirectives as gt, vShow as yt, h as Ce } from "vue";
2
+ import { icon as ee, library as De } from "@fortawesome/fontawesome-svg-core";
3
+ import { FontAwesomeIcon as vt } from "@fortawesome/vue-fontawesome";
4
+ import { faCircleDot as je, faEyeDropper as ze, faAnglesLeft as Ie, faAnglesRight as Ne, faStar as Ze, faSpinnerThird as qe, faCircle as bt, faFile as xe, faCalendar as Ue, faArrowUp as Ke, faArrowDown as Ge, faPlus as We, faInbox as xt, faCloudDownload as kt, faBolt as wt, faUndo as _t, faEye as St, faSignOut as Ct, faXmark as ke, faTrash as Ye, faTimes as $t, faStreetView as Tt, faSortUp as Pt, faSortDown as Lt, faSort as Mt, faScaleBalanced as Vt, faSatelliteDish as Ht, faLayerPlus as Rt, faLaptopMobile as Ft, faInfoCircle as Et, faGripDotsVertical as Xe, faGearComplex as Ot, faFlag as At, faFaceSmileWink as Bt, faFaceSmileRelaxed as Dt, faExclamationTriangle as jt, faEllipsisVertical as zt, faEllipsis as It, faEdit as Nt, faComments as Zt, faCircleXmark as qt, faCircleUser as Ut, faChevronUp as Kt, faChevronRight as Je, faChevronLeft as Qe, faChevronDown as et, faCheckCircle as Gt, faCheck as we, faBullhorn as Wt, faBellRing as Yt, faBarsSort as Xt, faArrowRightToLine as Jt, faArrowLeftToLine as Qt } from "@fortawesome/pro-regular-svg-icons";
5
5
  import { faSortUp as es, faSortDown as ts, faSort as ss } from "@fortawesome/pro-duotone-svg-icons";
6
6
  import { defineStore as ue } from "pinia";
7
+ import { useRoute as te, useRouter as Y } from "vue-router";
7
8
  import { TransitionRoot as tt, Dialog as st, TransitionChild as fe, DialogPanel as at } from "@headlessui/vue";
8
- import he from "nprogress";
9
+ import ge from "nprogress";
9
10
  import { range as as, get as Q, find as os, has as rs } from "lodash";
10
11
  import { HotTable as ns } from "@handsontable/vue3";
11
12
  import "handsontable/styles/handsontable.css";
@@ -14,15 +15,14 @@ import { registerPlugin as pe, AutoColumnSize as ls, CopyPaste as is, StretchCol
14
15
  import { registerAllCellTypes as ds } from "handsontable/cellTypes";
15
16
  import { useDebounceFn as ot, watchDebounced as $e } from "@vueuse/core";
16
17
  import { registerRenderer as ps, baseRenderer as fs } from "handsontable/renderers";
17
- import { useRouter as Y, useRoute as le } from "vue-router";
18
- import ne from "axios";
19
- const A = {
18
+ import le from "axios";
19
+ const O = {
20
20
  farArrowLeftToLine: Qt,
21
21
  farArrowRightToLine: Jt,
22
22
  farBarsSort: Xt,
23
23
  farBellRing: Yt,
24
24
  farBullhorn: Wt,
25
- farCheck: ke,
25
+ farCheck: we,
26
26
  farCheckCircle: Gt,
27
27
  farChevronDown: et,
28
28
  farChevronLeft: Qe,
@@ -35,10 +35,10 @@ const A = {
35
35
  farEllipsis: It,
36
36
  farEllipsisVertical: zt,
37
37
  farExclamationTriangle: jt,
38
- farFaceSmileRelaxed: Bt,
39
- farFaceSmileWink: Dt,
40
- farFlag: Ot,
41
- farGearComplex: At,
38
+ farFaceSmileRelaxed: Dt,
39
+ farFaceSmileWink: Bt,
40
+ farFlag: At,
41
+ farGearComplex: Ot,
42
42
  farGripDotsVertical: Xe,
43
43
  farInfoCircle: Et,
44
44
  farLaptopMobile: Ft,
@@ -46,12 +46,12 @@ const A = {
46
46
  farSatelliteDish: Ht,
47
47
  farScaleBalanced: Vt,
48
48
  farSort: Mt,
49
- farSortDown: Pt,
50
- farSortUp: Lt,
49
+ farSortDown: Lt,
50
+ farSortUp: Pt,
51
51
  farStreetView: Tt,
52
52
  farTimes: $t,
53
53
  farTrash: Ye,
54
- farXmark: xe,
54
+ farXmark: ke,
55
55
  farSignOut: Ct,
56
56
  farEye: St,
57
57
  farUndo: _t,
@@ -66,16 +66,16 @@ const A = {
66
66
  farArrowDown: Ge,
67
67
  farArrowUp: Ke,
68
68
  farCalendar: Ue,
69
- farFile: ve,
70
- farCircle: vt,
69
+ farFile: xe,
70
+ farCircle: bt,
71
71
  farSpinner: qe,
72
72
  farStar: Ze,
73
73
  farAnglesRight: Ne,
74
74
  farAnglesLeft: Ie,
75
75
  farEyeDropper: ze,
76
76
  farCircleDot: je
77
- }, An = Object.fromEntries(
78
- Object.entries(A).map(([e, s]) => {
77
+ }, On = Object.fromEntries(
78
+ Object.entries(O).map(([e, s]) => {
79
79
  const t = ee(s);
80
80
  return [e, t?.html?.[0] || ""];
81
81
  })
@@ -83,14 +83,14 @@ const A = {
83
83
  add: We,
84
84
  arrowDown: Ge,
85
85
  arrowUp: Ke,
86
- check: ke,
87
- close: xe,
88
- checkboxDecorator: ke,
86
+ check: we,
87
+ close: ke,
88
+ checkboxDecorator: we,
89
89
  date: Ue,
90
90
  dragHandle: Xe,
91
- fileItem: ve,
92
- fileRemove: xe,
93
- noFiles: ve,
91
+ fileItem: xe,
92
+ fileRemove: ke,
93
+ noFiles: xe,
94
94
  radioDecorator: je,
95
95
  // Circle with dot for radio indicator
96
96
  select: et,
@@ -102,30 +102,30 @@ const A = {
102
102
  left: Qe,
103
103
  rewind: Ie,
104
104
  color: ze
105
- }, On = Object.fromEntries(
105
+ }, An = Object.fromEntries(
106
106
  Object.entries(ms).map(([e, s]) => {
107
107
  const t = ee(s);
108
108
  return [e, t?.html?.[0] || ""];
109
109
  })
110
110
  );
111
- function Dn(e) {
112
- const s = A[e];
111
+ function Bn(e) {
112
+ const s = O[e];
113
113
  if (s) {
114
114
  const t = ee(s);
115
115
  return Promise.resolve(t?.html?.[0] || void 0);
116
116
  }
117
117
  return Promise.resolve(void 0);
118
118
  }
119
- function Bn(e) {
120
- Object.assign(A, e), Be.add(...Object.values(e));
119
+ function Dn(e) {
120
+ Object.assign(O, e), De.add(...Object.values(e));
121
121
  }
122
122
  function jn(e) {
123
- Be.add(...Object.values(A)), e.component("FontAwesomeIcon", bt);
123
+ De.add(...Object.values(O)), e.component("FontAwesomeIcon", vt);
124
124
  }
125
- const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }, ys = { class: "ml-3" }, bs = {
125
+ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }, ys = { class: "ml-3" }, vs = {
126
126
  key: 0,
127
127
  class: "ml-auto pl-3 pt-1 self-start"
128
- }, vs = { class: "-mx-1.5 -my-1.5" }, ae = {
128
+ }, bs = { class: "-mx-1.5 -my-1.5" }, oe = {
129
129
  __name: "SparkAlert",
130
130
  props: {
131
131
  type: {
@@ -155,36 +155,36 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
155
155
  warning: "farExclamationTriangle",
156
156
  danger: "farCircleXmark",
157
157
  info: "farInfoCircle"
158
- })[s.type]), r = $(() => ({
158
+ })[s.type]), n = $(() => ({
159
159
  success: "text-green-400 hover:bg-green-100",
160
160
  warning: "text-yellow-400 hover:bg-yellow-100",
161
161
  danger: "text-red-400 hover:bg-red-100",
162
162
  info: "text-blue-400 hover:bg-blue-100"
163
163
  })[s.type]);
164
164
  return (o, c) => {
165
- const n = F("font-awesome-icon");
165
+ const r = F("font-awesome-icon");
166
166
  return m(), g("div", {
167
167
  class: V(["rounded-md border p-4", t.value])
168
168
  }, [
169
169
  f("div", hs, [
170
170
  f("div", gs, [
171
- k(n, {
172
- icon: _(A)[l.value],
171
+ k(r, {
172
+ icon: S(O)[l.value],
173
173
  class: V(a.value)
174
174
  }, null, 8, ["icon", "class"])
175
175
  ]),
176
176
  f("div", ys, [
177
- D(o.$slots, "default")
177
+ B(o.$slots, "default")
178
178
  ]),
179
- e.closeable ? (m(), g("div", bs, [
180
- f("div", vs, [
179
+ e.closeable ? (m(), g("div", vs, [
180
+ f("div", bs, [
181
181
  f("button", {
182
182
  type: "button",
183
- class: V(["inline-flex rounded-md px-2 py-1.5", r.value]),
183
+ class: V(["inline-flex rounded-md px-2 py-1.5", n.value]),
184
184
  onClick: c[0] || (c[0] = (i) => o.$emit("close"))
185
185
  }, [
186
- k(n, {
187
- icon: _(A).farXmark
186
+ k(r, {
187
+ icon: S(O).farXmark
188
188
  }, null, 8, ["icon"])
189
189
  ], 2)
190
190
  ])
@@ -193,7 +193,7 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
193
193
  ], 2);
194
194
  };
195
195
  }
196
- }, ge = [
196
+ }, ye = [
197
197
  {
198
198
  name: "Bolt",
199
199
  description: "Job management",
@@ -244,12 +244,12 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
244
244
  }
245
245
  ], rt = ue("sparkAppSelector", () => {
246
246
  const e = K({
247
- apps: [...ge]
248
- }), s = (r = {}) => {
249
- if (r.apps && Array.isArray(r.apps)) {
250
- const o = r.apps.filter((c) => {
251
- const n = c.name && c.description && c.icon && c.href;
252
- return n || console.warn("useSparkAppSelectorStore: Invalid app object", c), n;
247
+ apps: [...ye]
248
+ }), s = (n = {}) => {
249
+ if (n.apps && Array.isArray(n.apps)) {
250
+ const o = n.apps.filter((c) => {
251
+ const r = c.name && c.description && c.icon && c.href;
252
+ return r || console.warn("useSparkAppSelectorStore: Invalid app object", c), r;
253
253
  });
254
254
  e.apps = o.map((c) => ({
255
255
  name: c.name,
@@ -259,23 +259,23 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
259
259
  }));
260
260
  return;
261
261
  }
262
- if (r.appHrefs && typeof r.appHrefs == "object") {
262
+ if (n.appHrefs && typeof n.appHrefs == "object") {
263
263
  const o = /* @__PURE__ */ new Map();
264
- Object.keys(r.appHrefs).forEach((c) => {
265
- o.set(c.toLowerCase(), r.appHrefs[c]);
266
- }), e.apps = ge.map((c) => {
267
- const n = o.get(c.name.toLowerCase());
264
+ Object.keys(n.appHrefs).forEach((c) => {
265
+ o.set(c.toLowerCase(), n.appHrefs[c]);
266
+ }), e.apps = ye.map((c) => {
267
+ const r = o.get(c.name.toLowerCase());
268
268
  return {
269
269
  ...c,
270
- href: n || c.href
270
+ href: r || c.href
271
271
  };
272
272
  });
273
273
  return;
274
274
  }
275
- e.apps = [...ge];
276
- }, t = $(() => e.apps), a = (r) => {
277
- if (!r) return null;
278
- const o = r.toLowerCase();
275
+ e.apps = [...ye];
276
+ }, t = $(() => e.apps), a = (n) => {
277
+ if (!n) return null;
278
+ const o = n.toLowerCase();
279
279
  return e.apps.find((c) => c.name.toLowerCase() === o) || null;
280
280
  };
281
281
  return {
@@ -283,8 +283,8 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
283
283
  initialize: s,
284
284
  allApps: t,
285
285
  getAppByName: a,
286
- getAppIcon: (r) => {
287
- const o = a(r);
286
+ getAppIcon: (n) => {
287
+ const o = a(n);
288
288
  return o ? o.icon : "";
289
289
  }
290
290
  };
@@ -301,7 +301,7 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
301
301
  e.app = t.app || "", e.homeRoute = t.homeRoute ?? "dashboard", e.showBrandSelector = t.showBrandSelector ?? !0, e.showAppSelector = t.showAppSelector ?? !0;
302
302
  }
303
303
  };
304
- }), xs = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, ks = { class: "flex flex-1 flex-col" }, ws = { class: "divide-y divide-gray-200" }, _s = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, Ss = { class: "ml-auto flex items-center" }, Cs = ["href", "onClick"], $s = { class: "gap-y-1" }, Ts = { class: "text-base text-gray-800 flex items-center" }, Ls = { class: "font-medium" }, Ps = {
304
+ }), xs = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, ks = { class: "flex flex-1 flex-col" }, ws = { class: "divide-y divide-gray-200" }, _s = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, Ss = { class: "ml-auto flex items-center" }, Cs = ["href", "onClick"], $s = { class: "gap-y-1" }, Ts = { class: "text-base text-gray-800 flex items-center" }, Ps = { class: "font-medium" }, Ls = {
305
305
  key: 0,
306
306
  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"
307
307
  }, Ms = { class: "text-sm text-gray-500" }, Vs = { class: "ml-auto flex items-center" }, Hs = { class: "mt-auto" }, Rs = {
@@ -324,31 +324,31 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
324
324
  },
325
325
  emits: ["close", "select"],
326
326
  setup(e, { emit: s }) {
327
- const t = s, a = rt(), l = nt(), r = $(() => {
327
+ const t = s, a = rt(), l = nt(), n = $(() => {
328
328
  const c = l.state.app;
329
- return a.state.apps.map((n) => ({
330
- ...n,
331
- current: c && n.name.toLowerCase() === c.toLowerCase()
329
+ return a.state.apps.map((r) => ({
330
+ ...r,
331
+ current: c && r.name.toLowerCase() === c.toLowerCase()
332
332
  }));
333
- }), o = (c, n) => {
333
+ }), o = (c, r) => {
334
334
  t("select", c);
335
335
  };
336
- return (c, n) => {
336
+ return (c, r) => {
337
337
  const i = F("font-awesome-icon");
338
338
  return m(), g("div", xs, [
339
339
  f("div", ks, [
340
340
  f("div", ws, [
341
341
  f("div", _s, [
342
- n[1] || (n[1] = f("div", null, "Mr Group Network", -1)),
342
+ r[1] || (r[1] = f("div", null, "Mr Group Network", -1)),
343
343
  f("div", Ss, [
344
344
  k(i, {
345
- icon: _(A).farTimes,
345
+ icon: S(O).farTimes,
346
346
  class: "h-[15px] w-[15px] shrink-0 text-gray-400 cursor-pointer",
347
- onClick: n[0] || (n[0] = (u) => t("close"))
347
+ onClick: r[0] || (r[0] = (u) => t("close"))
348
348
  }, null, 8, ["icon"])
349
349
  ])
350
350
  ]),
351
- (m(!0), g(E, null, z(r.value, (u) => (m(), g("a", {
351
+ (m(!0), g(E, null, I(n.value, (u) => (m(), g("a", {
352
352
  key: u.name,
353
353
  href: u.href,
354
354
  target: "_blank",
@@ -357,28 +357,28 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
357
357
  }, [
358
358
  f("div", $s, [
359
359
  f("div", Ts, [
360
- f("div", Ls, M(u.name), 1),
361
- u.current ? (m(), g("span", Ps, " Active ")) : T("", !0)
360
+ f("div", Ps, M(u.name), 1),
361
+ u.current ? (m(), g("span", Ls, " Active ")) : T("", !0)
362
362
  ]),
363
363
  f("div", Ms, M(u.description), 1)
364
364
  ]),
365
365
  f("div", Vs, [
366
366
  k(i, {
367
367
  class: V([u.current ? "text-gray-700" : "text-gray-400", "h-5 w-5 shrink-0"]),
368
- icon: _(A)[u.icon]
368
+ icon: S(O)[u.icon]
369
369
  }, null, 8, ["class", "icon"])
370
370
  ])
371
371
  ], 10, Cs))), 128)),
372
- n[2] || (n[2] = f("div", null, null, -1))
372
+ r[2] || (r[2] = f("div", null, null, -1))
373
373
  ]),
374
374
  f("div", Hs, [
375
375
  c.$slots.bottom || e.bottomSlot ? (m(), g("div", Rs, [
376
- D(c.$slots, "bottom", {}, () => [
376
+ B(c.$slots, "bottom", {}, () => [
377
377
  e.bottomSlot ? (m(), H(Z(e.bottomSlot), { key: 0 })) : T("", !0)
378
378
  ])
379
379
  ])) : T("", !0),
380
380
  c.$slots.footer || e.footerSlot ? (m(), g("div", Fs, [
381
- D(c.$slots, "footer", {}, () => [
381
+ B(c.$slots, "footer", {}, () => [
382
382
  e.footerSlot ? (m(), H(Z(e.footerSlot), { key: 0 })) : T("", !0)
383
383
  ])
384
384
  ])) : T("", !0)
@@ -394,7 +394,7 @@ const hs = { class: "flex items-center" }, gs = { class: "shrink-0 self-start" }
394
394
  danger: 0
395
395
  // sticky by default
396
396
  }, Te = ["top-left", "top-right", "center", "bottom-left", "bottom-right"];
397
- function As() {
397
+ function Os() {
398
398
  const e = K({
399
399
  isVisible: !1,
400
400
  type: "info",
@@ -402,13 +402,15 @@ function As() {
402
402
  component: null,
403
403
  props: {},
404
404
  closeable: !0,
405
- duration: null
405
+ duration: null,
406
+ persistent: !1,
407
+ shownOnPath: null
406
408
  });
407
409
  let s = null, t = 0, a = !1, l = null;
408
- const r = () => {
410
+ const n = () => {
409
411
  s && (clearTimeout(s), s = null), t = 0, a = !1, l = null;
410
412
  }, o = () => {
411
- r(), e.isVisible = !1;
413
+ n(), e.isVisible = !1;
412
414
  }, c = (p) => {
413
415
  p <= 0 || (t = p, l = Date.now(), s = setTimeout(() => {
414
416
  o();
@@ -417,22 +419,23 @@ function As() {
417
419
  return {
418
420
  state: e,
419
421
  show: (p = {}) => {
420
- r();
422
+ n();
421
423
  const {
422
- type: v = "info",
423
- message: b = null,
424
+ type: b = "info",
425
+ message: v = null,
424
426
  component: x = null,
425
427
  props: h = {},
426
428
  closeable: w = !0,
427
- duration: S = null
429
+ duration: C = null,
430
+ persistent: y = !1
428
431
  } = p;
429
- e.type = v, e.message = b, e.component = x ? me(x) : null, e.props = h, e.closeable = w, e.isVisible = !0;
430
- const y = S !== null ? S : lt[v];
431
- e.duration = y, y > 0 && c(y);
432
+ e.type = b, e.message = v, e.component = x ? me(x) : null, e.props = h, e.closeable = w, e.persistent = y, e.isVisible = !0;
433
+ const _ = C !== null ? C : lt[b];
434
+ e.duration = _, _ > 0 && c(_);
432
435
  },
433
436
  hide: o,
434
437
  reset: () => {
435
- o(), e.type = "info", e.message = null, e.component = null, e.props = {}, e.closeable = !0, e.duration = null;
438
+ o(), e.type = "info", e.message = null, e.component = null, e.props = {}, e.closeable = !0, e.duration = null, e.persistent = !1, e.shownOnPath = null;
436
439
  },
437
440
  pause: () => {
438
441
  if (!s || a) return;
@@ -447,7 +450,7 @@ function As() {
447
450
  }
448
451
  };
449
452
  }
450
- class Os {
453
+ class As {
451
454
  constructor() {
452
455
  this.outlets = /* @__PURE__ */ new Map(), this.toastState = K({
453
456
  toasts: [],
@@ -465,7 +468,7 @@ class Os {
465
468
  * @returns {Object} Notification outlet instance
466
469
  */
467
470
  getOutlet(s = "default") {
468
- return this.outlets.has(s) || this.outlets.set(s, As()), this.outlets.get(s);
471
+ return this.outlets.has(s) || this.outlets.set(s, Os()), this.outlets.get(s);
469
472
  }
470
473
  /**
471
474
  * Show a banner notification in the specified outlet
@@ -476,6 +479,7 @@ class Os {
476
479
  * @param {Object} options.props - Props to pass to the component
477
480
  * @param {boolean} options.closeable - Whether to show close button (default: true)
478
481
  * @param {number} options.duration - Auto-dismiss duration in ms (0 = sticky, null = use default)
482
+ * @param {boolean} options.persistent - Whether notification survives route changes (default: false)
479
483
  * @param {string} outletName - Target outlet name (default: 'default')
480
484
  */
481
485
  show(s = {}, t = "default") {
@@ -495,6 +499,14 @@ class Os {
495
499
  for (const s of this.outlets.values())
496
500
  s.hide();
497
501
  }
502
+ /**
503
+ * Hide all non-persistent banner notifications
504
+ * Called by setupNotificationGuard on route change
505
+ */
506
+ hideAllNonPersistent() {
507
+ for (const s of this.outlets.values())
508
+ s.state.persistent || s.hide();
509
+ }
498
510
  /**
499
511
  * Pause auto-dismiss timer for the specified banner outlet
500
512
  * @param {string} outletName - Target outlet name (default: 'default')
@@ -555,28 +567,28 @@ class Os {
555
567
  type: t = "info",
556
568
  message: a = null,
557
569
  component: l = null,
558
- props: r = {},
570
+ props: n = {},
559
571
  closeable: o = !0,
560
572
  duration: c = null,
561
- position: n = null
562
- } = s, i = ++this._toastIdCounter, u = n && Te.includes(n) ? n : this.toastState.defaultPosition, d = c !== null ? c : lt[t], p = {
573
+ position: r = null
574
+ } = s, i = ++this._toastIdCounter, u = r && Te.includes(r) ? r : this.toastState.defaultPosition, d = c !== null ? c : lt[t], p = {
563
575
  id: i,
564
576
  type: t,
565
577
  message: a,
566
578
  component: l ? me(l) : null,
567
- props: r,
579
+ props: n,
568
580
  closeable: o,
569
581
  duration: d,
570
582
  position: u,
571
583
  createdAt: Date.now()
572
- }, v = this.toastState.toasts.filter((b) => b.position === u);
573
- if (v.length >= this.toastState.maxToasts) {
574
- const b = this.toastState.newestOnTop ? v[v.length - 1] : v[0];
575
- this.hideToast(b.id);
584
+ }, b = this.toastState.toasts.filter((v) => v.position === u);
585
+ if (b.length >= this.toastState.maxToasts) {
586
+ const v = this.toastState.newestOnTop ? b[b.length - 1] : b[0];
587
+ this.hideToast(v.id);
576
588
  }
577
589
  if (this.toastState.newestOnTop) {
578
- const b = this.toastState.toasts.findIndex((x) => x.position === u);
579
- b === -1 ? this.toastState.toasts.push(p) : this.toastState.toasts.splice(b, 0, p);
590
+ const v = this.toastState.toasts.findIndex((x) => x.position === u);
591
+ v === -1 ? this.toastState.toasts.push(p) : this.toastState.toasts.splice(v, 0, p);
580
592
  } else
581
593
  this.toastState.toasts.push(p);
582
594
  return d > 0 && this._startToastTimer(i, d), i;
@@ -652,30 +664,47 @@ class Os {
652
664
  t && (t.timeout && clearTimeout(t.timeout), this._toastTimers.delete(s));
653
665
  }
654
666
  }
655
- const j = new Os(), zn = {
667
+ const j = new As(), zn = {
656
668
  __name: "SparkNotificationOutlet",
657
669
  props: {
658
670
  name: {
659
671
  type: String,
660
672
  default: "default"
673
+ },
674
+ clearOnRouteChange: {
675
+ type: Boolean,
676
+ default: !0
661
677
  }
662
678
  },
663
679
  setup(e) {
664
- const s = e, t = $(() => j.getOutlet(s.name)), a = R(0);
665
- N(
666
- () => [t.value.state.message, t.value.state.component, t.value.state.type],
680
+ const s = e, t = te(), a = $(() => j.getOutlet(s.name)), l = R(0);
681
+ z(
682
+ () => [a.value.state.message, a.value.state.component, a.value.state.type],
667
683
  () => {
668
- t.value.state.isVisible && a.value++;
684
+ a.value.state.isVisible && l.value++;
685
+ }
686
+ ), z(
687
+ () => a.value.state.isVisible,
688
+ (r) => {
689
+ r && !a.value.state.shownOnPath && (a.value.state.shownOnPath = t.path);
690
+ },
691
+ { immediate: !0 }
692
+ ), he(() => {
693
+ s.clearOnRouteChange && (t.meta.preserveNotifications || a.value.state.isVisible && (a.value.state.persistent || a.value.state.shownOnPath && a.value.state.shownOnPath !== t.path && a.value.hide()));
694
+ }), z(
695
+ () => t.path,
696
+ () => {
697
+ s.clearOnRouteChange && (t.meta.preserveNotifications || a.value.state.isVisible && (a.value.state.persistent || a.value.hide()));
669
698
  }
670
699
  );
671
- const l = () => {
700
+ const n = () => {
672
701
  j.hide(s.name);
673
- }, r = () => {
674
- j.pause(s.name);
675
702
  }, o = () => {
703
+ j.pause(s.name);
704
+ }, c = () => {
676
705
  j.resume(s.name);
677
706
  };
678
- return (c, n) => (m(), H(dt, {
707
+ return (r, i) => (m(), H(dt, {
679
708
  "enter-active-class": "transition-all duration-300 ease-out",
680
709
  "enter-from-class": "opacity-0 -translate-y-2",
681
710
  "enter-to-class": "opacity-100 translate-y-0",
@@ -684,18 +713,18 @@ const j = new Os(), zn = {
684
713
  "leave-to-class": "opacity-0 -translate-y-2",
685
714
  mode: "out-in"
686
715
  }, {
687
- default: L(() => [
688
- t.value.state.isVisible ? (m(), H(ae, {
689
- key: a.value,
690
- type: t.value.state.type,
691
- closeable: t.value.state.closeable,
692
- onClose: l,
693
- onMouseenter: r,
694
- onMouseleave: o
716
+ default: P(() => [
717
+ a.value.state.isVisible ? (m(), H(oe, {
718
+ key: l.value,
719
+ type: a.value.state.type,
720
+ closeable: a.value.state.closeable,
721
+ onClose: n,
722
+ onMouseenter: o,
723
+ onMouseleave: c
695
724
  }, {
696
- default: L(() => [
697
- t.value.state.component ? (m(), H(Z(t.value.state.component), pt(q({ key: 0 }, t.value.state.props)), null, 16)) : (m(), g(E, { key: 1 }, [
698
- O(M(t.value.state.message), 1)
725
+ default: P(() => [
726
+ a.value.state.component ? (m(), H(Z(a.value.state.component), pt(q({ key: 0 }, a.value.state.props)), null, 16)) : (m(), g(E, { key: 1 }, [
727
+ A(M(a.value.state.message), 1)
699
728
  ], 64))
700
729
  ]),
701
730
  _: 1
@@ -704,7 +733,7 @@ const j = new Os(), zn = {
704
733
  _: 1
705
734
  }));
706
735
  }
707
- }, Ds = { class: "fixed top-4 left-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, Bs = { class: "fixed top-4 right-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, js = { 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" }, zs = { class: "fixed bottom-4 left-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, Is = { class: "fixed bottom-4 right-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, In = {
736
+ }, Bs = { class: "fixed top-4 left-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, Ds = { class: "fixed top-4 right-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, js = { 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" }, zs = { class: "fixed bottom-4 left-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, Is = { class: "fixed bottom-4 right-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, In = {
708
737
  __name: "SparkToastContainer",
709
738
  setup(e) {
710
739
  const s = j.toastState, t = $(
@@ -713,19 +742,19 @@ const j = new Os(), zn = {
713
742
  () => s.toasts.filter((u) => u.position === "top-right")
714
743
  ), l = $(
715
744
  () => s.toasts.filter((u) => u.position === "center")
716
- ), r = $(
745
+ ), n = $(
717
746
  () => s.toasts.filter((u) => u.position === "bottom-left")
718
747
  ), o = $(
719
748
  () => s.toasts.filter((u) => u.position === "bottom-right")
720
749
  ), c = (u) => {
721
750
  j.hideToast(u);
722
- }, n = (u) => {
751
+ }, r = (u) => {
723
752
  j.pauseToast(u);
724
753
  }, i = (u) => {
725
754
  j.resumeToast(u);
726
755
  };
727
756
  return (u, d) => (m(), H(ft, { to: "body" }, [
728
- f("div", Ds, [
757
+ f("div", Bs, [
729
758
  k(ie, {
730
759
  "enter-active-class": "transition-all duration-300 ease-out",
731
760
  "enter-from-class": "opacity-0 -translate-x-4",
@@ -734,24 +763,24 @@ const j = new Os(), zn = {
734
763
  "leave-from-class": "opacity-100 translate-x-0",
735
764
  "leave-to-class": "opacity-0 -translate-x-4"
736
765
  }, {
737
- default: L(() => [
738
- (m(!0), g(E, null, z(t.value, (p) => (m(), g("div", {
766
+ default: P(() => [
767
+ (m(!0), g(E, null, I(t.value, (p) => (m(), g("div", {
739
768
  key: p.id,
740
769
  class: "pointer-events-auto"
741
770
  }, [
742
- k(ae, {
771
+ k(oe, {
743
772
  type: p.type,
744
773
  closeable: p.closeable,
745
- onClose: (v) => c(p.id),
746
- onMouseenter: (v) => n(p.id),
747
- onMouseleave: (v) => i(p.id)
774
+ onClose: (b) => c(p.id),
775
+ onMouseenter: (b) => r(p.id),
776
+ onMouseleave: (b) => i(p.id)
748
777
  }, {
749
- default: L(() => [
778
+ default: P(() => [
750
779
  p.component ? (m(), H(Z(p.component), q({
751
780
  key: 0,
752
781
  ref_for: !0
753
782
  }, p.props), null, 16)) : (m(), g(E, { key: 1 }, [
754
- O(M(p.message), 1)
783
+ A(M(p.message), 1)
755
784
  ], 64))
756
785
  ]),
757
786
  _: 2
@@ -761,7 +790,7 @@ const j = new Os(), zn = {
761
790
  _: 1
762
791
  })
763
792
  ]),
764
- f("div", Bs, [
793
+ f("div", Ds, [
765
794
  k(ie, {
766
795
  "enter-active-class": "transition-all duration-300 ease-out",
767
796
  "enter-from-class": "opacity-0 translate-x-4",
@@ -770,24 +799,24 @@ const j = new Os(), zn = {
770
799
  "leave-from-class": "opacity-100 translate-x-0",
771
800
  "leave-to-class": "opacity-0 translate-x-4"
772
801
  }, {
773
- default: L(() => [
774
- (m(!0), g(E, null, z(a.value, (p) => (m(), g("div", {
802
+ default: P(() => [
803
+ (m(!0), g(E, null, I(a.value, (p) => (m(), g("div", {
775
804
  key: p.id,
776
805
  class: "pointer-events-auto"
777
806
  }, [
778
- k(ae, {
807
+ k(oe, {
779
808
  type: p.type,
780
809
  closeable: p.closeable,
781
- onClose: (v) => c(p.id),
782
- onMouseenter: (v) => n(p.id),
783
- onMouseleave: (v) => i(p.id)
810
+ onClose: (b) => c(p.id),
811
+ onMouseenter: (b) => r(p.id),
812
+ onMouseleave: (b) => i(p.id)
784
813
  }, {
785
- default: L(() => [
814
+ default: P(() => [
786
815
  p.component ? (m(), H(Z(p.component), q({
787
816
  key: 0,
788
817
  ref_for: !0
789
818
  }, p.props), null, 16)) : (m(), g(E, { key: 1 }, [
790
- O(M(p.message), 1)
819
+ A(M(p.message), 1)
791
820
  ], 64))
792
821
  ]),
793
822
  _: 2
@@ -806,24 +835,24 @@ const j = new Os(), zn = {
806
835
  "leave-from-class": "opacity-100 scale-100",
807
836
  "leave-to-class": "opacity-0 scale-95"
808
837
  }, {
809
- default: L(() => [
810
- (m(!0), g(E, null, z(l.value, (p) => (m(), g("div", {
838
+ default: P(() => [
839
+ (m(!0), g(E, null, I(l.value, (p) => (m(), g("div", {
811
840
  key: p.id,
812
841
  class: "pointer-events-auto"
813
842
  }, [
814
- k(ae, {
843
+ k(oe, {
815
844
  type: p.type,
816
845
  closeable: p.closeable,
817
- onClose: (v) => c(p.id),
818
- onMouseenter: (v) => n(p.id),
819
- onMouseleave: (v) => i(p.id)
846
+ onClose: (b) => c(p.id),
847
+ onMouseenter: (b) => r(p.id),
848
+ onMouseleave: (b) => i(p.id)
820
849
  }, {
821
- default: L(() => [
850
+ default: P(() => [
822
851
  p.component ? (m(), H(Z(p.component), q({
823
852
  key: 0,
824
853
  ref_for: !0
825
854
  }, p.props), null, 16)) : (m(), g(E, { key: 1 }, [
826
- O(M(p.message), 1)
855
+ A(M(p.message), 1)
827
856
  ], 64))
828
857
  ]),
829
858
  _: 2
@@ -842,24 +871,24 @@ const j = new Os(), zn = {
842
871
  "leave-from-class": "opacity-100 translate-x-0",
843
872
  "leave-to-class": "opacity-0 -translate-x-4"
844
873
  }, {
845
- default: L(() => [
846
- (m(!0), g(E, null, z(r.value, (p) => (m(), g("div", {
874
+ default: P(() => [
875
+ (m(!0), g(E, null, I(n.value, (p) => (m(), g("div", {
847
876
  key: p.id,
848
877
  class: "pointer-events-auto"
849
878
  }, [
850
- k(ae, {
879
+ k(oe, {
851
880
  type: p.type,
852
881
  closeable: p.closeable,
853
- onClose: (v) => c(p.id),
854
- onMouseenter: (v) => n(p.id),
855
- onMouseleave: (v) => i(p.id)
882
+ onClose: (b) => c(p.id),
883
+ onMouseenter: (b) => r(p.id),
884
+ onMouseleave: (b) => i(p.id)
856
885
  }, {
857
- default: L(() => [
886
+ default: P(() => [
858
887
  p.component ? (m(), H(Z(p.component), q({
859
888
  key: 0,
860
889
  ref_for: !0
861
890
  }, p.props), null, 16)) : (m(), g(E, { key: 1 }, [
862
- O(M(p.message), 1)
891
+ A(M(p.message), 1)
863
892
  ], 64))
864
893
  ]),
865
894
  _: 2
@@ -878,24 +907,24 @@ const j = new Os(), zn = {
878
907
  "leave-from-class": "opacity-100 translate-x-0",
879
908
  "leave-to-class": "opacity-0 translate-x-4"
880
909
  }, {
881
- default: L(() => [
882
- (m(!0), g(E, null, z(o.value, (p) => (m(), g("div", {
910
+ default: P(() => [
911
+ (m(!0), g(E, null, I(o.value, (p) => (m(), g("div", {
883
912
  key: p.id,
884
913
  class: "pointer-events-auto"
885
914
  }, [
886
- k(ae, {
915
+ k(oe, {
887
916
  type: p.type,
888
917
  closeable: p.closeable,
889
- onClose: (v) => c(p.id),
890
- onMouseenter: (v) => n(p.id),
891
- onMouseleave: (v) => i(p.id)
918
+ onClose: (b) => c(p.id),
919
+ onMouseenter: (b) => r(p.id),
920
+ onMouseleave: (b) => i(p.id)
892
921
  }, {
893
- default: L(() => [
922
+ default: P(() => [
894
923
  p.component ? (m(), H(Z(p.component), q({
895
924
  key: 0,
896
925
  ref_for: !0
897
926
  }, p.props), null, 16)) : (m(), g(E, { key: 1 }, [
898
- O(M(p.message), 1)
927
+ A(M(p.message), 1)
899
928
  ], 64))
900
929
  ]),
901
930
  _: 2
@@ -912,36 +941,36 @@ const j = new Os(), zn = {
912
941
  () => {
913
942
  const e = K({
914
943
  brands: []
915
- }), s = (r = {}) => {
916
- if (!r.brands || !Array.isArray(r.brands)) {
944
+ }), s = (n = {}) => {
945
+ if (!n.brands || !Array.isArray(n.brands)) {
917
946
  console.warn("useSparkBrandFilterStore: No brands provided to initialize()"), e.brands = [];
918
947
  return;
919
948
  }
920
- const o = r.brands.filter((n) => {
921
- const i = n.name && n.logo;
922
- return i || console.warn("useSparkBrandFilterStore: Invalid brand object", n), i;
923
- }), c = o.filter((n) => n.current);
924
- c.length === 0 && o.length > 0 ? o[0].current = !0 : c.length > 1 && o.forEach((n) => {
925
- n.current = n === c[0];
926
- }), e.brands = o.map((n) => ({
927
- id: n.id,
928
- name: n.name,
929
- logo: n.logo,
930
- current: n.current || !1
949
+ const o = n.brands.filter((r) => {
950
+ const i = r.name && r.logo;
951
+ return i || console.warn("useSparkBrandFilterStore: Invalid brand object", r), i;
952
+ }), c = o.filter((r) => r.current);
953
+ c.length === 0 && o.length > 0 ? o[0].current = !0 : c.length > 1 && o.forEach((r) => {
954
+ r.current = r === c[0];
955
+ }), e.brands = o.map((r) => ({
956
+ id: r.id,
957
+ name: r.name,
958
+ logo: r.logo,
959
+ current: r.current || !1
931
960
  }));
932
- }, t = $(() => e.brands.find((r) => r.current) || null), a = $(() => e.brands);
961
+ }, t = $(() => e.brands.find((n) => n.current) || null), a = $(() => e.brands);
933
962
  return {
934
963
  state: e,
935
964
  initialize: s,
936
965
  currentBrand: t,
937
966
  allBrands: a,
938
- toggleBrand: (r) => {
939
- if (!r || !e.brands.includes(r)) {
967
+ toggleBrand: (n) => {
968
+ if (!n || !e.brands.includes(n)) {
940
969
  console.warn("useSparkBrandFilterStore: Invalid brand provided to toggleBrand()");
941
970
  return;
942
971
  }
943
972
  e.brands.forEach((o) => {
944
- o.current = o === r;
973
+ o.current = o === n;
945
974
  });
946
975
  }
947
976
  };
@@ -961,10 +990,10 @@ const j = new Os(), zn = {
961
990
  __name: "SparkBrandSelector",
962
991
  emits: ["close", "select"],
963
992
  setup(e, { emit: s }) {
964
- const t = s, a = it(), l = (r) => {
965
- t("select", r);
993
+ const t = s, a = it(), l = (n) => {
994
+ t("select", n);
966
995
  };
967
- return (r, o) => {
996
+ return (n, o) => {
968
997
  const c = F("font-awesome-icon");
969
998
  return m(), g("div", Ns, [
970
999
  f("div", Zs, [
@@ -973,30 +1002,30 @@ const j = new Os(), zn = {
973
1002
  o[1] || (o[1] = f("div", null, "Filter by Brand", -1)),
974
1003
  f("div", Ks, [
975
1004
  k(c, {
976
- icon: _(A).farTimes,
1005
+ icon: S(O).farTimes,
977
1006
  class: "size-4 text-gray-400 cursor-pointer",
978
- onClick: o[0] || (o[0] = (n) => t("close"))
1007
+ onClick: o[0] || (o[0] = (r) => t("close"))
979
1008
  }, null, 8, ["icon"])
980
1009
  ])
981
1010
  ]),
982
- _(a).allBrands.length === 0 ? (m(), g("div", Gs, " No brands configured ")) : T("", !0),
983
- (m(!0), g(E, null, z(_(a).allBrands, (n) => (m(), g("div", {
984
- key: n.id,
985
- class: V([n.current ? "bg-gray-50" : "hover:bg-gray-50", "flex px-[22px] py-[15px] cursor-pointer"]),
986
- onClick: (i) => l(n)
1011
+ S(a).allBrands.length === 0 ? (m(), g("div", Gs, " No brands configured ")) : T("", !0),
1012
+ (m(!0), g(E, null, I(S(a).allBrands, (r) => (m(), g("div", {
1013
+ key: r.id,
1014
+ class: V([r.current ? "bg-gray-50" : "hover:bg-gray-50", "flex px-[22px] py-[15px] cursor-pointer"]),
1015
+ onClick: (i) => l(r)
987
1016
  }, [
988
1017
  f("div", Ys, [
989
1018
  f("div", Xs, [
990
1019
  f("div", Js, [
991
- f("div", Qs, M(n.name), 1),
992
- n.current ? (m(), g("span", ea, " Current ")) : T("", !0)
1020
+ f("div", Qs, M(r.name), 1),
1021
+ r.current ? (m(), g("span", ea, " Current ")) : T("", !0)
993
1022
  ]),
994
- f("div", ta, M(n.current ? "Current Brand" : "Change to"), 1)
1023
+ f("div", ta, M(r.current ? "Current Brand" : "Change to"), 1)
995
1024
  ]),
996
1025
  f("div", sa, [
997
1026
  f("img", {
998
- src: n.logo,
999
- alt: `${n.name} logo`,
1027
+ src: r.logo,
1028
+ alt: `${r.name} logo`,
1000
1029
  class: "h-8 w-auto"
1001
1030
  }, null, 8, aa)
1002
1031
  ])
@@ -1032,16 +1061,16 @@ const j = new Os(), zn = {
1032
1061
  },
1033
1062
  emits: ["click"],
1034
1063
  setup(e) {
1035
- const s = e, t = R(null), a = _e("buttonGroup", null), l = $(() => {
1064
+ const s = e, t = R(null), a = Se("buttonGroup", null), l = $(() => {
1036
1065
  if (!a?.isInGroup || !t.value) return null;
1037
- const n = a.getButtonIndex(t.value), i = a.getButtonCount();
1066
+ const r = a.getButtonIndex(t.value), i = a.getButtonCount();
1038
1067
  return {
1039
- isFirst: n === 0,
1040
- isLast: n === i - 1,
1041
- index: n,
1068
+ isFirst: r === 0,
1069
+ isLast: r === i - 1,
1070
+ index: r,
1042
1071
  total: i
1043
1072
  };
1044
- }), r = {
1073
+ }), n = {
1045
1074
  paddingX: /^px-/,
1046
1075
  paddingY: /^py-/,
1047
1076
  paddingAll: /^p-/,
@@ -1051,74 +1080,74 @@ const j = new Os(), zn = {
1051
1080
  borderRadius: /^rounded-/,
1052
1081
  background: /^bg-/,
1053
1082
  text: /^text-(?!white|black)/
1054
- }, o = (n, i) => {
1055
- if (!i) return n;
1056
- const u = n.split(" ").filter(Boolean), d = i.split(" ").filter(Boolean);
1057
- return [...u.filter((v) => !d.some((b) => {
1058
- const x = Object.entries(r).find(
1059
- ([w, S]) => S.test(v)
1060
- )?.[0], h = Object.entries(r).find(
1061
- ([w, S]) => S.test(b)
1083
+ }, o = (r, i) => {
1084
+ if (!i) return r;
1085
+ const u = r.split(" ").filter(Boolean), d = i.split(" ").filter(Boolean);
1086
+ return [...u.filter((b) => !d.some((v) => {
1087
+ const x = Object.entries(n).find(
1088
+ ([w, C]) => C.test(b)
1089
+ )?.[0], h = Object.entries(n).find(
1090
+ ([w, C]) => C.test(v)
1062
1091
  )?.[0];
1063
1092
  return x && x === h;
1064
1093
  })), ...d].join(" ");
1065
1094
  }, c = $(() => {
1066
- let n = "", i = "";
1095
+ let r = "", i = "";
1067
1096
  switch (s.size) {
1068
1097
  case "xs":
1069
- n += " px-4 py-1 text-xs", i = "sm";
1098
+ r += " px-4 py-1 text-xs", i = "sm";
1070
1099
  break;
1071
1100
  case "sm":
1072
- n += " px-4 py-1 text-sm", i = "sm";
1101
+ r += " px-4 py-1 text-sm", i = "sm";
1073
1102
  break;
1074
1103
  case "md":
1075
- n += " px-5 py-1.5 text-sm", i = "md";
1104
+ r += " px-5 py-1.5 text-sm", i = "md";
1076
1105
  break;
1077
1106
  case "lg":
1078
- n += " px-6 py-2 text-sm", i = "md";
1107
+ r += " px-6 py-2 text-sm", i = "md";
1079
1108
  break;
1080
1109
  case "xl":
1081
- n += " px-7 py-2.5 min-h-[42px] text-sm", i = "md";
1110
+ r += " px-7 py-2.5 min-h-[42px] text-sm", i = "md";
1082
1111
  break;
1083
1112
  }
1084
1113
  if (a?.isInGroup && l.value) {
1085
1114
  const { isFirst: u, isLast: d } = l.value;
1086
- n += " relative inline-flex items-center focus:z-10", u && d ? n += ` rounded-${i}` : u ? n += ` rounded-l-${i} rounded-r-none` : d ? n += ` rounded-r-${i} rounded-l-none -ml-px` : n += " rounded-none -ml-px";
1115
+ r += " relative inline-flex items-center focus:z-10", u && d ? r += ` rounded-${i}` : u ? r += ` rounded-l-${i} rounded-r-none` : d ? r += ` rounded-r-${i} rounded-l-none -ml-px` : r += " rounded-none -ml-px";
1087
1116
  } else
1088
- n += ` shadow-xs rounded-${i}`;
1117
+ r += ` shadow-xs rounded-${i}`;
1089
1118
  switch (s.variant) {
1090
1119
  case "primary":
1091
- n += " bg-primary-600 hover:bg-primary-500 text-white";
1120
+ r += " bg-primary-600 hover:bg-primary-500 text-white";
1092
1121
  break;
1093
1122
  case "secondary":
1094
- n += " ring-1 ring-gray-300 ring-inset bg-white hover:bg-gray-50 text-gray-900";
1123
+ r += " ring-1 ring-gray-300 ring-inset bg-white hover:bg-gray-50 text-gray-900";
1095
1124
  break;
1096
1125
  case "success":
1097
- n += " bg-green-600 hover:bg-green-500 text-white";
1126
+ r += " bg-green-600 hover:bg-green-500 text-white";
1098
1127
  break;
1099
1128
  case "warning":
1100
- n += " bg-amber-600 hover:bg-amber-500 text-white";
1129
+ r += " bg-amber-600 hover:bg-amber-500 text-white";
1101
1130
  break;
1102
1131
  case "danger":
1103
- n += " bg-red-600 hover:bg-red-500 text-white";
1132
+ r += " bg-red-600 hover:bg-red-500 text-white";
1104
1133
  break;
1105
1134
  case "info":
1106
- n += " bg-cyan-600 hover:bg-cyan-500 text-white";
1135
+ r += " bg-cyan-600 hover:bg-cyan-500 text-white";
1107
1136
  break;
1108
1137
  default:
1109
- n += ` bg-${s.variant}-600 hover:bg-${s.variant}-500 text-white`;
1138
+ r += ` bg-${s.variant}-600 hover:bg-${s.variant}-500 text-white`;
1110
1139
  }
1111
- return n = o(n, s.buttonClass), n;
1140
+ return r = o(r, s.buttonClass), r;
1112
1141
  });
1113
- return (n, i) => (m(), g("button", {
1142
+ return (r, i) => (m(), g("button", {
1114
1143
  type: "button",
1115
1144
  ref_key: "buttonRef",
1116
1145
  ref: t,
1117
1146
  class: V(c.value),
1118
1147
  disabled: e.disabled,
1119
- onClick: i[0] || (i[0] = (u) => n.$emit("click"))
1148
+ onClick: i[0] || (i[0] = (u) => r.$emit("click"))
1120
1149
  }, [
1121
- D(n.$slots, "default")
1150
+ B(r.$slots, "default")
1122
1151
  ], 10, ra));
1123
1152
  }
1124
1153
  }, na = {
@@ -1129,12 +1158,12 @@ const j = new Os(), zn = {
1129
1158
  isInGroup: !0,
1130
1159
  getButtonIndex: (l) => s.value ? Array.from(s.value.children).indexOf(l) : -1,
1131
1160
  getButtonCount: () => s.value?.children.length || 0
1132
- }), (l, r) => (m(), g("div", {
1161
+ }), (l, n) => (m(), g("div", {
1133
1162
  class: "inline-flex rounded-md shadow-xs",
1134
1163
  ref_key: "groupRef",
1135
1164
  ref: s
1136
1165
  }, [
1137
- D(l.$slots, "default")
1166
+ B(l.$slots, "default")
1138
1167
  ], 512));
1139
1168
  }
1140
1169
  }, la = { class: "divide-y divide-gray-300 rounded-lg border border-gray-300 text-gray-700 bg-gray-100" }, ia = {
@@ -1159,15 +1188,15 @@ const j = new Os(), zn = {
1159
1188
  const s = e;
1160
1189
  return (t, a) => (m(), g("div", la, [
1161
1190
  t.$slots.header ? (m(), g("div", ia, [
1162
- D(t.$slots, "header")
1191
+ B(t.$slots, "header")
1163
1192
  ])) : T("", !0),
1164
1193
  f("div", {
1165
1194
  class: V([s.padded ? s.paddedClass : ""])
1166
1195
  }, [
1167
- D(t.$slots, "default")
1196
+ B(t.$slots, "default")
1168
1197
  ], 2),
1169
1198
  t.$slots.footer ? (m(), g("div", ca, [
1170
- D(t.$slots, "footer")
1199
+ B(t.$slots, "footer")
1171
1200
  ])) : T("", !0)
1172
1201
  ]));
1173
1202
  }
@@ -1229,19 +1258,19 @@ const j = new Os(), zn = {
1229
1258
  },
1230
1259
  emits: ["update:modelValue", "upload-start", "upload-success", "upload-error"],
1231
1260
  setup(e, { emit: s }) {
1232
- const t = e, a = s, l = _e("axios"), r = R(!1), o = R(!1);
1261
+ const t = e, a = s, l = Se("axios"), n = R(!1), o = R(!1);
1233
1262
  function c() {
1234
1263
  a("update:modelValue", "");
1235
1264
  }
1236
- function n() {
1237
- t.disabled || r.value || (o.value = !0);
1265
+ function r() {
1266
+ t.disabled || n.value || (o.value = !0);
1238
1267
  }
1239
1268
  function i() {
1240
1269
  o.value = !1;
1241
1270
  }
1242
- function u(b) {
1243
- if (o.value = !1, t.disabled || r.value) return;
1244
- const x = b.dataTransfer?.files?.[0];
1271
+ function u(v) {
1272
+ if (o.value = !1, t.disabled || n.value) return;
1273
+ const x = v.dataTransfer?.files?.[0];
1245
1274
  if (x) {
1246
1275
  if (!d(x)) {
1247
1276
  j.show({
@@ -1250,33 +1279,33 @@ const j = new Os(), zn = {
1250
1279
  });
1251
1280
  return;
1252
1281
  }
1253
- v(x);
1282
+ b(x);
1254
1283
  }
1255
1284
  }
1256
- function d(b) {
1285
+ function d(v) {
1257
1286
  const x = t.accept.split(",").map((h) => h.trim());
1258
1287
  for (const h of x) {
1259
1288
  if (h === "*/*") return !0;
1260
1289
  if (h.endsWith("/*")) {
1261
1290
  const w = h.slice(0, -2);
1262
- if (b.type.startsWith(w + "/")) return !0;
1291
+ if (v.type.startsWith(w + "/")) return !0;
1263
1292
  } else if (h.startsWith(".")) {
1264
- if (b.name.toLowerCase().endsWith(h.toLowerCase())) return !0;
1265
- } else if (b.type === h) return !0;
1293
+ if (v.name.toLowerCase().endsWith(h.toLowerCase())) return !0;
1294
+ } else if (v.type === h) return !0;
1266
1295
  }
1267
1296
  return !1;
1268
1297
  }
1269
- function p(b) {
1270
- if (!b || b.length === 0) return;
1271
- const x = b[0].file;
1272
- x && v(x);
1298
+ function p(v) {
1299
+ if (!v || v.length === 0) return;
1300
+ const x = v[0].file;
1301
+ x && b(x);
1273
1302
  }
1274
- async function v(b) {
1275
- r.value = !0, a("upload-start");
1303
+ async function b(v) {
1304
+ n.value = !0, a("upload-start");
1276
1305
  try {
1277
1306
  const x = new FormData();
1278
- x.append(t.fieldName, b), Object.entries(t.extraFields).forEach(([S, y]) => {
1279
- x.append(S, y);
1307
+ x.append(t.fieldName, v), Object.entries(t.extraFields).forEach(([C, y]) => {
1308
+ x.append(C, y);
1280
1309
  });
1281
1310
  const h = await l.post(t.uploadUrl, x, {
1282
1311
  headers: { "Content-Type": "multipart/form-data" }
@@ -1291,10 +1320,10 @@ const j = new Os(), zn = {
1291
1320
  message: x.response?.data?.message || "Failed to upload image."
1292
1321
  });
1293
1322
  } finally {
1294
- r.value = !1;
1323
+ n.value = !1;
1295
1324
  }
1296
1325
  }
1297
- return (b, x) => {
1326
+ return (v, x) => {
1298
1327
  const h = F("font-awesome-icon"), w = F("FormKit");
1299
1328
  return m(), g("div", null, [
1300
1329
  e.label ? (m(), g("label", ua, M(e.label), 1)) : T("", !0),
@@ -1317,7 +1346,7 @@ const j = new Os(), zn = {
1317
1346
  onClick: c
1318
1347
  }, [
1319
1348
  k(h, {
1320
- icon: _(A).farXmark,
1349
+ icon: S(O).farXmark,
1321
1350
  class: "text-xs"
1322
1351
  }, null, 8, ["icon"])
1323
1352
  ], 8, ma)
@@ -1327,8 +1356,8 @@ const j = new Os(), zn = {
1327
1356
  class: V(["relative rounded-md transition-colors", {
1328
1357
  "ring-2 ring-blue-500 ring-offset-2 bg-blue-50": o.value
1329
1358
  }]),
1330
- onDragover: U(n, ["prevent"]),
1331
- onDragenter: U(n, ["prevent"]),
1359
+ onDragover: U(r, ["prevent"]),
1360
+ onDragenter: U(r, ["prevent"]),
1332
1361
  onDragleave: U(i, ["prevent"]),
1333
1362
  onDrop: U(u, ["prevent"])
1334
1363
  }, [
@@ -1336,21 +1365,21 @@ const j = new Os(), zn = {
1336
1365
  type: "file",
1337
1366
  name: e.name,
1338
1367
  accept: e.accept,
1339
- disabled: e.disabled || r.value,
1368
+ disabled: e.disabled || n.value,
1340
1369
  onInput: p
1341
1370
  }, null, 8, ["name", "accept", "disabled"]),
1342
1371
  o.value ? (m(), g("div", ha, [...x[0] || (x[0] = [
1343
1372
  f("span", { class: "text-sm text-blue-600 font-medium" }, "Drop image here", -1)
1344
1373
  ])])) : T("", !0)
1345
1374
  ], 34)),
1346
- r.value ? (m(), g("p", ga, "Uploading...")) : T("", !0)
1375
+ n.value ? (m(), g("p", ga, "Uploading...")) : T("", !0)
1347
1376
  ]);
1348
1377
  };
1349
1378
  }
1350
- }, ya = { class: "px-4 pt-5 pb-4 sm:p-6" }, ba = {
1379
+ }, ya = { class: "px-4 pt-5 pb-4 sm:p-6" }, va = {
1351
1380
  key: 0,
1352
1381
  class: "text-lg font-medium text-gray-900"
1353
- }, va = {
1382
+ }, ba = {
1354
1383
  __name: "SparkModalDialog",
1355
1384
  props: {
1356
1385
  title: {
@@ -1416,7 +1445,7 @@ const j = new Os(), zn = {
1416
1445
  success: "farCheckCircle",
1417
1446
  warning: "farExclamationTriangle",
1418
1447
  danger: "farCircleXmark"
1419
- }, r = $(() => s.icon || l[s.type]), o = $(() => ({
1448
+ }, n = $(() => s.icon || l[s.type]), o = $(() => ({
1420
1449
  info: "bg-blue-100",
1421
1450
  success: "bg-green-100",
1422
1451
  warning: "bg-yellow-100",
@@ -1427,22 +1456,22 @@ const j = new Os(), zn = {
1427
1456
  warning: "text-yellow-400",
1428
1457
  danger: "text-red-400"
1429
1458
  })[s.type]);
1430
- return (n, i) => {
1459
+ return (r, i) => {
1431
1460
  const u = F("font-awesome-icon");
1432
1461
  return m(), g("div", ya, [
1433
- r.value ? (m(), g("div", {
1462
+ n.value ? (m(), g("div", {
1434
1463
  key: 0,
1435
1464
  class: V(["mx-auto flex size-12 items-center justify-center rounded-full", o.value])
1436
1465
  }, [
1437
1466
  k(u, {
1438
- icon: _(A)[r.value],
1467
+ icon: S(O)[n.value],
1439
1468
  class: V(["h-5 w-5", c.value])
1440
1469
  }, null, 8, ["icon", "class"])
1441
1470
  ], 2)) : T("", !0),
1442
1471
  f("div", {
1443
- class: V(["text-center", { "mt-3 sm:mt-5": r.value }])
1472
+ class: V(["text-center", { "mt-3 sm:mt-5": n.value }])
1444
1473
  }, [
1445
- e.title ? (m(), g("h3", ba, M(e.title), 1)) : T("", !0),
1474
+ e.title ? (m(), g("h3", va, M(e.title), 1)) : T("", !0),
1446
1475
  e.message ? (m(), g("div", {
1447
1476
  key: 1,
1448
1477
  class: V([{ "mt-2": e.title }, "text-sm text-gray-500"])
@@ -1451,13 +1480,13 @@ const j = new Os(), zn = {
1451
1480
  f("div", {
1452
1481
  class: V(["mt-5 sm:mt-6", a.value])
1453
1482
  }, [
1454
- (m(!0), g(E, null, z(t.value, (d, p) => (m(), H(_(X), {
1483
+ (m(!0), g(E, null, I(t.value, (d, p) => (m(), H(S(X), {
1455
1484
  key: p,
1456
1485
  variant: d.variant,
1457
- onClick: (v) => n.$emit(d.event, d)
1486
+ onClick: (b) => r.$emit(d.event, d)
1458
1487
  }, {
1459
- default: L(() => [
1460
- O(M(d.text), 1)
1488
+ default: P(() => [
1489
+ A(M(d.text), 1)
1461
1490
  ]),
1462
1491
  _: 2
1463
1492
  }, 1032, ["variant", "onClick"]))), 128))
@@ -1497,19 +1526,19 @@ class xa {
1497
1526
  const {
1498
1527
  title: a = "Confirm",
1499
1528
  message: l = "Are you sure?",
1500
- type: r = "warning",
1529
+ type: n = "warning",
1501
1530
  confirmText: o = "Confirm",
1502
1531
  cancelText: c = "Cancel",
1503
- confirmVariant: n = "primary"
1532
+ confirmVariant: r = "primary"
1504
1533
  } = s;
1505
1534
  this.show(
1506
- va,
1535
+ ba,
1507
1536
  {
1508
1537
  title: a,
1509
1538
  message: l,
1510
- type: r,
1539
+ type: n,
1511
1540
  buttons: [
1512
- { text: o, variant: n, event: "confirm" },
1541
+ { text: o, variant: r, event: "confirm" },
1513
1542
  { text: c, variant: "secondary", event: "cancel" }
1514
1543
  ]
1515
1544
  },
@@ -1524,20 +1553,20 @@ class xa {
1524
1553
  );
1525
1554
  });
1526
1555
  }
1527
- const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto" }, wa = { class: "flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0" }, _a = {
1556
+ const re = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto" }, wa = { class: "flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0" }, _a = {
1528
1557
  __name: "SparkModalContainer",
1529
1558
  setup(e) {
1530
- return (s, t) => (m(), H(_(tt), {
1559
+ return (s, t) => (m(), H(S(tt), {
1531
1560
  as: "template",
1532
- show: _(oe).state.isVisible
1561
+ show: S(re).state.isVisible
1533
1562
  }, {
1534
- default: L(() => [
1535
- k(_(st), {
1563
+ default: P(() => [
1564
+ k(S(st), {
1536
1565
  class: "relative z-1000",
1537
- onClose: _(oe).hide
1566
+ onClose: S(re).hide
1538
1567
  }, {
1539
- default: L(() => [
1540
- k(_(fe), {
1568
+ default: P(() => [
1569
+ k(S(fe), {
1541
1570
  as: "template",
1542
1571
  enter: "ease-out duration-300",
1543
1572
  "enter-from": "opacity-0",
@@ -1546,14 +1575,14 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1546
1575
  "leave-from": "opacity-100",
1547
1576
  "leave-to": "opacity-0"
1548
1577
  }, {
1549
- default: L(() => [...t[0] || (t[0] = [
1578
+ default: P(() => [...t[0] || (t[0] = [
1550
1579
  f("div", { class: "fixed inset-0 bg-gray-500/75 transition-opacity" }, null, -1)
1551
1580
  ])]),
1552
1581
  _: 1
1553
1582
  }),
1554
1583
  f("div", ka, [
1555
1584
  f("div", wa, [
1556
- k(_(fe), {
1585
+ k(S(fe), {
1557
1586
  as: "template",
1558
1587
  enter: "ease-out duration-300",
1559
1588
  "enter-from": "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",
@@ -1562,10 +1591,10 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1562
1591
  "leave-from": "opacity-100 translate-y-0 sm:scale-100",
1563
1592
  "leave-to": "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
1564
1593
  }, {
1565
- default: L(() => [
1566
- k(_(at), { 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" }, {
1567
- default: L(() => [
1568
- (m(), H(Z(_(oe).state.content), q(_(oe).state.props, Oe(_(oe).state.eventHandlers)), null, 16))
1594
+ default: P(() => [
1595
+ k(S(at), { 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" }, {
1596
+ default: P(() => [
1597
+ (m(), H(Z(S(re).state.content), q(S(re).state.props, Ae(S(re).state.eventHandlers)), null, 16))
1569
1598
  ]),
1570
1599
  _: 1
1571
1600
  })
@@ -1581,7 +1610,7 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1581
1610
  _: 1
1582
1611
  }, 8, ["show"]));
1583
1612
  }
1584
- }, Sa = { class: "fixed inset-0 flex" }, Le = {
1613
+ }, Sa = { class: "fixed inset-0 flex" }, Pe = {
1585
1614
  __name: "SparkOverlay",
1586
1615
  props: {
1587
1616
  position: {
@@ -1602,21 +1631,21 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1602
1631
  md: "w-[450px]",
1603
1632
  lg: "w-[810px]",
1604
1633
  xl: "w-[1000px]"
1605
- }, l = e, r = s, o = $(() => a[l.overlayInstance.state.size] || a.md), c = () => {
1606
- l.overlayInstance.close(), r("close");
1634
+ }, l = e, n = s, o = $(() => a[l.overlayInstance.state.size] || a.md), c = () => {
1635
+ l.overlayInstance.close(), n("close");
1607
1636
  };
1608
- return (n, i) => (m(), H(_(tt), {
1637
+ return (r, i) => (m(), H(S(tt), {
1609
1638
  show: e.overlayInstance.state.isVisible,
1610
1639
  as: "template"
1611
1640
  }, {
1612
- default: L(() => [
1613
- k(_(st), {
1641
+ default: P(() => [
1642
+ k(S(st), {
1614
1643
  initialFocus: t.value,
1615
1644
  class: "relative z-1000",
1616
1645
  onClose: c
1617
1646
  }, {
1618
- default: L(() => [
1619
- k(_(fe), {
1647
+ default: P(() => [
1648
+ k(S(fe), {
1620
1649
  as: "template",
1621
1650
  enter: "transition-opacity ease-linear duration-150",
1622
1651
  "enter-from": "opacity-0",
@@ -1625,13 +1654,13 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1625
1654
  "leave-from": "opacity-100",
1626
1655
  "leave-to": "opacity-0"
1627
1656
  }, {
1628
- default: L(() => [...i[0] || (i[0] = [
1657
+ default: P(() => [...i[0] || (i[0] = [
1629
1658
  f("div", { class: "fixed inset-0 bg-gray-600/30" }, null, -1)
1630
1659
  ])]),
1631
1660
  _: 1
1632
1661
  }),
1633
1662
  f("div", Sa, [
1634
- k(_(fe), {
1663
+ k(S(fe), {
1635
1664
  as: "template",
1636
1665
  enter: "transition ease-in-out duration-150 transform",
1637
1666
  "enter-from": e.position === "left" ? "-translate-x-full opacity-0" : "translate-x-full opacity-0",
@@ -1640,8 +1669,8 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1640
1669
  "leave-from": "translate-x-0 opacity-100",
1641
1670
  "leave-to": e.position === "left" ? "-translate-x-full opacity-0" : "translate-x-full opacity-0"
1642
1671
  }, {
1643
- default: L(() => [
1644
- k(_(at), {
1672
+ default: P(() => [
1673
+ k(S(at), {
1645
1674
  ref_key: "panelRef",
1646
1675
  ref: t,
1647
1676
  class: V([
@@ -1650,8 +1679,8 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1650
1679
  e.position === "left" ? "relative left-[10px]" : "absolute right-[10px] h-full"
1651
1680
  ])
1652
1681
  }, {
1653
- default: L(() => [
1654
- (m(), H(Z(e.overlayInstance.state.content), q(e.overlayInstance.state.props, Oe(e.overlayInstance.state.eventHandlers)), null, 16))
1682
+ default: P(() => [
1683
+ (m(), H(Z(e.overlayInstance.state.content), q(e.overlayInstance.state.props, Ae(e.overlayInstance.state.eventHandlers)), null, 16))
1655
1684
  ]),
1656
1685
  _: 1
1657
1686
  }, 8, ["class"])
@@ -1678,11 +1707,11 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1678
1707
  return;
1679
1708
  const l = document.createElement("span");
1680
1709
  l.classList.add("spark-table-head-sorting"), l.innerHTML = ee({ prefix: "fad", iconName: "sort" }).html + ee({ prefix: "fad", iconName: "sort-up" }).html + ee({ prefix: "fad", iconName: "sort-down" }).html, a.appendChild(l), a.addEventListener("click", async () => {
1681
- const r = t.params.orderBy, o = t.params.sortedBy;
1682
- return r === e && o === "asc" ? (a.classList.remove("asc"), a.classList.add("desc"), t.methods.applyParams({
1710
+ const n = t.params.orderBy, o = t.params.sortedBy;
1711
+ return n === e && o === "asc" ? (a.classList.remove("asc"), a.classList.add("desc"), t.methods.applyParams({
1683
1712
  orderBy: e,
1684
1713
  sortedBy: "desc"
1685
- })) : r === e ? (a.classList.remove("desc"), await t.methods.clearParams(["orderBy", "sortedBy"])) : (a.classList.add("asc"), t.methods.applyParams({
1714
+ })) : n === e ? (a.classList.remove("desc"), await t.methods.clearParams(["orderBy", "sortedBy"])) : (a.classList.add("asc"), t.methods.applyParams({
1686
1715
  orderBy: e,
1687
1716
  sortedBy: "asc"
1688
1717
  }));
@@ -1692,28 +1721,28 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1692
1721
  return;
1693
1722
  const a = document.createElement("div"), l = document.createElement("input");
1694
1723
  l.type = "text", l.placeholder = "Filter...", a.className = "spark-table-head-filter", a.appendChild(l);
1695
- const r = ot(async (o, c) => {
1696
- const n = c.target.value, i = `filter[${o}]`;
1697
- if (n)
1698
- return t.params[i] && t.params[i] === n ? void 0 : t.methods.applyParams({
1724
+ const n = ot(async (o, c) => {
1725
+ const r = c.target.value, i = `filter[${o}]`;
1726
+ if (r)
1727
+ return t.params[i] && t.params[i] === r ? void 0 : t.methods.applyParams({
1699
1728
  page: 1,
1700
- [i]: n
1729
+ [i]: r
1701
1730
  });
1702
1731
  await t.methods.removeParam(i);
1703
1732
  }, 200);
1704
- l.addEventListener("keyup", (o) => r(e, o)), s.appendChild(a);
1705
- }, La = (e, s, t) => {
1733
+ l.addEventListener("keyup", (o) => n(e, o)), s.appendChild(a);
1734
+ }, Pa = (e, s, t) => {
1706
1735
  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");
1707
1736
  const l = e.querySelector(".colHeader");
1708
1737
  l.classList.add("spark-table-head-title"), l.innerHTML = Ca(s);
1709
- }, Pa = (e, s, t) => {
1738
+ }, La = (e, s, t) => {
1710
1739
  if (typeof e != "number")
1711
1740
  return e;
1712
1741
  if (e < 0)
1713
1742
  return;
1714
1743
  let a = 2;
1715
- const l = t.methods.colToProp(e), r = t.methods.getSettingsForProp(l);
1716
- s.childElementCount === 1 && ((!r || !r.columnSort) && a--, (!r || !r.columnFilter) && a--, r && r.columnSort && $a(l, s, t), r && r.columnFilter && Ta(l, s, t)), (s.childElementCount === a || a === 0) && La(s, l, r);
1744
+ const l = t.methods.colToProp(e), n = t.methods.getSettingsForProp(l);
1745
+ s.childElementCount === 1 && ((!n || !n.columnSort) && a--, (!n || !n.columnFilter) && a--, n && n.columnSort && $a(l, s, t), n && n.columnFilter && Ta(l, s, t)), (s.childElementCount === a || a === 0) && Pa(s, l, n);
1717
1746
  }, Ma = (e) => {
1718
1747
  if (!e.hotInstance || !e.hotInstance.rootElement)
1719
1748
  return;
@@ -1721,10 +1750,10 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1721
1750
  a.forEach((l) => {
1722
1751
  l.classList.remove("asc", "desc");
1723
1752
  }), s && t && a.forEach((l) => {
1724
- const r = l.closest("th"), o = Array.from(r.parentElement.children).indexOf(r);
1753
+ const n = l.closest("th"), o = Array.from(n.parentElement.children).indexOf(n);
1725
1754
  e.methods.colToProp(o) === s && l.classList.add(t);
1726
1755
  });
1727
- }, Va = (e) => (s, t, a, l, r, o, c) => {
1756
+ }, Va = (e) => (s, t, a, l, n, o, c) => {
1728
1757
  t.innerHTML = "", t.classList.add("spark-table-cell-actions");
1729
1758
  const i = (c.rendererConfig || {}).actions || [];
1730
1759
  if (i.length === 0)
@@ -1733,19 +1762,19 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1733
1762
  d.classList.add("flex", "items-center", "gap-2"), i.forEach((p) => {
1734
1763
  if (p.condition && typeof p.condition == "function" && !p.condition(u))
1735
1764
  return;
1736
- const v = document.createElement("button");
1737
- if (v.type = "button", v.classList.add("spark-table-action-button"), p.icon) {
1738
- const b = document.createElement("span");
1739
- b.innerHTML = ee({ prefix: "far", iconName: p.icon }).html, b.classList.add("size-4"), v.appendChild(b);
1765
+ const b = document.createElement("button");
1766
+ if (b.type = "button", b.classList.add("spark-table-action-button"), p.icon) {
1767
+ const v = document.createElement("span");
1768
+ v.innerHTML = ee({ prefix: "far", iconName: p.icon }).html, v.classList.add("size-4"), b.appendChild(v);
1740
1769
  }
1741
1770
  if (p.label) {
1742
- const b = document.createElement("span");
1743
- b.textContent = p.label, v.appendChild(b);
1771
+ const v = document.createElement("span");
1772
+ v.textContent = p.label, b.appendChild(v);
1744
1773
  }
1745
- v.addEventListener("click", async (b) => {
1746
- if (b.preventDefault(), b.stopPropagation(), p.confirm) {
1774
+ b.addEventListener("click", async (v) => {
1775
+ if (v.preventDefault(), v.stopPropagation(), p.confirm) {
1747
1776
  const x = typeof p.confirm == "string" ? p.confirm : `Are you sure you want to ${p.label?.toLowerCase() || "perform this action"}?`;
1748
- if (!await oe.confirm({
1777
+ if (!await re.confirm({
1749
1778
  title: p.confirmTitle,
1750
1779
  message: x,
1751
1780
  type: p.confirmType,
@@ -1756,9 +1785,9 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1756
1785
  return;
1757
1786
  }
1758
1787
  p.event && e.methods.fireEvent(p.event, u), p.handler && typeof p.handler == "function" && p.handler(u);
1759
- }), d.appendChild(v);
1788
+ }), d.appendChild(b);
1760
1789
  }), t.appendChild(d);
1761
- }, Pe = {
1790
+ }, Le = {
1762
1791
  green: "bg-green-100 text-green-800",
1763
1792
  red: "bg-red-100 text-red-800",
1764
1793
  yellow: "bg-yellow-100 text-yellow-800",
@@ -1767,10 +1796,10 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1767
1796
  purple: "bg-purple-100 text-purple-800",
1768
1797
  pink: "bg-pink-100 text-pink-800",
1769
1798
  indigo: "bg-indigo-100 text-indigo-800"
1770
- }, Ha = (e) => (s, t, a, l, r, o, c) => {
1799
+ }, Ha = (e) => (s, t, a, l, n, o, c) => {
1771
1800
  if (t.innerHTML = "", t.classList.add("spark-table-cell-badge"), !o)
1772
1801
  return;
1773
- const i = (c.rendererConfig || {}).colorMap || {}, u = i[o] || i[o?.toLowerCase()] || "gray", d = Pe[u] || Pe.gray, p = document.createElement("span");
1802
+ const i = (c.rendererConfig || {}).colorMap || {}, u = i[o] || i[o?.toLowerCase()] || "gray", d = Le[u] || Le.gray, p = document.createElement("span");
1774
1803
  p.classList.add(
1775
1804
  "inline-flex",
1776
1805
  "items-center",
@@ -1801,9 +1830,9 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1801
1830
  return s === "1" || s === "yes" || s === "true";
1802
1831
  }
1803
1832
  return !1;
1804
- }, Fa = (e) => (s, t, a, l, r, o, c) => {
1833
+ }, Fa = (e) => (s, t, a, l, n, o, c) => {
1805
1834
  t.innerHTML = "", t.classList.add("spark-table-cell-boolean");
1806
- const n = c.rendererConfig || {}, i = Ra(o), u = i ? n.trueIcon || "check" : n.falseIcon || "xmark", d = i ? n.trueColor || "green" : n.falseColor || "red", p = n.size || 32, v = n.iconPrefix || "far", b = Me[d] || Me.gray;
1835
+ const r = c.rendererConfig || {}, i = Ra(o), u = i ? r.trueIcon || "check" : r.falseIcon || "xmark", d = i ? r.trueColor || "green" : r.falseColor || "red", p = r.size || 32, b = r.iconPrefix || "far", v = Me[d] || Me.gray;
1807
1836
  t.dataset.copyValue = i ? "true" : "false";
1808
1837
  const x = document.createElement("div");
1809
1838
  x.classList.add(
@@ -1811,24 +1840,24 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1811
1840
  "items-center",
1812
1841
  "justify-center",
1813
1842
  "rounded-full",
1814
- b.bg,
1815
- b.text
1843
+ v.bg,
1844
+ v.text
1816
1845
  ), x.style.width = `${p}px`, x.style.height = `${p}px`;
1817
1846
  const h = document.createElement("span");
1818
- h.innerHTML = ee({ prefix: v, iconName: u }).html, h.classList.add("flex", "items-center", "justify-center");
1847
+ h.innerHTML = ee({ prefix: b, iconName: u }).html, h.classList.add("flex", "items-center", "justify-center");
1819
1848
  const w = Math.round(p * 0.5);
1820
1849
  h.style.fontSize = `${w}px`, x.appendChild(h), t.appendChild(x);
1821
1850
  }, Ea = (e, s = 2) => {
1822
1851
  const t = Number(e);
1823
1852
  if (isNaN(t)) return null;
1824
- const a = t < 0, r = Math.abs(t).toLocaleString("en-AU", {
1853
+ const a = t < 0, n = Math.abs(t).toLocaleString("en-AU", {
1825
1854
  minimumFractionDigits: s,
1826
1855
  maximumFractionDigits: s
1827
1856
  });
1828
- return a ? `-$${r}` : `$${r}`;
1829
- }, Aa = (e) => (s, t, a, l, r, o, c) => {
1857
+ return a ? `-$${n}` : `$${n}`;
1858
+ }, Oa = (e) => (s, t, a, l, n, o, c) => {
1830
1859
  t.innerHTML = "", t.classList.add("spark-table-cell-currency");
1831
- const n = c.rendererConfig || {}, { decimals: i = 2, emptyText: u = "" } = n;
1860
+ const r = c.rendererConfig || {}, { decimals: i = 2, emptyText: u = "" } = r;
1832
1861
  if (o == null || o === "") {
1833
1862
  t.textContent = u;
1834
1863
  return;
@@ -1840,56 +1869,56 @@ const oe = new xa(), ka = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
1840
1869
  }
1841
1870
  const p = document.createElement("span");
1842
1871
  p.textContent = d, t.appendChild(p);
1843
- }, Oa = (e) => (s, t, a, l, r, o, c) => {
1872
+ }, Aa = (e) => (s, t, a, l, n, o, c) => {
1844
1873
  if (t.innerHTML = "", t.classList.add("spark-table-cell-link"), !o)
1845
1874
  return;
1846
- const n = c.rendererConfig || {}, i = s.getSourceDataAtRow(s.toPhysicalRow(a));
1875
+ const r = c.rendererConfig || {}, i = s.getSourceDataAtRow(s.toPhysicalRow(a));
1847
1876
  let u = o;
1848
- n.href && (typeof n.href == "function" ? u = n.href(i) : n.href === "email" ? u = `mailto:${o}` : n.href === "tel" ? u = `tel:${o}` : typeof n.href == "string" && (u = i[n.href] || o));
1877
+ r.href && (typeof r.href == "function" ? u = r.href(i) : r.href === "email" ? u = `mailto:${o}` : r.href === "tel" ? u = `tel:${o}` : typeof r.href == "string" && (u = i[r.href] || o));
1849
1878
  const d = document.createElement("a");
1850
- d.href = u, d.textContent = o, d.classList.add("text-primary-600", "hover:text-primary-900", "hover:underline"), n.target && (d.target = n.target), n.rel && (d.rel = n.rel), d.addEventListener("click", (p) => {
1879
+ d.href = u, d.textContent = o, d.classList.add("text-primary-600", "hover:text-primary-900", "hover:underline"), r.target && (d.target = r.target), r.rel && (d.rel = r.rel), d.addEventListener("click", (p) => {
1851
1880
  p.stopPropagation();
1852
1881
  }), t.appendChild(d);
1853
1882
  }, Ve = {
1854
1883
  sm: "h-6 w-6",
1855
1884
  md: "h-8 w-8",
1856
1885
  lg: "h-12 w-12"
1857
- }, Da = (e) => (s, t, a, l, r, o, c) => {
1886
+ }, Ba = (e) => (s, t, a, l, n, o, c) => {
1858
1887
  if (t.innerHTML = "", t.classList.add("spark-table-cell-image"), !o)
1859
1888
  return;
1860
- const n = c.rendererConfig || {}, i = s.getSourceDataAtRow(s.toPhysicalRow(a)), u = n.size || "md", d = Ve[u] || Ve.md, p = n.rounded !== !1;
1861
- let v = n.alt || "";
1862
- typeof n.alt == "string" && i[n.alt] && (v = i[n.alt]);
1863
- const b = document.createElement("img");
1864
- b.src = o, b.alt = v, b.classList.add(...d.split(" "), "object-cover"), p ? b.classList.add("rounded-full") : b.classList.add("rounded"), t.appendChild(b);
1865
- }, Ba = (e) => (s, t, a, l, r, o, c) => {
1889
+ const r = c.rendererConfig || {}, i = s.getSourceDataAtRow(s.toPhysicalRow(a)), u = r.size || "md", d = Ve[u] || Ve.md, p = r.rounded !== !1;
1890
+ let b = r.alt || "";
1891
+ typeof r.alt == "string" && i[r.alt] && (b = i[r.alt]);
1892
+ const v = document.createElement("img");
1893
+ v.src = o, v.alt = b, v.classList.add(...d.split(" "), "object-cover"), p ? v.classList.add("rounded-full") : v.classList.add("rounded"), t.appendChild(v);
1894
+ }, Da = (e) => (s, t, a, l, n, o, c) => {
1866
1895
  if (t.innerHTML = "", t.classList.add("spark-table-cell-date"), !o)
1867
1896
  return;
1868
- const n = c.rendererConfig || {}, i = n.format || "short", u = n.locale || "en-US";
1897
+ const r = c.rendererConfig || {}, i = r.format || "short", u = r.locale || "en-US";
1869
1898
  let d = o;
1870
1899
  try {
1871
- const v = new Date(o);
1872
- isNaN(v.getTime()) ? d = o : typeof i == "function" ? d = i(v) : i === "short" ? d = v.toLocaleDateString(u) : i === "long" ? d = v.toLocaleDateString(u, {
1900
+ const b = new Date(o);
1901
+ isNaN(b.getTime()) ? d = o : typeof i == "function" ? d = i(b) : i === "short" ? d = b.toLocaleDateString(u) : i === "long" ? d = b.toLocaleDateString(u, {
1873
1902
  year: "numeric",
1874
1903
  month: "long",
1875
1904
  day: "numeric"
1876
- }) : i === "relative" ? d = ja(v) : i === "datetime" ? d = v.toLocaleString(u) : d = v.toLocaleDateString(u);
1877
- } catch (v) {
1878
- console.error("Error formatting date:", v), d = o;
1905
+ }) : i === "relative" ? d = ja(b) : i === "datetime" ? d = b.toLocaleString(u) : d = b.toLocaleDateString(u);
1906
+ } catch (b) {
1907
+ console.error("Error formatting date:", b), d = o;
1879
1908
  }
1880
1909
  const p = document.createElement("span");
1881
1910
  p.textContent = d, t.appendChild(p);
1882
1911
  };
1883
1912
  function ja(e) {
1884
- const t = /* @__PURE__ */ new Date() - e, a = Math.floor(Math.abs(t) / 1e3), l = Math.floor(a / 60), r = Math.floor(l / 60), o = Math.floor(r / 24), c = Math.floor(o / 30), n = Math.floor(o / 365), i = t > 0;
1885
- return a < 60 ? i ? "just now" : "in a moment" : l < 60 ? i ? `${l} minute${l > 1 ? "s" : ""} ago` : `in ${l} minute${l > 1 ? "s" : ""}` : r < 24 ? i ? `${r} hour${r > 1 ? "s" : ""} ago` : `in ${r} hour${r > 1 ? "s" : ""}` : o < 30 ? i ? `${o} day${o > 1 ? "s" : ""} ago` : `in ${o} day${o > 1 ? "s" : ""}` : c < 12 ? i ? `${c} month${c > 1 ? "s" : ""} ago` : `in ${c} month${c > 1 ? "s" : ""}` : i ? `${n} year${n > 1 ? "s" : ""} ago` : `in ${n} year${n > 1 ? "s" : ""}`;
1913
+ const t = /* @__PURE__ */ new Date() - e, a = Math.floor(Math.abs(t) / 1e3), l = Math.floor(a / 60), n = Math.floor(l / 60), o = Math.floor(n / 24), c = Math.floor(o / 30), r = Math.floor(o / 365), i = t > 0;
1914
+ return a < 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" : ""}` : o < 30 ? i ? `${o} day${o > 1 ? "s" : ""} ago` : `in ${o} day${o > 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" : ""}`;
1886
1915
  }
1887
1916
  const za = (e) => {
1888
1917
  const s = ["th", "st", "nd", "rd"], t = e % 100;
1889
1918
  return e + (s[(t - 20) % 10] || s[t] || s[0]);
1890
- }, I = (e, s = 2) => String(e).padStart(s, "0"), ye = /* @__PURE__ */ new Map(), Ia = (e, s) => {
1919
+ }, N = (e, s = 2) => String(e).padStart(s, "0"), ve = /* @__PURE__ */ new Map(), Ia = (e, s) => {
1891
1920
  const t = `${e}:${JSON.stringify(s)}`;
1892
- return ye.has(t) || ye.set(t, new Intl.DateTimeFormat(e, s)), ye.get(t);
1921
+ return ve.has(t) || ve.set(t, new Intl.DateTimeFormat(e, s)), ve.get(t);
1893
1922
  }, ce = (e, s, t, a) => {
1894
1923
  const o = Ia(s, t).formatToParts(e).find((c) => c.type === a);
1895
1924
  return o ? o.value : "";
@@ -1922,8 +1951,8 @@ const za = (e) => {
1922
1951
  }, He = (e, s = !0) => {
1923
1952
  if (!e.offsetNanoseconds && e.offsetNanoseconds !== 0)
1924
1953
  return "";
1925
- const t = Math.round(e.offsetNanoseconds / 6e10), a = t >= 0 ? "+" : "-", l = Math.abs(t), r = Math.floor(l / 60), o = l % 60;
1926
- return s ? `${a}${I(r)}:${I(o)}` : `${a}${I(r)}${I(o)}`;
1954
+ const t = Math.round(e.offsetNanoseconds / 6e10), a = t >= 0 ? "+" : "-", l = Math.abs(t), n = Math.floor(l / 60), o = l % 60;
1955
+ return s ? `${a}${N(n)}:${N(o)}` : `${a}${N(n)}${N(o)}`;
1927
1956
  }, qa = (e, s) => {
1928
1957
  const t = Za(e), a = Na(e), l = t.dayOfWeek === 7 ? 0 : t.dayOfWeek;
1929
1958
  return [
@@ -1933,10 +1962,10 @@ const za = (e) => {
1933
1962
  // Month
1934
1963
  ["MMMM", () => ce(a, s, { month: "long" }, "month")],
1935
1964
  ["MMM", () => ce(a, s, { month: "short" }, "month")],
1936
- ["MM", () => I(t.month)],
1965
+ ["MM", () => N(t.month)],
1937
1966
  ["M", () => String(t.month)],
1938
1967
  // Day of month
1939
- ["DD", () => I(t.day)],
1968
+ ["DD", () => N(t.day)],
1940
1969
  ["Do", () => za(t.day)],
1941
1970
  ["D", () => String(t.day)],
1942
1971
  // Day of week
@@ -1945,20 +1974,20 @@ const za = (e) => {
1945
1974
  ["dd", () => ce(a, s, { weekday: "short" }, "weekday").slice(0, 2)],
1946
1975
  ["d", () => String(l)],
1947
1976
  // Hour
1948
- ["HH", () => I(t.hour24)],
1977
+ ["HH", () => N(t.hour24)],
1949
1978
  ["H", () => String(t.hour24)],
1950
- ["hh", () => I(t.hour12)],
1979
+ ["hh", () => N(t.hour12)],
1951
1980
  ["h", () => String(t.hour12)],
1952
- ["kk", () => I(t.hourFrom1)],
1981
+ ["kk", () => N(t.hourFrom1)],
1953
1982
  ["k", () => String(t.hourFrom1)],
1954
1983
  // Minute
1955
- ["mm", () => I(t.minute)],
1984
+ ["mm", () => N(t.minute)],
1956
1985
  ["m", () => String(t.minute)],
1957
1986
  // Second
1958
- ["ss", () => I(t.second)],
1987
+ ["ss", () => N(t.second)],
1959
1988
  ["s", () => String(t.second)],
1960
1989
  // Millisecond
1961
- ["SSS", () => I(t.millisecond, 3)],
1990
+ ["SSS", () => N(t.millisecond, 3)],
1962
1991
  // AM/PM
1963
1992
  ["A", () => t.isPM ? "PM" : "AM"],
1964
1993
  ["a", () => t.isPM ? "pm" : "am"],
@@ -1981,18 +2010,18 @@ const za = (e) => {
1981
2010
  if (e.includes("[") || e.includes("Z") || /[+-]\d{2}:\d{2}$/.test(e))
1982
2011
  l = Temporal.ZonedDateTime.from(e);
1983
2012
  else {
1984
- const n = e.replace(" ", "T");
1985
- l = Temporal.PlainDateTime.from(n);
2013
+ const r = e.replace(" ", "T");
2014
+ l = Temporal.PlainDateTime.from(r);
1986
2015
  }
1987
- } catch (n) {
1988
- return console.error("Failed to parse date string:", e, n), e;
2016
+ } catch (r) {
2017
+ return console.error("Failed to parse date string:", e, r), e;
1989
2018
  }
1990
- const r = qa(l, a), o = r.map(([n]) => n).join("|"), c = new RegExp(`\\[([^\\]]+)\\]|(${o})`, "g");
1991
- return s.replace(c, (n, i, u) => {
2019
+ const n = qa(l, a), o = n.map(([r]) => r).join("|"), c = new RegExp(`\\[([^\\]]+)\\]|(${o})`, "g");
2020
+ return s.replace(c, (r, i, u) => {
1992
2021
  if (i !== void 0)
1993
2022
  return i;
1994
- const d = r.find(([p]) => p === u);
1995
- return d ? d[1]() : n;
2023
+ const d = n.find(([p]) => p === u);
2024
+ return d ? d[1]() : r;
1996
2025
  });
1997
2026
  }, Ka = (e, s = {}) => {
1998
2027
  const { fromTimezone: t, toTimezone: a } = s;
@@ -2000,36 +2029,36 @@ const za = (e) => {
2000
2029
  return null;
2001
2030
  const l = e.replace(" ", "T");
2002
2031
  return t && a ? Temporal.PlainDateTime.from(l).toZonedDateTime(t).withTimeZone(a) : t ? Temporal.PlainDateTime.from(l).toZonedDateTime(t) : Temporal.PlainDateTime.from(l);
2003
- }, Ga = (e) => (s, t, a, l, r, o, c) => {
2032
+ }, Ga = (e) => (s, t, a, l, n, o, c) => {
2004
2033
  t.innerHTML = "", t.classList.add("spark-table-cell-datetime");
2005
- const n = c.rendererConfig || {}, {
2034
+ const r = c.rendererConfig || {}, {
2006
2035
  format: i = "DD MMM YYYY, HH:mm",
2007
2036
  fromTimezone: u,
2008
2037
  toTimezone: d,
2009
2038
  locale: p = "en-US",
2010
- emptyText: v = ""
2011
- } = n;
2039
+ emptyText: b = ""
2040
+ } = r;
2012
2041
  if (!o) {
2013
- t.textContent = v;
2042
+ t.textContent = b;
2014
2043
  return;
2015
2044
  }
2016
2045
  try {
2017
- const b = Ka(o, { fromTimezone: u, toTimezone: d });
2018
- if (!b) {
2019
- t.textContent = v;
2046
+ const v = Ka(o, { fromTimezone: u, toTimezone: d });
2047
+ if (!v) {
2048
+ t.textContent = b;
2020
2049
  return;
2021
2050
  }
2022
- const x = Ua(b, i, { locale: p }), h = document.createElement("span");
2051
+ const x = Ua(v, i, { locale: p }), h = document.createElement("span");
2023
2052
  h.textContent = x, t.appendChild(h);
2024
- } catch (b) {
2025
- console.error("Error formatting datetime:", b, { value: o, format: i }), t.textContent = o;
2053
+ } catch (v) {
2054
+ console.error("Error formatting datetime:", v, { value: o, format: i }), t.textContent = o;
2026
2055
  }
2027
2056
  }, Wa = /* @__PURE__ */ new Map(), G = (e, s) => {
2028
- ps(e, (t, a, l, r, o, c, n) => {
2029
- fs.apply(null, [t, a, l, r, o, c, n]), s(t, a, l, r, o, c, n);
2057
+ ps(e, (t, a, l, n, o, c, r) => {
2058
+ fs.apply(null, [t, a, l, n, o, c, r]), s(t, a, l, n, o, c, r);
2030
2059
  }), Wa.set(e, s);
2031
2060
  }, Ya = (e) => {
2032
- G("spark.actions", Va(e)), G("spark.badge", Ha()), G("spark.boolean", Fa()), G("spark.currency", Aa()), G("spark.link", Oa()), G("spark.image", Da()), G("spark.date", Ba()), G("spark.datetime", Ga()), G("style.capitalize", (s, t, a, l, r, o) => {
2061
+ G("spark.actions", Va(e)), G("spark.badge", Ha()), G("spark.boolean", Fa()), G("spark.currency", Oa()), G("spark.link", Aa()), G("spark.image", Ba()), G("spark.date", Da()), G("spark.datetime", Ga()), G("style.capitalize", (s, t, a, l, n, o) => {
2033
2062
  if (!o || o.length === 0) {
2034
2063
  t.innerText = "";
2035
2064
  return;
@@ -2039,12 +2068,12 @@ const za = (e) => {
2039
2068
  });
2040
2069
  }, Xa = () => {
2041
2070
  }, Ja = (e, s = {}) => {
2042
- const t = Y(), a = le(), l = s.namespace, r = l === null, o = s.syncToRoute !== !1, c = s.persistToStorage === !0, n = s.restoreOnMount !== !1, i = s.storageTTL || 7, u = r ? `spark-table:${a.path}` : `spark-table:${l}`, d = (y, C = "") => {
2043
- const P = {};
2044
- return Object.keys(y).forEach((B) => {
2045
- const J = y[B], de = C ? `${C}[${B}]` : B;
2046
- J != null && (typeof J == "object" && !Array.isArray(J) ? Object.assign(P, d(J, de)) : P[de] = String(J));
2047
- }), P;
2071
+ const t = Y(), a = te(), l = s.namespace, n = l === null, o = s.syncToRoute !== !1, c = s.persistToStorage === !0, r = s.restoreOnMount !== !1, i = s.storageTTL || 7, u = n ? `spark-table:${a.path}` : `spark-table:${l}`, d = (y, _ = "") => {
2072
+ const L = {};
2073
+ return Object.keys(y).forEach((D) => {
2074
+ const J = y[D], de = _ ? `${_}[${D}]` : D;
2075
+ J != null && (typeof J == "object" && !Array.isArray(J) ? Object.assign(L, d(J, de)) : L[de] = String(J));
2076
+ }), L;
2048
2077
  }, p = () => {
2049
2078
  if (c)
2050
2079
  try {
@@ -2056,22 +2085,22 @@ const za = (e) => {
2056
2085
  } catch (y) {
2057
2086
  console.warn("Failed to save table state to localStorage:", y);
2058
2087
  }
2059
- }, v = () => {
2088
+ }, b = () => {
2060
2089
  if (!c) return null;
2061
2090
  try {
2062
2091
  const y = localStorage.getItem(u);
2063
2092
  if (!y) return null;
2064
- const C = JSON.parse(y);
2093
+ const _ = JSON.parse(y);
2065
2094
  if (i > 0) {
2066
- const P = Date.now() - C.timestamp, B = i * 24 * 60 * 60 * 1e3;
2067
- if (P > B)
2095
+ const L = Date.now() - _.timestamp, D = i * 24 * 60 * 60 * 1e3;
2096
+ if (L > D)
2068
2097
  return localStorage.removeItem(u), null;
2069
2098
  }
2070
- return C.params;
2099
+ return _.params;
2071
2100
  } catch (y) {
2072
2101
  return console.warn("Failed to load table state from localStorage:", y), null;
2073
2102
  }
2074
- }, b = () => {
2103
+ }, v = () => {
2075
2104
  try {
2076
2105
  localStorage.removeItem(u);
2077
2106
  } catch (y) {
@@ -2080,73 +2109,73 @@ const za = (e) => {
2080
2109
  }, x = () => {
2081
2110
  if (!o) return;
2082
2111
  const y = { ...a.query };
2083
- if (r) {
2084
- Object.keys(y).forEach((P) => {
2085
- h(P) && delete y[P];
2112
+ if (n) {
2113
+ Object.keys(y).forEach((L) => {
2114
+ h(L) && delete y[L];
2086
2115
  });
2087
- const C = d(e.params);
2088
- Object.assign(y, C);
2116
+ const _ = d(e.params);
2117
+ Object.assign(y, _);
2089
2118
  } else {
2090
- Object.keys(y).forEach((P) => {
2091
- (P.startsWith(`${l}[`) || P === l) && delete y[P];
2119
+ Object.keys(y).forEach((L) => {
2120
+ (L.startsWith(`${l}[`) || L === l) && delete y[L];
2092
2121
  });
2093
- const C = d(e.params, l);
2094
- Object.assign(y, C);
2122
+ const _ = d(e.params, l);
2123
+ Object.assign(y, _);
2095
2124
  }
2096
2125
  t.replace({ query: y });
2097
- }, h = (y) => !!(["page", "limit", "search", "orderBy", "sortedBy"].includes(y) || y.includes("[")), w = (y, C) => {
2098
- if (["page", "limit"].includes(y) && C !== null && C !== void 0) {
2099
- const B = parseInt(C, 10);
2100
- return isNaN(B) ? C : B;
2126
+ }, h = (y) => !!(["page", "limit", "search", "orderBy", "sortedBy"].includes(y) || y.includes("[")), w = (y, _) => {
2127
+ if (["page", "limit"].includes(y) && _ !== null && _ !== void 0) {
2128
+ const D = parseInt(_, 10);
2129
+ return isNaN(D) ? _ : D;
2101
2130
  }
2102
- return C;
2103
- }, S = () => {
2104
- if (r)
2131
+ return _;
2132
+ }, C = () => {
2133
+ if (n)
2105
2134
  Object.keys(a.query).forEach((y) => {
2106
2135
  h(y) && (e.params[y] = w(y, a.query[y]));
2107
2136
  });
2108
2137
  else {
2109
2138
  const y = `${l}[`;
2110
- Object.keys(a.query).forEach((C) => {
2111
- if (C.startsWith(y)) {
2112
- const P = C.slice(y.length, -1);
2113
- e.params[P] = w(P, a.query[C]);
2139
+ Object.keys(a.query).forEach((_) => {
2140
+ if (_.startsWith(y)) {
2141
+ const L = _.slice(y.length, -1);
2142
+ e.params[L] = w(L, a.query[_]);
2114
2143
  }
2115
2144
  });
2116
2145
  }
2117
2146
  };
2118
- return N(
2147
+ return z(
2119
2148
  () => e.params,
2120
2149
  () => {
2121
2150
  o && x(), c && p();
2122
2151
  },
2123
2152
  { deep: !0 }
2124
- ), n && Se(() => {
2153
+ ), r && he(() => {
2125
2154
  let y = !1;
2126
2155
  if (o) {
2127
- let C = !1;
2128
- if (r)
2129
- C = Object.keys(a.query).some((P) => h(P));
2156
+ let _ = !1;
2157
+ if (n)
2158
+ _ = Object.keys(a.query).some((L) => h(L));
2130
2159
  else {
2131
- const P = `${l}[`;
2132
- C = Object.keys(a.query).some(
2133
- (B) => B.startsWith(P)
2160
+ const L = `${l}[`;
2161
+ _ = Object.keys(a.query).some(
2162
+ (D) => D.startsWith(L)
2134
2163
  );
2135
2164
  }
2136
- C && (y = !0, S());
2165
+ _ && (y = !0, C());
2137
2166
  }
2138
2167
  if (!y && c) {
2139
- const C = v();
2140
- C && Object.keys(C).length > 0 && (Object.keys(C).forEach((P) => {
2141
- C[P] = w(P, C[P]);
2142
- }), Object.assign(e.params, C));
2168
+ const _ = b();
2169
+ _ && Object.keys(_).length > 0 && (Object.keys(_).forEach((L) => {
2170
+ _[L] = w(L, _[L]);
2171
+ }), Object.assign(e.params, _));
2143
2172
  }
2144
2173
  }), {
2145
2174
  syncToRoute: x,
2146
- restoreFromRoute: S,
2175
+ restoreFromRoute: C,
2147
2176
  saveToStorage: p,
2148
- loadFromStorage: v,
2149
- clearStorage: b
2177
+ loadFromStorage: b,
2178
+ clearStorage: v
2150
2179
  };
2151
2180
  }, Qa = { class: "flex items-center gap-4 py-3" }, eo = { class: "shrink-0" }, to = { class: "text-sm text-gray-700" }, so = { class: "font-medium" }, ao = { class: "font-medium" }, oo = { class: "font-medium" }, ro = {
2152
2181
  __name: "SparkTablePaginationDetails",
@@ -2162,13 +2191,13 @@ const za = (e) => {
2162
2191
  f("div", Qa, [
2163
2192
  f("div", eo, [
2164
2193
  f("div", to, [
2165
- a[0] || (a[0] = O(" Showing ", -1)),
2194
+ a[0] || (a[0] = A(" Showing ", -1)),
2166
2195
  f("span", so, M(s.sparkTable.response.meta.from), 1),
2167
- a[1] || (a[1] = O(" to ", -1)),
2196
+ a[1] || (a[1] = A(" to ", -1)),
2168
2197
  f("span", ao, M(s.sparkTable.response.meta.to), 1),
2169
- a[2] || (a[2] = O(" of ", -1)),
2198
+ a[2] || (a[2] = A(" of ", -1)),
2170
2199
  f("span", oo, M(s.sparkTable.response.meta.total), 1),
2171
- a[3] || (a[3] = O(" results ", -1))
2200
+ a[3] || (a[3] = A(" results ", -1))
2172
2201
  ])
2173
2202
  ])
2174
2203
  ])
@@ -2191,15 +2220,15 @@ const za = (e) => {
2191
2220
  emits: ["paginate"],
2192
2221
  setup(e, { emit: s }) {
2193
2222
  const t = e, a = s, l = (u) => {
2194
- r(t.sparkTable.params.page + u);
2195
- }, r = (u) => {
2223
+ n(t.sparkTable.params.page + u);
2224
+ }, n = (u) => {
2196
2225
  u < 1 || u > t.sparkTable.response.meta.last_page || a("paginate", {
2197
2226
  page: u
2198
2227
  });
2199
2228
  }, o = $(() => t.sparkTable.params.page ? Math.ceil(t.sparkTable.params.page / 10) * 10 : 1), c = $(() => t.sparkTable.computed.ready ? as(
2200
2229
  Math.floor((o.value - 1) / 10) * 10 + 1,
2201
2230
  o.value > t.sparkTable.response.meta.last_page ? t.sparkTable.response.meta.last_page + 1 : o.value + 1
2202
- ) : []), n = $(
2231
+ ) : []), r = $(
2203
2232
  () => t.sparkTable.params.page < Q(t.sparkTable.response.meta, "last_page", 1)
2204
2233
  ), i = $(() => t.sparkTable.params.page > 1);
2205
2234
  return (u, d) => {
@@ -2212,29 +2241,29 @@ const za = (e) => {
2212
2241
  f("a", {
2213
2242
  class: V([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"]),
2214
2243
  href: "#",
2215
- onClick: d[0] || (d[0] = U((v) => l(-1), ["prevent"]))
2244
+ onClick: d[0] || (d[0] = U((b) => l(-1), ["prevent"]))
2216
2245
  }, [
2217
2246
  k(p, {
2218
- icon: _(A).farChevronLeft,
2247
+ icon: S(O).farChevronLeft,
2219
2248
  class: "size-5"
2220
2249
  }, null, 8, ["icon"])
2221
2250
  ], 2),
2222
- (m(!0), g(E, null, z(c.value, (v) => (m(), g("a", {
2223
- key: `page-${v}`,
2251
+ (m(!0), g(E, null, I(c.value, (b) => (m(), g("a", {
2252
+ key: `page-${b}`,
2224
2253
  href: "#",
2225
2254
  class: V([
2226
2255
  "relative inline-flex items-center px-4 py-[9px] text-sm font-semibold ring-1 ring-inset",
2227
- 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"
2256
+ e.sparkTable.params.page === b ? "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"
2228
2257
  ]),
2229
- onClick: (b) => r(v)
2230
- }, M(v), 11, co))), 128)),
2258
+ onClick: (v) => n(b)
2259
+ }, M(b), 11, co))), 128)),
2231
2260
  f("a", {
2232
- class: V([n.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"]),
2233
- onClick: d[1] || (d[1] = U((v) => l(1), ["prevent"])),
2261
+ class: V([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"]),
2262
+ onClick: d[1] || (d[1] = U((b) => l(1), ["prevent"])),
2234
2263
  href: "#"
2235
2264
  }, [
2236
2265
  k(p, {
2237
- icon: _(A).farChevronRight,
2266
+ icon: S(O).farChevronRight,
2238
2267
  class: "size-5"
2239
2268
  }, null, 8, ["icon"])
2240
2269
  ], 2)
@@ -2245,7 +2274,7 @@ const za = (e) => {
2245
2274
  ]);
2246
2275
  };
2247
2276
  }
2248
- }, te = (e, s) => {
2277
+ }, se = (e, s) => {
2249
2278
  const t = e.__vccOpts || e;
2250
2279
  for (const [a, l] of s)
2251
2280
  t[a] = l;
@@ -2263,28 +2292,28 @@ const za = (e) => {
2263
2292
  const t = e, a = s, l = $(() => t.sparkTable.options.perPages.map((o) => ({
2264
2293
  label: String(o),
2265
2294
  value: o
2266
- }))), r = (o) => {
2295
+ }))), n = (o) => {
2267
2296
  a("paginate", {
2268
2297
  page: 1,
2269
2298
  limit: parseInt(o)
2270
2299
  });
2271
2300
  };
2272
2301
  return (o, c) => {
2273
- const n = F("FormKit");
2302
+ const r = F("FormKit");
2274
2303
  return m(), g("div", po, [
2275
- k(n, {
2304
+ k(r, {
2276
2305
  "model-value": e.sparkTable.params.limit,
2277
2306
  type: "select",
2278
2307
  options: l.value,
2279
2308
  "outer-class": "!mb-0",
2280
2309
  "wrapper-class": "!mb-0",
2281
2310
  "input-class": "!py-2",
2282
- onInput: r
2311
+ onInput: n
2283
2312
  }, null, 8, ["model-value", "options"])
2284
2313
  ]);
2285
2314
  };
2286
2315
  }
2287
- }, mo = /* @__PURE__ */ te(fo, [["__scopeId", "data-v-9ef8544b"]]), Re = {
2316
+ }, mo = /* @__PURE__ */ se(fo, [["__scopeId", "data-v-9ef8544b"]]), Re = {
2288
2317
  __name: "SparkTableToolbar",
2289
2318
  props: {
2290
2319
  position: {
@@ -2294,15 +2323,15 @@ const za = (e) => {
2294
2323
  }
2295
2324
  },
2296
2325
  setup(e) {
2297
- const s = e, t = De(), a = $(() => !!t.default), l = $(() => {
2298
- const r = "spark-table-toolbar flex flex-wrap items-center gap-x-5 w-full";
2299
- return s.position === "footer" ? `${r} spark-table-toolbar-footer justify-between` : `${r} spark-table-toolbar-header gap-y-5 py-5`;
2326
+ const s = e, t = Be(), a = $(() => !!t.default), l = $(() => {
2327
+ const n = "spark-table-toolbar flex flex-wrap items-center gap-x-5 w-full";
2328
+ return s.position === "footer" ? `${n} spark-table-toolbar-footer justify-between` : `${n} spark-table-toolbar-header gap-y-5 py-5`;
2300
2329
  });
2301
- return (r, o) => a.value ? (m(), g("div", {
2330
+ return (n, o) => a.value ? (m(), g("div", {
2302
2331
  key: 0,
2303
2332
  class: V(l.value)
2304
2333
  }, [
2305
- D(r.$slots, "default")
2334
+ B(n.$slots, "default")
2306
2335
  ], 2)) : T("", !0);
2307
2336
  }
2308
2337
  }, ho = { class: "spark-table-search" }, go = {
@@ -2334,23 +2363,23 @@ const za = (e) => {
2334
2363
  [a]: o
2335
2364
  }) : s.sparkTable.methods.removeParam(a);
2336
2365
  }, s.config.debounce || 300);
2337
- N(t, (o) => {
2366
+ z(t, (o) => {
2338
2367
  l(o);
2339
2368
  });
2340
- const r = s.config.placeholder || "Search...";
2341
- return N(
2369
+ const n = s.config.placeholder || "Search...";
2370
+ return z(
2342
2371
  () => s.sparkTable.params[a],
2343
2372
  (o) => {
2344
2373
  o && o !== t.value ? t.value = o : !o && t.value && (t.value = "");
2345
2374
  }
2346
2375
  ), (o, c) => {
2347
- const n = F("FormKit");
2376
+ const r = F("FormKit");
2348
2377
  return m(), g("div", ho, [
2349
- k(n, q({
2378
+ k(r, q({
2350
2379
  modelValue: t.value,
2351
2380
  "onUpdate:modelValue": c[0] || (c[0] = (i) => t.value = i),
2352
2381
  type: "text",
2353
- placeholder: _(r),
2382
+ placeholder: S(n),
2354
2383
  suffixIcon: "search",
2355
2384
  "outer-class": "!mb-0",
2356
2385
  "wrapper-class": "!mb-0",
@@ -2359,7 +2388,7 @@ const za = (e) => {
2359
2388
  ]);
2360
2389
  };
2361
2390
  }
2362
- }, yo = /* @__PURE__ */ te(go, [["__scopeId", "data-v-976170dc"]]), bo = { class: "spark-table-filter-select" }, vo = {
2391
+ }, yo = /* @__PURE__ */ se(go, [["__scopeId", "data-v-976170dc"]]), vo = { class: "spark-table-filter-select" }, bo = {
2363
2392
  __name: "SparkTableFilterSelect",
2364
2393
  props: {
2365
2394
  /** SparkTable instance object */
@@ -2379,29 +2408,29 @@ const za = (e) => {
2379
2408
  s.sparkTable.params[a] ? t.value = s.sparkTable.params[a] : s.config.initialValue !== void 0 && s.config.initialValue !== null && (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
2380
2409
  [a]: s.config.initialValue
2381
2410
  }));
2382
- const l = s.config.label || null, r = $(() => [
2411
+ const l = s.config.label || null, n = $(() => [
2383
2412
  { label: s.config.placeholder || "All", value: "" },
2384
2413
  ...s.config.options
2385
2414
  ]);
2386
- return N(t, (o) => {
2415
+ return z(t, (o) => {
2387
2416
  o ? s.sparkTable.methods.applyParams({
2388
2417
  page: 1,
2389
2418
  [a]: o
2390
2419
  }) : s.sparkTable.methods.removeParam(a);
2391
- }), N(
2420
+ }), z(
2392
2421
  () => s.sparkTable.params[a],
2393
2422
  (o) => {
2394
2423
  o != null && o !== "" ? t.value !== o && (t.value = o) : t.value && (t.value = "");
2395
2424
  }
2396
2425
  ), (o, c) => {
2397
- const n = F("FormKit");
2398
- return m(), g("div", bo, [
2399
- k(n, q({
2426
+ const r = F("FormKit");
2427
+ return m(), g("div", vo, [
2428
+ k(r, q({
2400
2429
  modelValue: t.value,
2401
2430
  "onUpdate:modelValue": c[0] || (c[0] = (i) => t.value = i),
2402
2431
  type: "select",
2403
- label: _(l),
2404
- options: r.value,
2432
+ label: S(l),
2433
+ options: n.value,
2405
2434
  placeholder: e.config.placeholder || "All",
2406
2435
  "outer-class": "!mb-0",
2407
2436
  "wrapper-class": "!mb-0"
@@ -2409,7 +2438,7 @@ const za = (e) => {
2409
2438
  ]);
2410
2439
  };
2411
2440
  }
2412
- }, xo = /* @__PURE__ */ te(vo, [["__scopeId", "data-v-642dbc69"]]), ko = { class: "spark-table-filter-buttons" }, wo = {
2441
+ }, xo = /* @__PURE__ */ se(bo, [["__scopeId", "data-v-642dbc69"]]), ko = { class: "spark-table-filter-buttons" }, wo = {
2413
2442
  key: 0,
2414
2443
  class: "spark-table-filter-buttons-label"
2415
2444
  }, _o = {
@@ -2432,30 +2461,30 @@ const za = (e) => {
2432
2461
  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({
2433
2462
  [l]: s.config.initialValue
2434
2463
  }));
2435
- const r = (c) => c == null ? t.value === null || t.value === void 0 || t.value === "" : t.value === c, o = (c) => {
2464
+ const n = (c) => c == null ? t.value === null || t.value === void 0 || t.value === "" : t.value === c, o = (c) => {
2436
2465
  t.value = c, c == null || c === "" ? s.sparkTable.methods.removeParam(l) : s.sparkTable.methods.applyParams({
2437
2466
  page: 1,
2438
2467
  [l]: c
2439
2468
  });
2440
2469
  };
2441
- return N(
2470
+ return z(
2442
2471
  () => s.sparkTable.params[l],
2443
2472
  (c) => {
2444
2473
  (c == null || c === "") && t.value ? t.value = null : c !== t.value && (t.value = c);
2445
2474
  }
2446
- ), (c, n) => (m(), g("div", ko, [
2447
- _(a) ? (m(), g("span", wo, M(_(a)), 1)) : T("", !0),
2475
+ ), (c, r) => (m(), g("div", ko, [
2476
+ S(a) ? (m(), g("span", wo, M(S(a)), 1)) : T("", !0),
2448
2477
  k(na, { class: "isolate" }, {
2449
- default: L(() => [
2450
- (m(!0), g(E, null, z(e.config.options, (i) => (m(), H(X, {
2478
+ default: P(() => [
2479
+ (m(!0), g(E, null, I(e.config.options, (i) => (m(), H(X, {
2451
2480
  key: i.value,
2452
2481
  size: "xl",
2453
2482
  "button-class": "px-3.5",
2454
- variant: r(i.value) ? "primary" : "secondary",
2483
+ variant: n(i.value) ? "primary" : "secondary",
2455
2484
  onClick: (u) => o(i.value)
2456
2485
  }, {
2457
- default: L(() => [
2458
- O(M(i.label), 1)
2486
+ default: P(() => [
2487
+ A(M(i.label), 1)
2459
2488
  ]),
2460
2489
  _: 2
2461
2490
  }, 1032, ["variant", "onClick"]))), 128))
@@ -2464,7 +2493,7 @@ const za = (e) => {
2464
2493
  })
2465
2494
  ]));
2466
2495
  }
2467
- }, So = /* @__PURE__ */ te(_o, [["__scopeId", "data-v-01a49899"]]), Co = { class: "spark-table-date-picker" }, $o = {
2496
+ }, So = /* @__PURE__ */ se(_o, [["__scopeId", "data-v-01a49899"]]), Co = { class: "spark-table-date-picker" }, $o = {
2468
2497
  __name: "SparkTableDatePicker",
2469
2498
  props: {
2470
2499
  /** SparkTable instance object */
@@ -2480,33 +2509,33 @@ const za = (e) => {
2480
2509
  }
2481
2510
  },
2482
2511
  setup(e) {
2483
- const s = e, t = R(null), a = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`, r = R(`${l}-0`);
2512
+ const s = e, t = R(null), a = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`, n = R(`${l}-0`);
2484
2513
  return s.sparkTable.params[l] ? t.value = s.sparkTable.params[l] : s.config.initialValue ? (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
2485
2514
  [l]: s.config.initialValue
2486
- })) : t.value = null, N(t, (o) => {
2515
+ })) : t.value = null, z(t, (o) => {
2487
2516
  o ? s.sparkTable.methods.applyParams({
2488
2517
  page: 1,
2489
2518
  [l]: o
2490
2519
  }) : s.sparkTable.methods.removeParam(l);
2491
- }), N(
2520
+ }), z(
2492
2521
  () => s.sparkTable.params[l],
2493
2522
  (o) => {
2494
2523
  if ((o == null || o === "") && t.value) {
2495
2524
  t.value = null;
2496
- const c = parseInt(r.value.split("-").pop()) || 0;
2497
- r.value = `${l}-${c + 1}`;
2525
+ const c = parseInt(n.value.split("-").pop()) || 0;
2526
+ n.value = `${l}-${c + 1}`;
2498
2527
  } else o && o !== t.value && (t.value = o);
2499
2528
  }
2500
2529
  ), (o, c) => {
2501
- const n = F("FormKit");
2530
+ const r = F("FormKit");
2502
2531
  return m(), g("div", Co, [
2503
- (m(), H(n, q({
2504
- key: r.value,
2532
+ (m(), H(r, q({
2533
+ key: n.value,
2505
2534
  modelValue: t.value,
2506
2535
  "onUpdate:modelValue": c[0] || (c[0] = (i) => t.value = i),
2507
2536
  type: "datepicker",
2508
2537
  "picker-only": "",
2509
- label: _(a),
2538
+ label: S(a),
2510
2539
  placeholder: e.config.placeholder || "Select date",
2511
2540
  overlay: !0,
2512
2541
  "value-format": "YYYY-MM-DD",
@@ -2517,7 +2546,7 @@ const za = (e) => {
2517
2546
  ]);
2518
2547
  };
2519
2548
  }
2520
- }, To = /* @__PURE__ */ te($o, [["__scopeId", "data-v-44ef9cb8"]]), Lo = { class: "spark-table-reset" }, Po = { key: 1 }, Mo = {
2549
+ }, To = /* @__PURE__ */ se($o, [["__scopeId", "data-v-44ef9cb8"]]), Po = { class: "spark-table-reset" }, Lo = { key: 1 }, Mo = {
2521
2550
  __name: "SparkTableReset",
2522
2551
  props: {
2523
2552
  /** SparkTable instance object */
@@ -2533,16 +2562,16 @@ const za = (e) => {
2533
2562
  },
2534
2563
  setup(e) {
2535
2564
  const s = e, t = () => {
2536
- const a = s.sparkTable.plugins || {}, l = [], r = {};
2565
+ const a = s.sparkTable.plugins || {}, l = [], n = {};
2537
2566
  Object.entries(a).forEach(([i, u]) => {
2538
2567
  if (!u || u.type === "reset" || !(typeof u.enabled == "function" ? u.enabled(s.sparkTable.params) : u.enabled))
2539
2568
  return;
2540
2569
  let p = null;
2541
- u.type === "search" ? p = u.param || "search" : u.type === "filterSelect" || u.type === "filterButtons" ? p = u.param || `filter[${u.key}]` : u.type === "datePicker" && (p = u.param || `filter[${u.key}]`), p && (u.initialValue !== void 0 && u.initialValue !== null ? r[p] = u.initialValue : l.push(p));
2570
+ u.type === "search" ? p = u.param || "search" : u.type === "filterSelect" || u.type === "filterButtons" ? p = u.param || `filter[${u.key}]` : u.type === "datePicker" && (p = u.param || `filter[${u.key}]`), p && (u.initialValue !== void 0 && u.initialValue !== null ? n[p] = u.initialValue : l.push(p));
2542
2571
  });
2543
2572
  const o = l.filter(
2544
2573
  (i) => s.sparkTable.params[i] !== void 0 && s.sparkTable.params[i] !== null && s.sparkTable.params[i] !== ""
2545
- ), c = Object.entries(r).filter(
2574
+ ), c = Object.entries(n).filter(
2546
2575
  ([i, u]) => s.sparkTable.params[i] !== u
2547
2576
  );
2548
2577
  if (o.length === 0 && c.length === 0)
@@ -2550,43 +2579,43 @@ const za = (e) => {
2550
2579
  o.forEach((i) => {
2551
2580
  delete s.sparkTable.params[i];
2552
2581
  });
2553
- const n = Object.fromEntries(c);
2554
- s.sparkTable.methods.applyParams({ ...n, page: 1 });
2582
+ const r = Object.fromEntries(c);
2583
+ s.sparkTable.methods.applyParams({ ...r, page: 1 });
2555
2584
  };
2556
2585
  return (a, l) => {
2557
- const r = F("font-awesome-icon");
2558
- return m(), g("div", Lo, [
2586
+ const n = F("font-awesome-icon");
2587
+ return m(), g("div", Po, [
2559
2588
  k(X, {
2560
2589
  onClick: t,
2561
2590
  variant: "secondary",
2562
2591
  "button-class": "px-3.5",
2563
2592
  size: "xl"
2564
2593
  }, {
2565
- default: L(() => [
2566
- e.config.icon ? (m(), H(r, {
2594
+ default: P(() => [
2595
+ e.config.icon ? (m(), H(n, {
2567
2596
  key: 0,
2568
2597
  icon: ["far", e.config.icon],
2569
2598
  class: V({ "mr-1.5": e.config.label })
2570
2599
  }, null, 8, ["icon", "class"])) : T("", !0),
2571
- e.config.label ? (m(), g("span", Po, M(e.config.label), 1)) : T("", !0)
2600
+ e.config.label ? (m(), g("span", Lo, M(e.config.label), 1)) : T("", !0)
2572
2601
  ]),
2573
2602
  _: 1
2574
2603
  })
2575
2604
  ]);
2576
2605
  };
2577
2606
  }
2578
- }, Vo = /* @__PURE__ */ te(Mo, [["__scopeId", "data-v-0894e3bf"]]), Ho = { class: "spark-table" }, Ro = {
2607
+ }, Vo = /* @__PURE__ */ se(Mo, [["__scopeId", "data-v-0894e3bf"]]), Ho = { class: "spark-table" }, Ro = {
2579
2608
  key: 1,
2580
2609
  class: "pt-5"
2581
2610
  }, Fo = {
2582
2611
  key: 2,
2583
2612
  class: "flex flex-col items-center justify-center py-16 text-gray-500 rounded-md border border-gray-300 bg-white"
2584
- }, Eo = { class: "flex items-center gap-x-3 ml-auto" }, we = {
2613
+ }, Eo = { class: "flex items-center gap-x-3 ml-auto" }, _e = {
2585
2614
  perPages: [15, 30, 50, 100, 200, 500],
2586
2615
  limit: 15
2587
- }, Ao = {
2616
+ }, Oo = {
2588
2617
  page: 1,
2589
- limit: we.limit
2618
+ limit: _e.limit
2590
2619
  }, Fe = {
2591
2620
  colHeaders: !0,
2592
2621
  filters: !1,
@@ -2609,7 +2638,7 @@ const za = (e) => {
2609
2638
  dataTransformer: {
2610
2639
  type: Function,
2611
2640
  default: (e, s) => ({
2612
- data: Q(s.settings, "nestedHeaders") ? e.data.data.map((a) => (s.settings.columnKeys || []).map((r) => a[r])) : e.data.data,
2641
+ data: Q(s.settings, "nestedHeaders") ? e.data.data.map((a) => (s.settings.columnKeys || []).map((n) => a[n])) : e.data.data,
2613
2642
  meta: {
2614
2643
  last_page: e.data.last_page,
2615
2644
  from: e.data.from,
@@ -2621,13 +2650,13 @@ const za = (e) => {
2621
2650
  params: {
2622
2651
  type: Object,
2623
2652
  default() {
2624
- return Ao;
2653
+ return Oo;
2625
2654
  }
2626
2655
  },
2627
2656
  options: {
2628
2657
  type: Object,
2629
2658
  default() {
2630
- return we;
2659
+ return _e;
2631
2660
  }
2632
2661
  },
2633
2662
  settings: {
@@ -2663,7 +2692,7 @@ const za = (e) => {
2663
2692
  setup(e, { expose: s, emit: t }) {
2664
2693
  const a = e;
2665
2694
  ds(), pe(ls), pe(is), pe(cs), Q(a, "settings.nestedHeaders") && pe(us);
2666
- const l = t, r = _e("axios"), o = R(null), c = R(!1), n = R(null);
2695
+ const l = t, n = Se("axios"), o = R(null), c = R(!1), r = R(null);
2667
2696
  let i = !1;
2668
2697
  const u = {
2669
2698
  search: yo,
@@ -2692,33 +2721,33 @@ const za = (e) => {
2692
2721
  },
2693
2722
  loadTable: async (h) => {
2694
2723
  if (!(!o.value || !o.value.hotInstance)) {
2695
- c.value = !0, n.value = null, l("loading", !0), he.start(), d.hotInstance = o.value.hotInstance;
2724
+ c.value = !0, r.value = null, l("loading", !0), ge.start(), d.hotInstance = o.value.hotInstance;
2696
2725
  try {
2697
2726
  if (a.dataProvider) {
2698
2727
  const y = await a.dataProvider(d.computed.params);
2699
2728
  d.response = a.dataTransformer(y, a);
2700
2729
  } else if (a.url) {
2701
- const y = await r.get(a.url, {
2730
+ const y = await n.get(a.url, {
2702
2731
  params: d.computed.params
2703
2732
  });
2704
2733
  d.response = a.dataTransformer(y, a);
2705
2734
  } else {
2706
- console.error("No data provider or URL provided"), c.value = !1, l("loading", !1), he.done();
2735
+ console.error("No data provider or URL provided"), c.value = !1, l("loading", !1), ge.done();
2707
2736
  return;
2708
2737
  }
2709
2738
  if (i) return;
2710
2739
  d.hotInstance.updateData(d.response.data), d.options.callback && typeof d.options.callback == "function" && await d.options.callback();
2711
2740
  const w = d.hotInstance.getPlugin("autoColumnSize");
2712
- Q(a.settings, "columns", []).forEach((y, C) => {
2713
- y.width || w.calculateColumnsWidth(C, C, !0);
2741
+ Q(a.settings, "columns", []).forEach((y, _) => {
2742
+ y.width || w.calculateColumnsWidth(_, _, !0);
2714
2743
  }), l("load", {
2715
2744
  data: d.response.data,
2716
2745
  meta: d.response.meta
2717
2746
  }), h && typeof h == "function" && h();
2718
2747
  } catch (w) {
2719
- n.value = w, l("error", w), console.error("Error loading table data:", w);
2748
+ r.value = w, l("error", w), console.error("Error loading table data:", w);
2720
2749
  } finally {
2721
- c.value = !1, l("loading", !1), he.done();
2750
+ c.value = !1, l("loading", !1), ge.done();
2722
2751
  }
2723
2752
  }
2724
2753
  },
@@ -2736,8 +2765,8 @@ const za = (e) => {
2736
2765
  },
2737
2766
  clearParam: (h) => d.methods.removeParam(h),
2738
2767
  clearParams: (h) => {
2739
- (Array.isArray(h) ? h : [h]).forEach((S) => {
2740
- d.params[S] !== void 0 && delete d.params[S];
2768
+ (Array.isArray(h) ? h : [h]).forEach((C) => {
2769
+ d.params[C] !== void 0 && delete d.params[C];
2741
2770
  }), d.methods.applyParams({ page: 1 });
2742
2771
  }
2743
2772
  },
@@ -2749,14 +2778,14 @@ const za = (e) => {
2749
2778
  ready: $(() => rs(d, "response.meta.last_page"))
2750
2779
  },
2751
2780
  options: $(() => ({
2752
- ...we,
2781
+ ..._e,
2753
2782
  ...a.options
2754
2783
  })),
2755
2784
  tableSettings: $(() => ({
2756
2785
  ...Fe,
2757
2786
  nestedHeaders: Q(a.settings, "nestedHeaders", []),
2758
2787
  ...!Q(a.settings, "nestedHeaders") && {
2759
- afterGetColHeader: (h, w) => Pa(h, w, d)
2788
+ afterGetColHeader: (h, w) => La(h, w, d)
2760
2789
  },
2761
2790
  afterChange: (h, w) => Xa(),
2762
2791
  afterRender: () => Ma(d),
@@ -2774,14 +2803,14 @@ const za = (e) => {
2774
2803
  * This ensures custom renderers copy their visual output, not the underlying data
2775
2804
  */
2776
2805
  beforeCopy: (h, w) => {
2777
- const S = o.value?.hotInstance;
2778
- S && w.forEach((y) => {
2779
- for (let C = y.startRow; C <= y.endRow; C++)
2780
- for (let P = y.startCol; P <= y.endCol; P++) {
2781
- const B = S.getCell(C, P);
2782
- if (B) {
2783
- const J = C - w[0].startRow, de = P - w[0].startCol;
2784
- h[J][de] = B.dataset.copyValue ?? B.textContent ?? "";
2806
+ const C = o.value?.hotInstance;
2807
+ C && w.forEach((y) => {
2808
+ for (let _ = y.startRow; _ <= y.endRow; _++)
2809
+ for (let L = y.startCol; L <= y.endCol; L++) {
2810
+ const D = C.getCell(_, L);
2811
+ if (D) {
2812
+ const J = _ - w[0].startRow, de = L - w[0].startCol;
2813
+ h[J][de] = D.dataset.copyValue ?? D.textContent ?? "";
2785
2814
  }
2786
2815
  }
2787
2816
  });
@@ -2790,7 +2819,7 @@ const za = (e) => {
2790
2819
  }))
2791
2820
  }), p = $(
2792
2821
  () => d.computed.ready && d.response.data?.length === 0
2793
- ), v = (h) => {
2822
+ ), b = (h) => {
2794
2823
  if (!h) return null;
2795
2824
  switch (h.type) {
2796
2825
  case "search":
@@ -2802,16 +2831,16 @@ const za = (e) => {
2802
2831
  default:
2803
2832
  return null;
2804
2833
  }
2805
- }, b = (h) => h ? typeof h.enabled == "function" ? h.enabled(d.params) : h.enabled : !1, x = $(() => Object.entries(a.plugins).filter(([h, w]) => b(w)).map(([h, w]) => ({ name: h, config: w })));
2806
- if (N(
2834
+ }, v = (h) => h ? typeof h.enabled == "function" ? h.enabled(d.params) : h.enabled : !1, x = $(() => Object.entries(a.plugins).filter(([h, w]) => v(w)).map(([h, w]) => ({ name: h, config: w })));
2835
+ if (z(
2807
2836
  () => ({ ...d.params }),
2808
2837
  () => {
2809
2838
  const h = [];
2810
2839
  Object.values(a.plugins).forEach((w) => {
2811
- const S = v(w);
2812
- if (!S) return;
2813
- const y = b(w), C = d.params[S] !== void 0;
2814
- !y && C && h.push(S);
2840
+ const C = b(w);
2841
+ if (!C) return;
2842
+ const y = v(w), _ = d.params[C] !== void 0;
2843
+ !y && _ && h.push(C);
2815
2844
  }), h.length > 0 && h.forEach((w) => {
2816
2845
  delete d.params[w];
2817
2846
  });
@@ -2837,12 +2866,12 @@ const za = (e) => {
2837
2866
  await d.methods.loadTable();
2838
2867
  },
2839
2868
  { debounce: 50, maxWait: 1e3 }
2840
- ), N(
2869
+ ), z(
2841
2870
  () => a.url,
2842
2871
  async (h, w) => {
2843
2872
  h !== w && (d.params.page = 1, await d.methods.loadTable());
2844
2873
  }
2845
- ), Se(async () => {
2874
+ ), he(async () => {
2846
2875
  await d.methods.loadTable(), l("ready");
2847
2876
  }), ht(() => {
2848
2877
  i = !0;
@@ -2855,32 +2884,32 @@ const za = (e) => {
2855
2884
  clearParams: (h) => d.methods.clearParams(h),
2856
2885
  applyParams: (h) => d.methods.applyParams(h),
2857
2886
  loading: c,
2858
- error: n,
2887
+ error: r,
2859
2888
  sparkTable: d,
2860
2889
  table: o
2861
2890
  }), (h, w) => {
2862
- const S = F("font-awesome-icon");
2891
+ const C = F("font-awesome-icon");
2863
2892
  return m(), g("div", Ho, [
2864
2893
  d.computed.ready && x.value && x.value.length ? (m(), H(Re, {
2865
2894
  key: 0,
2866
2895
  position: "header"
2867
2896
  }, {
2868
- default: L(() => [
2869
- (m(!0), g(E, null, z(x.value, (y) => (m(), H(Z(u[y.config.type]), {
2897
+ default: P(() => [
2898
+ (m(!0), g(E, null, I(x.value, (y) => (m(), H(Z(u[y.config.type]), {
2870
2899
  key: y.name,
2871
2900
  class: V(y.config.align ? `self-${y.config.align}` : ""),
2872
2901
  "spark-table": d,
2873
2902
  config: y.config
2874
2903
  }, null, 8, ["class", "spark-table", "config"]))), 128)),
2875
- D(h.$slots, "header", {
2904
+ B(h.$slots, "header", {
2876
2905
  sparkTable: d,
2877
2906
  loading: c.value,
2878
- error: n.value
2907
+ error: r.value
2879
2908
  })
2880
2909
  ]),
2881
2910
  _: 3
2882
2911
  })) : (m(), g("div", Ro)),
2883
- gt(k(_(ns), {
2912
+ gt(k(S(ns), {
2884
2913
  "theme-name": "ht-theme-classic",
2885
2914
  ref_key: "table",
2886
2915
  ref: o,
@@ -2889,8 +2918,8 @@ const za = (e) => {
2889
2918
  [yt, !p.value]
2890
2919
  ]),
2891
2920
  p.value ? (m(), g("div", Fo, [
2892
- k(S, {
2893
- icon: _(A).farInbox,
2921
+ k(C, {
2922
+ icon: S(O).farInbox,
2894
2923
  class: "size-12 mb-4 text-gray-300"
2895
2924
  }, null, 8, ["icon"]),
2896
2925
  w[0] || (w[0] = f("p", { class: "text-sm" }, "No records found", -1))
@@ -2899,7 +2928,7 @@ const za = (e) => {
2899
2928
  key: 3,
2900
2929
  position: "footer"
2901
2930
  }, {
2902
- default: L(() => [
2931
+ default: P(() => [
2903
2932
  p.value ? T("", !0) : (m(), H(ro, {
2904
2933
  key: 0,
2905
2934
  "spark-table": d
@@ -2914,10 +2943,10 @@ const za = (e) => {
2914
2943
  "spark-table": d,
2915
2944
  onPaginate: d.methods.applyParams
2916
2945
  }, null, 8, ["spark-table", "onPaginate"]),
2917
- D(h.$slots, "footer", {
2946
+ B(h.$slots, "footer", {
2918
2947
  sparkTable: d,
2919
2948
  loading: c.value,
2920
- error: n.value
2949
+ error: r.value
2921
2950
  })
2922
2951
  ])
2923
2952
  ]),
@@ -2940,8 +2969,8 @@ function Ee() {
2940
2969
  e.isVisible = !1, e.content = null, e.props = {}, e.eventHandlers = {}, e.size = "md";
2941
2970
  }, a = () => {
2942
2971
  e.isVisible = !0;
2943
- }, l = (o, c = {}, n = {}, i = {}) => {
2944
- e.content = me(o), e.props = c, e.eventHandlers = n, e.size = i.size || "md";
2972
+ }, l = (o, c = {}, r = {}, i = {}) => {
2973
+ e.content = me(o), e.props = c, e.eventHandlers = r, e.size = i.size || "md";
2945
2974
  };
2946
2975
  return {
2947
2976
  state: e,
@@ -2949,32 +2978,32 @@ function Ee() {
2949
2978
  close: t,
2950
2979
  open: a,
2951
2980
  setContent: l,
2952
- show: (o, c = {}, n = {}, i = {}) => {
2953
- o && l(o, c, n, i), a();
2981
+ show: (o, c = {}, r = {}, i = {}) => {
2982
+ o && l(o, c, r, i), a();
2954
2983
  }
2955
2984
  };
2956
2985
  }
2957
- class Oo {
2986
+ class Ao {
2958
2987
  constructor() {
2959
2988
  this.left = Ee(), this.right = Ee();
2960
2989
  }
2961
2990
  showLeft = (s, t = {}, a = {}, l = {}) => {
2962
- const r = {
2991
+ const n = {
2963
2992
  close: () => {
2964
2993
  a.close?.(), this.closeLeft();
2965
2994
  },
2966
2995
  ...a
2967
2996
  };
2968
- this.left.show(s, t, r, l);
2997
+ this.left.show(s, t, n, l);
2969
2998
  };
2970
2999
  showRight = (s, t = {}, a = {}, l = {}) => {
2971
- const r = {
3000
+ const n = {
2972
3001
  close: () => {
2973
3002
  a.close?.(), this.closeRight();
2974
3003
  },
2975
3004
  ...a
2976
3005
  };
2977
- this.right.show(s, t, r, l);
3006
+ this.right.show(s, t, n, l);
2978
3007
  };
2979
3008
  closeLeft = () => {
2980
3009
  this.left.close();
@@ -2986,20 +3015,20 @@ class Oo {
2986
3015
  this.left.close(), this.right.close();
2987
3016
  };
2988
3017
  }
2989
- const se = new Oo(), Do = (e) => {
3018
+ const ae = new Ao(), Bo = (e) => {
2990
3019
  const s = document.cookie.match(new RegExp(`(^| )${e}=([^;]+)`));
2991
3020
  return s ? s[2] : null;
2992
- }, Bo = (e, s, t = {}) => {
3021
+ }, Do = (e, s, t = {}) => {
2993
3022
  const {
2994
3023
  maxAge: a = 31536e3,
2995
3024
  // 365 days in seconds
2996
3025
  domain: l = ct(),
2997
- secure: r = !0,
3026
+ secure: n = !0,
2998
3027
  sameSite: o = "Lax",
2999
3028
  path: c = "/"
3000
3029
  } = t;
3001
- let n = `${e}=${s}; max-age=${a}; path=${c}; samesite=${o}`;
3002
- l && (n += `; domain=${l}`), r && (n += "; secure"), document.cookie = n;
3030
+ let r = `${e}=${s}; max-age=${a}; path=${c}; samesite=${o}`;
3031
+ l && (r += `; domain=${l}`), n && (r += "; secure"), document.cookie = r;
3003
3032
  }, jo = (e, s = {}) => {
3004
3033
  const { domain: t = ct(), path: a = "/" } = s;
3005
3034
  let l = `${e}=; max-age=0; path=${a}`;
@@ -3065,15 +3094,15 @@ const be = "bolt-next-token", W = ue("auth", () => {
3065
3094
  }), s = (i = {}) => {
3066
3095
  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);
3067
3096
  }, t = (i) => {
3068
- Bo(be, i), e.token = i;
3097
+ Do(be, i), e.token = i;
3069
3098
  }, a = () => {
3070
3099
  jo(be), e.token = null;
3071
- }, l = () => Do(be), r = async (i) => {
3072
- const u = await ne.post(e.endpoints.login, i), d = u.headers.authorization;
3100
+ }, l = () => Bo(be), n = async (i) => {
3101
+ const u = await le.post(e.endpoints.login, i), d = u.headers.authorization;
3073
3102
  return t(d), e.user = u.data, e.callbacks.onLoginSuccess && await e.callbacks.onLoginSuccess(u.data), u.data;
3074
3103
  }, o = async () => {
3075
3104
  try {
3076
- await ne.post(
3105
+ await le.post(
3077
3106
  e.endpoints.logout,
3078
3107
  {},
3079
3108
  {
@@ -3092,7 +3121,7 @@ const be = "bolt-next-token", W = ue("auth", () => {
3092
3121
  if (!i)
3093
3122
  return e.ready = !0, null;
3094
3123
  try {
3095
- const { data: u } = await ne.get(e.endpoints.fetch, {
3124
+ const { data: u } = await le.get(e.endpoints.fetch, {
3096
3125
  headers: {
3097
3126
  Authorization: `Bearer ${i}`
3098
3127
  }
@@ -3103,21 +3132,21 @@ const be = "bolt-next-token", W = ue("auth", () => {
3103
3132
  } finally {
3104
3133
  e.ready = !0;
3105
3134
  }
3106
- }, n = $(() => e.overrideToken ? !0 : !!e.token && !!e.user);
3135
+ }, r = $(() => e.overrideToken ? !0 : !!e.token && !!e.user);
3107
3136
  return {
3108
3137
  state: e,
3109
3138
  initialize: s,
3110
- login: r,
3139
+ login: n,
3111
3140
  logout: o,
3112
3141
  fetchUser: c,
3113
- check: n,
3142
+ check: r,
3114
3143
  setTokenCookie: t,
3115
3144
  clearTokenCookie: a,
3116
3145
  getTokenCookie: l
3117
3146
  };
3118
3147
  });
3119
3148
  function No(e = {}) {
3120
- const s = ne.create({
3149
+ const s = le.create({
3121
3150
  baseURL: e.baseURL || "",
3122
3151
  timeout: e.timeout || 3e4,
3123
3152
  headers: {
@@ -3156,19 +3185,19 @@ function No(e = {}) {
3156
3185
  }
3157
3186
  ), s;
3158
3187
  }
3159
- let re = null;
3188
+ let ne = null;
3160
3189
  function Kn(e, s = {}) {
3161
- return re = No(s), e.provide("axios", re), e.config.globalProperties.$axios = re, re;
3190
+ return ne = No(s), e.provide("axios", ne), e.config.globalProperties.$axios = ne, ne;
3162
3191
  }
3163
3192
  function Zo() {
3164
- if (!re)
3193
+ if (!ne)
3165
3194
  throw new Error("Axios instance not initialized. Call setupAxios() first.");
3166
- return re;
3195
+ return ne;
3167
3196
  }
3168
3197
  function qo(e) {
3169
3198
  return e?.status !== 422 ? null : e.data?.errors || null;
3170
3199
  }
3171
- function Ae(e) {
3200
+ function Oe(e) {
3172
3201
  return e?.status === 422 ? e.data?.message || "Please fix the validation errors." : e?.data?.message || "An error occurred.";
3173
3202
  }
3174
3203
  function Uo(e) {
@@ -3180,62 +3209,62 @@ function Gn(e = {}) {
3180
3209
  createMessage: t = "Created successfully!",
3181
3210
  updateMessage: a = "Updated successfully!",
3182
3211
  redirectTo: l = null,
3183
- onSuccess: r = null,
3212
+ onSuccess: n = null,
3184
3213
  onError: o = null,
3185
3214
  showNotification: c = !0,
3186
- setFieldErrors: n = !0,
3215
+ setFieldErrors: r = !0,
3187
3216
  setFormErrors: i = !1
3188
3217
  } = e, u = Y(), d = R(!1);
3189
- async function p(b) {
3190
- const { submitFn: x, method: h = "create", node: w = null, isEditMode: S = !1 } = b;
3218
+ async function p(v) {
3219
+ const { submitFn: x, method: h = "create", node: w = null, isEditMode: C = !1 } = v;
3191
3220
  d.value = !0, w && w.clearErrors();
3192
3221
  try {
3193
- const C = (await x()).data;
3222
+ const _ = (await x()).data;
3194
3223
  if (c) {
3195
- const P = S ? a : h === "create" ? t : s;
3224
+ const L = C ? a : h === "create" ? t : s;
3196
3225
  j.show({
3197
3226
  type: "success",
3198
- message: P
3227
+ message: L
3199
3228
  });
3200
3229
  }
3201
- if (r && await r(C), !S && l) {
3202
- const P = typeof l == "function" ? l(C) : l;
3203
- await u.push(P);
3230
+ if (n && await n(_), !C && l) {
3231
+ const L = typeof l == "function" ? l(_) : l;
3232
+ await u.push(L);
3204
3233
  }
3205
- return { success: !0, data: C, error: null };
3234
+ return { success: !0, data: _, error: null };
3206
3235
  } catch (y) {
3207
- const C = y.response;
3236
+ const _ = y.response;
3208
3237
  if (o && await o(y) === !0)
3209
3238
  return { success: !1, data: null, error: y };
3210
- if (Uo(C)) {
3211
- const P = qo(C);
3212
- P && w && n && w.setErrors([], P), i && j.show({
3239
+ if (Uo(_)) {
3240
+ const L = qo(_);
3241
+ L && w && r && w.setErrors([], L), i && j.show({
3213
3242
  type: "danger",
3214
- message: Ae(C)
3243
+ message: Oe(_)
3215
3244
  });
3216
3245
  } else
3217
3246
  j.show({
3218
3247
  type: "danger",
3219
- message: Ae(C)
3248
+ message: Oe(_)
3220
3249
  });
3221
3250
  return { success: !1, data: null, error: y };
3222
3251
  } finally {
3223
3252
  d.value = !1;
3224
3253
  }
3225
3254
  }
3226
- async function v(b) {
3227
- const { url: x, payload: h, method: w = "post", node: S, isEditMode: y } = b, C = Zo();
3255
+ async function b(v) {
3256
+ const { url: x, payload: h, method: w = "post", node: C, isEditMode: y } = v, _ = Zo();
3228
3257
  return p({
3229
- submitFn: () => C[w](x, h),
3258
+ submitFn: () => _[w](x, h),
3230
3259
  method: y ? "update" : "create",
3231
- node: S,
3260
+ node: C,
3232
3261
  isEditMode: y
3233
3262
  });
3234
3263
  }
3235
3264
  return {
3236
3265
  submitting: d,
3237
3266
  submit: p,
3238
- submitToApi: v
3267
+ submitToApi: b
3239
3268
  };
3240
3269
  }
3241
3270
  const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex flex-1 flex-col" }, Wo = {
@@ -3271,25 +3300,25 @@ const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex
3271
3300
  },
3272
3301
  emits: ["overlayClose"],
3273
3302
  setup(e, { emit: s }) {
3274
- const t = e, a = s, l = De(), r = le(), o = it(), c = rt(), n = $(() => c.getAppIcon(t.appStore.state.app)), i = $(() => r.meta.hideBrandSelector === !0 ? !1 : t.appStore.state.showBrandSelector), u = () => {
3275
- const b = {};
3276
- l["app-selector-bottom"] ? b.bottomSlot = () => Ce("div", {}, l["app-selector-bottom"]()) : t.appSelectorSlots.bottomSlot && (b.bottomSlot = t.appSelectorSlots.bottomSlot), l["app-selector-footer"] ? b.footerSlot = () => Ce("div", {}, l["app-selector-footer"]()) : t.appSelectorSlots.footerSlot && (b.footerSlot = t.appSelectorSlots.footerSlot), se.showRight(Es, b, {
3303
+ const t = e, a = s, l = Be(), n = te(), o = it(), c = rt(), r = $(() => c.getAppIcon(t.appStore.state.app)), i = $(() => n.meta.hideBrandSelector === !0 ? !1 : t.appStore.state.showBrandSelector), u = () => {
3304
+ const v = {};
3305
+ l["app-selector-bottom"] ? v.bottomSlot = () => Ce("div", {}, l["app-selector-bottom"]()) : t.appSelectorSlots.bottomSlot && (v.bottomSlot = t.appSelectorSlots.bottomSlot), l["app-selector-footer"] ? v.footerSlot = () => Ce("div", {}, l["app-selector-footer"]()) : t.appSelectorSlots.footerSlot && (v.footerSlot = t.appSelectorSlots.footerSlot), ae.showRight(Es, v, {
3277
3306
  select: (x) => {
3278
- se.closeRight();
3307
+ ae.closeRight();
3279
3308
  }
3280
3309
  });
3281
3310
  }, d = () => {
3282
- se.showLeft(
3311
+ ae.showLeft(
3283
3312
  oa,
3284
3313
  {},
3285
3314
  {
3286
- select: (b) => {
3287
- o.toggleBrand(b), se.closeLeft();
3315
+ select: (v) => {
3316
+ o.toggleBrand(v), ae.closeLeft();
3288
3317
  }
3289
3318
  }
3290
3319
  );
3291
- }, p = $(() => t.mainNavStore.state.hidden ? ["w-0 overflow-hidden"] : [t.mainNavStore.state.collapsed ? "w-[80px]" : "w-[240px]"]), v = $(() => t.mainNavStore.state.hidden ? ["pl-2.5"] : [t.mainNavStore.state.collapsed ? "pl-[80px]" : "pl-[240px]"]);
3292
- return (b, x) => {
3320
+ }, p = $(() => t.mainNavStore.state.hidden ? ["w-0 overflow-hidden"] : [t.mainNavStore.state.collapsed ? "w-[80px]" : "w-[240px]"]), b = $(() => t.mainNavStore.state.hidden ? ["pl-2.5"] : [t.mainNavStore.state.collapsed ? "pl-[80px]" : "pl-[240px]"]);
3321
+ return (v, x) => {
3293
3322
  const h = F("font-awesome-icon"), w = F("router-view");
3294
3323
  return m(), g(E, null, [
3295
3324
  f("div", {
@@ -3303,63 +3332,63 @@ const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex
3303
3332
  f("li", Jo, [
3304
3333
  f("a", {
3305
3334
  class: "grid w-[40px] h-[40px] place-items-center rounded-md bg-primary-600 text-white text-[13px] cursor-pointer",
3306
- onClick: x[0] || (x[0] = U((S) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"]))
3335
+ onClick: x[0] || (x[0] = U((C) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"]))
3307
3336
  }, [
3308
3337
  k(h, {
3309
- icon: _(A)[n.value],
3338
+ icon: S(O)[r.value],
3310
3339
  class: "size-5"
3311
3340
  }, null, 8, ["icon"])
3312
3341
  ]),
3313
3342
  e.mainNavStore.state.collapsed ? T("", !0) : (m(), g("a", {
3314
3343
  key: 0,
3315
- onClick: x[1] || (x[1] = U((S) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"])),
3344
+ onClick: x[1] || (x[1] = U((C) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"])),
3316
3345
  class: "font-medium text-gray-800 ml-[10px] cursor-pointer"
3317
3346
  }, M(e.appStore.state.app), 1))
3318
3347
  ]),
3319
- (m(!0), g(E, null, z(e.mainNavStore.state.menu, (S) => (m(), g("li", {
3320
- key: S.name,
3348
+ (m(!0), g(E, null, I(e.mainNavStore.state.menu, (C) => (m(), g("li", {
3349
+ key: C.name,
3321
3350
  class: V({
3322
- "mt-[10px]": S.children,
3323
- "mt-auto": S.footerSection
3351
+ "mt-[10px]": C.children,
3352
+ "mt-auto": C.footerSection
3324
3353
  })
3325
3354
  }, [
3326
3355
  f("a", {
3327
3356
  class: V([{
3328
- "bg-gray-100": S.current,
3329
- "hover:bg-gray-100": S?.href
3357
+ "bg-gray-100": C.current,
3358
+ "hover:bg-gray-100": C?.href
3330
3359
  }, "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"]),
3331
- href: S?.href,
3332
- onClick: U((y) => e.mainNavStore.goto(S.href), ["prevent"])
3360
+ href: C?.href,
3361
+ onClick: U((y) => e.mainNavStore.goto(C.href), ["prevent"])
3333
3362
  }, [
3334
- S.icon ? (m(), H(h, {
3363
+ C.icon ? (m(), H(h, {
3335
3364
  key: 0,
3336
- icon: _(A)[S.icon],
3337
- class: V([[(S.current, "text-gray-400")], "size-4"])
3365
+ icon: S(O)[C.icon],
3366
+ class: V([[(C.current, "text-gray-400")], "size-4"])
3338
3367
  }, null, 8, ["icon", "class"])) : T("", !0),
3339
- e.mainNavStore.state.collapsed ? S?.children ? (m(), g("div", er, [...x[6] || (x[6] = [
3368
+ e.mainNavStore.state.collapsed ? C?.children ? (m(), g("div", er, [...x[6] || (x[6] = [
3340
3369
  f("div", { class: "w-[10px] h-px bg-gray-400" }, null, -1)
3341
3370
  ])])) : T("", !0) : (m(), g("span", {
3342
3371
  key: 1,
3343
3372
  class: V({
3344
- "text-[11px]": S?.children,
3345
- "text-[13px]": !S?.children,
3346
- "font-semibold": S?.children,
3347
- "text-gray-500": S?.children
3373
+ "text-[11px]": C?.children,
3374
+ "text-[13px]": !C?.children,
3375
+ "font-semibold": C?.children,
3376
+ "text-gray-500": C?.children
3348
3377
  })
3349
- }, M(S.name), 3))
3378
+ }, M(C.name), 3))
3350
3379
  ], 10, Qo),
3351
- S.children ? (m(), g("ul", tr, [
3352
- (m(!0), g(E, null, z(S.children, (y) => (m(), g("li", {
3380
+ C.children ? (m(), g("ul", tr, [
3381
+ (m(!0), g(E, null, I(C.children, (y) => (m(), g("li", {
3353
3382
  key: y.name
3354
3383
  }, [
3355
3384
  f("a", {
3356
3385
  class: V([[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"]),
3357
3386
  href: y.href,
3358
- onClick: U((C) => e.mainNavStore.goto(y.href), ["prevent"])
3387
+ onClick: U((_) => e.mainNavStore.goto(y.href), ["prevent"])
3359
3388
  }, [
3360
3389
  y.icon ? (m(), H(h, {
3361
3390
  key: 0,
3362
- icon: _(A)[y.icon],
3391
+ icon: S(O)[y.icon],
3363
3392
  class: V([[(y.current, "text-gray-400")], "size-4"])
3364
3393
  }, null, 8, ["icon", "class"])) : T("", !0),
3365
3394
  e.mainNavStore.state.collapsed ? T("", !0) : (m(), g("span", ar, M(y.name), 1))
@@ -3370,14 +3399,14 @@ const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex
3370
3399
  ])
3371
3400
  ]),
3372
3401
  f("li", or, [
3373
- D(b.$slots, "sidebar-footer"),
3402
+ B(v.$slots, "sidebar-footer"),
3374
3403
  f("a", {
3375
3404
  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",
3376
3405
  href: "#",
3377
- onClick: x[2] || (x[2] = U((S) => e.mainNavStore.toggleCollapsed(), ["prevent"]))
3406
+ onClick: x[2] || (x[2] = U((C) => e.mainNavStore.toggleCollapsed(), ["prevent"]))
3378
3407
  }, [
3379
3408
  k(h, {
3380
- icon: _(A)[e.mainNavStore.state.collapsed ? "farArrowRightToLine" : "farArrowLeftToLine"],
3409
+ icon: S(O)[e.mainNavStore.state.collapsed ? "farArrowRightToLine" : "farArrowLeftToLine"],
3381
3410
  class: "class-5"
3382
3411
  }, null, 8, ["icon"])
3383
3412
  ])
@@ -3387,36 +3416,36 @@ const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex
3387
3416
  ])
3388
3417
  ], 2),
3389
3418
  f("div", {
3390
- class: V([v.value, "h-full transition-all flex flex-col"])
3419
+ class: V([b.value, "h-full transition-all flex flex-col"])
3391
3420
  }, [
3392
3421
  f("div", rr, [
3393
3422
  f("div", nr, [
3394
3423
  f("div", lr, [
3395
- D(b.$slots, "header-left", {}, () => [
3424
+ B(v.$slots, "header-left", {}, () => [
3396
3425
  f("div", ir, [
3397
3426
  k(h, {
3398
- icon: _(A).farBarsSort,
3427
+ icon: S(O).farBarsSort,
3399
3428
  class: "size-5",
3400
- onClick: x[3] || (x[3] = (S) => e.mainNavStore.toggleHidden())
3429
+ onClick: x[3] || (x[3] = (C) => e.mainNavStore.toggleHidden())
3401
3430
  }, null, 8, ["icon"])
3402
3431
  ])
3403
3432
  ]),
3404
- D(b.$slots, "header-center", {}, () => [
3433
+ B(v.$slots, "header-center", {}, () => [
3405
3434
  i.value ? (m(), g("div", {
3406
3435
  key: 0,
3407
3436
  class: "absolute left-1/2 -translate-x-1/2 cursor-pointer h-9 flex items-center",
3408
3437
  onClick: d
3409
3438
  }, [
3410
- _(o).currentBrand ? (m(), g("img", {
3439
+ S(o).currentBrand ? (m(), g("img", {
3411
3440
  key: 0,
3412
- src: _(o).currentBrand.logo,
3441
+ src: S(o).currentBrand.logo,
3413
3442
  alt: "",
3414
3443
  class: "h-[30px] w-auto"
3415
3444
  }, null, 8, cr)) : T("", !0)
3416
3445
  ])) : T("", !0)
3417
3446
  ]),
3418
3447
  f("div", ur, [
3419
- D(b.$slots, "header-right", {}, () => [
3448
+ B(v.$slots, "header-right", {}, () => [
3420
3449
  e.appStore.state.showAppSelector ? (m(), g("button", {
3421
3450
  key: 0,
3422
3451
  class: "rounded-sm bg-white w-[42px] h-[42px] ring-1 ring-inset ring-gray-300",
@@ -3424,7 +3453,7 @@ const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex
3424
3453
  onClick: u
3425
3454
  }, [
3426
3455
  k(h, {
3427
- icon: _(A).farGripDotsVertical,
3456
+ icon: S(O).farGripDotsVertical,
3428
3457
  class: "size-4 text-gray-400"
3429
3458
  }, null, 8, ["icon"])
3430
3459
  ])) : T("", !0)
@@ -3437,17 +3466,17 @@ const Ko = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, Go = { class: "flex
3437
3466
  k(w)
3438
3467
  ])
3439
3468
  ], 2),
3440
- k(_(Le), {
3469
+ k(S(Pe), {
3441
3470
  position: "left",
3442
- "overlay-instance": _(se).left,
3443
- onClose: x[4] || (x[4] = (S) => a("overlayClose", "left"))
3471
+ "overlay-instance": S(ae).left,
3472
+ onClose: x[4] || (x[4] = (C) => a("overlayClose", "left"))
3444
3473
  }, null, 8, ["overlay-instance"]),
3445
- k(_(Le), {
3474
+ k(S(Pe), {
3446
3475
  position: "right",
3447
- "overlay-instance": _(se).right,
3448
- onClose: x[5] || (x[5] = (S) => a("overlayClose", "right"))
3476
+ "overlay-instance": S(ae).right,
3477
+ onClose: x[5] || (x[5] = (C) => a("overlayClose", "right"))
3449
3478
  }, null, 8, ["overlay-instance"]),
3450
- k(_(_a))
3479
+ k(S(_a))
3451
3480
  ], 64);
3452
3481
  };
3453
3482
  }
@@ -3458,14 +3487,14 @@ function mr(e, s) {
3458
3487
  k(t)
3459
3488
  ]);
3460
3489
  }
3461
- const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid place-content-center relative" }, gr = { class: "absolute top-8 left-8" }, yr = ["src"], br = {
3490
+ const Yn = /* @__PURE__ */ se(pr, [["render", mr]]), hr = { class: "h-full grid place-content-center relative" }, gr = { class: "absolute top-8 left-8" }, yr = ["src"], vr = {
3462
3491
  key: 1,
3463
3492
  width: "59",
3464
3493
  height: "23",
3465
3494
  viewBox: "0 0 59 23",
3466
3495
  fill: "none",
3467
3496
  xmlns: "http://www.w3.org/2000/svg"
3468
- }, vr = { class: "max-w-sm grid gap-y-1 -mt-8" }, xr = { class: "mb-7" }, kr = { class: "text-gray-600" }, wr = { class: "grid grid-flow-col justify-between mt-1 mb-4" }, _r = {
3497
+ }, br = { class: "max-w-sm grid gap-y-1 -mt-8" }, xr = { class: "mb-7" }, kr = { class: "text-gray-600" }, wr = { class: "grid grid-flow-col justify-between mt-1 mb-4" }, _r = {
3469
3498
  key: 0,
3470
3499
  class: "text-red-600 text-sm mb-2"
3471
3500
  }, Sr = { key: 0 }, Cr = { key: 1 }, $r = {
@@ -3485,7 +3514,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3485
3514
  }
3486
3515
  },
3487
3516
  setup(e) {
3488
- const s = Y(), t = le(), a = nt(), l = W(), r = e, o = R(!1), c = R(""), n = async (i) => {
3517
+ const s = Y(), t = te(), a = nt(), l = W(), n = e, o = R(!1), c = R(""), r = async (i) => {
3489
3518
  o.value = !0, c.value = "";
3490
3519
  try {
3491
3520
  await l.login(i);
@@ -3497,7 +3526,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3497
3526
  }
3498
3527
  await s.push(u);
3499
3528
  } else
3500
- await s.push(r.defaultRedirect);
3529
+ await s.push(n.defaultRedirect);
3501
3530
  } catch (u) {
3502
3531
  c.value = u.response?.data?.message || u.message || "Login failed. Please try again.";
3503
3532
  } finally {
@@ -3508,12 +3537,12 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3508
3537
  const d = F("FormKit"), p = F("router-link");
3509
3538
  return m(), g("div", hr, [
3510
3539
  f("div", gr, [
3511
- r.logo ? (m(), g("img", {
3540
+ n.logo ? (m(), g("img", {
3512
3541
  key: 0,
3513
- src: r.logo,
3542
+ src: n.logo,
3514
3543
  alt: "Logo",
3515
3544
  class: "h-[23px] w-auto"
3516
- }, null, 8, yr)) : (m(), g("svg", br, [...u[0] || (u[0] = [
3545
+ }, null, 8, yr)) : (m(), g("svg", vr, [...u[0] || (u[0] = [
3517
3546
  f("path", {
3518
3547
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3519
3548
  fill: "#1C64F2"
@@ -3532,17 +3561,17 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3532
3561
  }, null, -1)
3533
3562
  ])]))
3534
3563
  ]),
3535
- f("div", vr, [
3564
+ f("div", br, [
3536
3565
  f("div", xr, [
3537
3566
  u[1] || (u[1] = f("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Log in", -1)),
3538
- f("p", kr, " Welcome back" + M(_(a).state.app ? ` to ${_(a).state.app}` : "") + "! Please enter your details. ", 1)
3567
+ f("p", kr, " Welcome back" + M(S(a).state.app ? ` to ${S(a).state.app}` : "") + "! Please enter your details. ", 1)
3539
3568
  ]),
3540
3569
  k(d, {
3541
3570
  type: "form",
3542
- onSubmit: n,
3571
+ onSubmit: r,
3543
3572
  actions: !1
3544
3573
  }, {
3545
- default: L(() => [
3574
+ default: P(() => [
3546
3575
  k(d, {
3547
3576
  label: "Email",
3548
3577
  name: "email",
@@ -3550,7 +3579,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3550
3579
  type: "email",
3551
3580
  validation: "required|email",
3552
3581
  "outer-class": "max-w-full",
3553
- value: _(l).state.devCredentials.username
3582
+ value: S(l).state.devCredentials.username
3554
3583
  }, null, 8, ["value"]),
3555
3584
  k(d, {
3556
3585
  label: "Password",
@@ -3559,28 +3588,28 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3559
3588
  type: "password",
3560
3589
  validation: "required",
3561
3590
  "outer-class": "max-w-full",
3562
- value: _(l).state.devCredentials.password
3591
+ value: S(l).state.devCredentials.password
3563
3592
  }, null, 8, ["value"]),
3564
3593
  f("div", wr, [
3565
3594
  u[3] || (u[3] = f("span", null, null, -1)),
3566
3595
  k(p, {
3567
- to: r.forgotPasswordRoute,
3596
+ to: n.forgotPasswordRoute,
3568
3597
  class: "text-sm text-primary-600 font-semibold"
3569
3598
  }, {
3570
- default: L(() => [...u[2] || (u[2] = [
3571
- O(" Forgot password ", -1)
3599
+ default: P(() => [...u[2] || (u[2] = [
3600
+ A(" Forgot password ", -1)
3572
3601
  ])]),
3573
3602
  _: 1
3574
3603
  }, 8, ["to"])
3575
3604
  ]),
3576
3605
  c.value ? (m(), g("div", _r, M(c.value), 1)) : T("", !0),
3577
- k(_(X), {
3606
+ k(S(X), {
3578
3607
  type: "submit",
3579
3608
  size: "xl",
3580
3609
  disabled: o.value,
3581
3610
  "button-class": "w-full mb-2"
3582
3611
  }, {
3583
- default: L(() => [
3612
+ default: P(() => [
3584
3613
  o.value ? (m(), g("span", Cr, "Signing in...")) : (m(), g("span", Sr, "Sign in"))
3585
3614
  ]),
3586
3615
  _: 1
@@ -3601,14 +3630,14 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3601
3630
  }
3602
3631
  },
3603
3632
  setup(e) {
3604
- const s = Y(), t = le(), a = W(), l = e;
3605
- return Se(async () => {
3633
+ const s = Y(), t = te(), a = W(), l = e;
3634
+ return he(async () => {
3606
3635
  await a.logout();
3607
- const r = t.query.redirect;
3608
- r && r.startsWith("http") ? window.location.href = r : await s.push(r || l.defaultRedirect);
3609
- }), (r, o) => null;
3636
+ const n = t.query.redirect;
3637
+ n && n.startsWith("http") ? window.location.href = n : await s.push(n || l.defaultRedirect);
3638
+ }), (n, o) => null;
3610
3639
  }
3611
- }, Lr = { class: "h-full grid place-content-center relative" }, Pr = { class: "absolute top-8 left-8" }, Mr = ["src"], Vr = {
3640
+ }, Pr = { class: "h-full grid place-content-center relative" }, Lr = { class: "absolute top-8 left-8" }, Mr = ["src"], Vr = {
3612
3641
  key: 1,
3613
3642
  width: "59",
3614
3643
  height: "23",
@@ -3621,7 +3650,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3621
3650
  }, Fr = {
3622
3651
  key: 1,
3623
3652
  class: "text-green-600 text-sm mb-2"
3624
- }, Er = { key: 0 }, Ar = { key: 1 }, Or = {
3653
+ }, Er = { key: 0 }, Or = { key: 1 }, Ar = {
3625
3654
  __name: "SparkForgotPasswordView",
3626
3655
  props: {
3627
3656
  logo: {
@@ -3634,26 +3663,26 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3634
3663
  }
3635
3664
  },
3636
3665
  setup(e) {
3637
- const s = W(), t = e, a = R(!1), l = R(""), r = R(""), o = async ({ email: c }) => {
3638
- a.value = !0, l.value = "", r.value = "";
3666
+ const s = W(), t = e, a = R(!1), l = R(""), n = R(""), o = async ({ email: c }) => {
3667
+ a.value = !0, l.value = "", n.value = "";
3639
3668
  try {
3640
- await ne.post(s.state.endpoints.passwordEmail, { email: c }), r.value = "Password reset link sent! Check your email.";
3641
- } catch (n) {
3642
- l.value = n.response?.data?.message || "Failed to send reset link.";
3669
+ await le.post(s.state.endpoints.passwordEmail, { email: c }), n.value = "Password reset link sent! Check your email.";
3670
+ } catch (r) {
3671
+ l.value = r.response?.data?.message || "Failed to send reset link.";
3643
3672
  } finally {
3644
3673
  a.value = !1;
3645
3674
  }
3646
3675
  };
3647
- return (c, n) => {
3676
+ return (c, r) => {
3648
3677
  const i = F("FormKit"), u = F("router-link");
3649
- return m(), g("div", Lr, [
3650
- f("div", Pr, [
3678
+ return m(), g("div", Pr, [
3679
+ f("div", Lr, [
3651
3680
  t.logo ? (m(), g("img", {
3652
3681
  key: 0,
3653
3682
  src: t.logo,
3654
3683
  alt: "Logo",
3655
3684
  class: "h-[23px] w-auto"
3656
- }, null, 8, Mr)) : (m(), g("svg", Vr, [...n[0] || (n[0] = [
3685
+ }, null, 8, Mr)) : (m(), g("svg", Vr, [...r[0] || (r[0] = [
3657
3686
  f("path", {
3658
3687
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3659
3688
  fill: "#1C64F2"
@@ -3673,7 +3702,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3673
3702
  ])]))
3674
3703
  ]),
3675
3704
  f("div", Hr, [
3676
- n[2] || (n[2] = f("div", { class: "mb-7" }, [
3705
+ r[2] || (r[2] = f("div", { class: "mb-7" }, [
3677
3706
  f("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Reset password"),
3678
3707
  f("p", { class: "text-gray-600" }, " Enter your email and we'll send you a link to reset your password. ")
3679
3708
  ], -1)),
@@ -3682,7 +3711,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3682
3711
  onSubmit: o,
3683
3712
  actions: !1
3684
3713
  }, {
3685
- default: L(() => [
3714
+ default: P(() => [
3686
3715
  k(i, {
3687
3716
  label: "Email",
3688
3717
  name: "email",
@@ -3692,15 +3721,15 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3692
3721
  "outer-class": "max-w-full"
3693
3722
  }),
3694
3723
  l.value ? (m(), g("div", Rr, M(l.value), 1)) : T("", !0),
3695
- r.value ? (m(), g("div", Fr, M(r.value), 1)) : T("", !0),
3696
- k(_(X), {
3724
+ n.value ? (m(), g("div", Fr, M(n.value), 1)) : T("", !0),
3725
+ k(S(X), {
3697
3726
  type: "submit",
3698
3727
  size: "xl",
3699
3728
  disabled: a.value,
3700
3729
  "button-class": "w-full mb-2"
3701
3730
  }, {
3702
- default: L(() => [
3703
- a.value ? (m(), g("span", Ar, "Sending...")) : (m(), g("span", Er, "Send reset link"))
3731
+ default: P(() => [
3732
+ a.value ? (m(), g("span", Or, "Sending...")) : (m(), g("span", Er, "Send reset link"))
3704
3733
  ]),
3705
3734
  _: 1
3706
3735
  }, 8, ["disabled"]),
@@ -3708,8 +3737,8 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3708
3737
  to: t.loginRoute,
3709
3738
  class: "text-sm text-center text-primary-600 font-semibold block"
3710
3739
  }, {
3711
- default: L(() => [...n[1] || (n[1] = [
3712
- O(" Back to login ", -1)
3740
+ default: P(() => [...r[1] || (r[1] = [
3741
+ A(" Back to login ", -1)
3713
3742
  ])]),
3714
3743
  _: 1
3715
3744
  }, 8, ["to"])
@@ -3720,7 +3749,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3720
3749
  ]);
3721
3750
  };
3722
3751
  }
3723
- }, Dr = { class: "h-full grid place-content-center relative" }, Br = { class: "absolute top-8 left-8" }, jr = ["src"], zr = {
3752
+ }, Br = { class: "h-full grid place-content-center relative" }, Dr = { class: "absolute top-8 left-8" }, jr = ["src"], zr = {
3724
3753
  key: 1,
3725
3754
  width: "59",
3726
3755
  height: "23",
@@ -3743,25 +3772,25 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3743
3772
  }
3744
3773
  },
3745
3774
  setup(e) {
3746
- const s = Y(), t = le(), a = W(), l = e, r = R(!1), o = R(""), c = async ({ password: n, password_confirmation: i }) => {
3747
- r.value = !0, o.value = "";
3775
+ const s = Y(), t = te(), a = W(), l = e, n = R(!1), o = R(""), c = async ({ password: r, password_confirmation: i }) => {
3776
+ n.value = !0, o.value = "";
3748
3777
  try {
3749
- await ne.post(a.state.endpoints.passwordReset, {
3778
+ await le.post(a.state.endpoints.passwordReset, {
3750
3779
  email: t.query.email,
3751
3780
  token: t.query.token,
3752
- password: n,
3781
+ password: r,
3753
3782
  password_confirmation: i
3754
3783
  }), await s.push(l.loginRoute);
3755
3784
  } catch (u) {
3756
3785
  o.value = u.response?.data?.message || "Failed to reset password.";
3757
3786
  } finally {
3758
- r.value = !1;
3787
+ n.value = !1;
3759
3788
  }
3760
3789
  };
3761
- return (n, i) => {
3790
+ return (r, i) => {
3762
3791
  const u = F("FormKit");
3763
- return m(), g("div", Dr, [
3764
- f("div", Br, [
3792
+ return m(), g("div", Br, [
3793
+ f("div", Dr, [
3765
3794
  l.logo ? (m(), g("img", {
3766
3795
  key: 0,
3767
3796
  src: l.logo,
@@ -3796,7 +3825,7 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3796
3825
  onSubmit: c,
3797
3826
  actions: !1
3798
3827
  }, {
3799
- default: L(() => [
3828
+ default: P(() => [
3800
3829
  k(u, {
3801
3830
  label: "New Password",
3802
3831
  name: "password",
@@ -3814,14 +3843,14 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3814
3843
  "outer-class": "max-w-full"
3815
3844
  }),
3816
3845
  o.value ? (m(), g("div", Nr, M(o.value), 1)) : T("", !0),
3817
- k(_(X), {
3846
+ k(S(X), {
3818
3847
  type: "submit",
3819
3848
  size: "xl",
3820
- disabled: r.value,
3849
+ disabled: n.value,
3821
3850
  "button-class": "w-full mb-2"
3822
3851
  }, {
3823
- default: L(() => [
3824
- r.value ? (m(), g("span", qr, "Resetting...")) : (m(), g("span", Zr, "Reset password"))
3852
+ default: P(() => [
3853
+ n.value ? (m(), g("span", qr, "Resetting...")) : (m(), g("span", Zr, "Reset password"))
3825
3854
  ]),
3826
3855
  _: 1
3827
3856
  }, 8, ["disabled"])
@@ -3855,14 +3884,14 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3855
3884
  const s = Y(), t = e, a = () => {
3856
3885
  s.push(t.homeRoute);
3857
3886
  };
3858
- return (l, r) => (m(), g("div", Kr, [
3887
+ return (l, n) => (m(), g("div", Kr, [
3859
3888
  f("div", Gr, [
3860
3889
  t.logo ? (m(), g("img", {
3861
3890
  key: 0,
3862
3891
  src: t.logo,
3863
3892
  alt: "Logo",
3864
3893
  class: "h-[23px] w-auto"
3865
- }, null, 8, Wr)) : (m(), g("svg", Yr, [...r[0] || (r[0] = [
3894
+ }, null, 8, Wr)) : (m(), g("svg", Yr, [...n[0] || (n[0] = [
3866
3895
  f("path", {
3867
3896
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3868
3897
  fill: "#1C64F2"
@@ -3882,22 +3911,22 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3882
3911
  ])]))
3883
3912
  ]),
3884
3913
  f("div", Xr, [
3885
- r[2] || (r[2] = f("div", null, [
3914
+ n[2] || (n[2] = f("div", null, [
3886
3915
  f("div", { class: "text-primary-600 text-7xl font-bold mb-4" }, "403"),
3887
3916
  f("h1", { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, " Access Forbidden "),
3888
3917
  f("p", { class: "text-gray-600" }, [
3889
- O(" You don't have permission to access this resource."),
3918
+ A(" You don't have permission to access this resource."),
3890
3919
  f("br"),
3891
- O(" If you believe this is an error, please contact your administrator. ")
3920
+ A(" If you believe this is an error, please contact your administrator. ")
3892
3921
  ])
3893
3922
  ], -1)),
3894
3923
  f("div", Jr, [
3895
- k(_(X), {
3924
+ k(S(X), {
3896
3925
  onClick: a,
3897
3926
  size: "lg"
3898
3927
  }, {
3899
- default: L(() => [...r[1] || (r[1] = [
3900
- O(" Go to Home ", -1)
3928
+ default: P(() => [...n[1] || (n[1] = [
3929
+ A(" Go to Home ", -1)
3901
3930
  ])]),
3902
3931
  _: 1
3903
3932
  })
@@ -3928,14 +3957,14 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3928
3957
  const s = Y(), t = e, a = () => {
3929
3958
  s.push(t.homeRoute);
3930
3959
  };
3931
- return (l, r) => (m(), g("div", en, [
3960
+ return (l, n) => (m(), g("div", en, [
3932
3961
  f("div", tn, [
3933
3962
  t.logo ? (m(), g("img", {
3934
3963
  key: 0,
3935
3964
  src: t.logo,
3936
3965
  alt: "Logo",
3937
3966
  class: "h-[23px] w-auto"
3938
- }, null, 8, sn)) : (m(), g("svg", an, [...r[0] || (r[0] = [
3967
+ }, null, 8, sn)) : (m(), g("svg", an, [...n[0] || (n[0] = [
3939
3968
  f("path", {
3940
3969
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
3941
3970
  fill: "#1C64F2"
@@ -3955,18 +3984,18 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
3955
3984
  ])]))
3956
3985
  ]),
3957
3986
  f("div", on, [
3958
- r[2] || (r[2] = f("div", null, [
3987
+ n[2] || (n[2] = f("div", null, [
3959
3988
  f("div", { class: "text-primary-600 text-7xl font-bold mb-4" }, "404"),
3960
3989
  f("h1", { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, " Page Not Found "),
3961
3990
  f("p", { class: "text-gray-600" }, " The page you're looking for doesn't exist or has been moved. ")
3962
3991
  ], -1)),
3963
3992
  f("div", rn, [
3964
- k(_(X), {
3993
+ k(S(X), {
3965
3994
  onClick: a,
3966
3995
  size: "lg"
3967
3996
  }, {
3968
- default: L(() => [...r[1] || (r[1] = [
3969
- O(" Go to Home ", -1)
3997
+ default: P(() => [...n[1] || (n[1] = [
3998
+ A(" Go to Home ", -1)
3970
3999
  ])]),
3971
4000
  _: 1
3972
4001
  })
@@ -4009,14 +4038,14 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
4009
4038
  const s = Y(), t = e, a = () => {
4010
4039
  s.push(t.homeRoute);
4011
4040
  };
4012
- return (l, r) => (m(), g("div", ln, [
4041
+ return (l, n) => (m(), g("div", ln, [
4013
4042
  f("div", cn, [
4014
4043
  t.logo ? (m(), g("img", {
4015
4044
  key: 0,
4016
4045
  src: t.logo,
4017
4046
  alt: "Logo",
4018
4047
  class: "h-[23px] w-auto"
4019
- }, null, 8, un)) : (m(), g("svg", dn, [...r[0] || (r[0] = [
4048
+ }, null, 8, un)) : (m(), g("svg", dn, [...n[0] || (n[0] = [
4020
4049
  f("path", {
4021
4050
  d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
4022
4051
  fill: "#1C64F2"
@@ -4042,12 +4071,12 @@ const Yn = /* @__PURE__ */ te(pr, [["render", mr]]), hr = { class: "h-full grid
4042
4071
  f("p", hn, M(t.message || "An unexpected error occurred. Please try again later."), 1)
4043
4072
  ]),
4044
4073
  f("div", gn, [
4045
- k(_(X), {
4074
+ k(S(X), {
4046
4075
  onClick: a,
4047
4076
  size: "lg"
4048
4077
  }, {
4049
- default: L(() => [...r[1] || (r[1] = [
4050
- O(" Go to Home ", -1)
4078
+ default: P(() => [...n[1] || (n[1] = [
4079
+ A(" Go to Home ", -1)
4051
4080
  ])]),
4052
4081
  _: 1
4053
4082
  })
@@ -4062,7 +4091,7 @@ function Jn(e = {}) {
4062
4091
  logoutPath: t = "/logout",
4063
4092
  forgotPasswordPath: a = "/forgot-password",
4064
4093
  resetPasswordPath: l = "/password/reset",
4065
- logo: r = "",
4094
+ logo: n = "",
4066
4095
  defaultRedirect: o = "/dashboard"
4067
4096
  } = e;
4068
4097
  return [
@@ -4070,7 +4099,7 @@ function Jn(e = {}) {
4070
4099
  path: s,
4071
4100
  name: "login",
4072
4101
  component: $r,
4073
- props: { logo: r, defaultRedirect: o },
4102
+ props: { logo: n, defaultRedirect: o },
4074
4103
  meta: { auth: !1 }
4075
4104
  },
4076
4105
  {
@@ -4083,33 +4112,33 @@ function Jn(e = {}) {
4083
4112
  {
4084
4113
  path: a,
4085
4114
  name: "forgot-password",
4086
- component: Or,
4087
- props: { logo: r, loginRoute: s },
4115
+ component: Ar,
4116
+ props: { logo: n, loginRoute: s },
4088
4117
  meta: { auth: !1 }
4089
4118
  },
4090
4119
  {
4091
4120
  path: l,
4092
4121
  name: "password-reset",
4093
4122
  component: Ur,
4094
- props: { logo: r, loginRoute: s },
4123
+ props: { logo: n, loginRoute: s },
4095
4124
  meta: { auth: !1 }
4096
4125
  }
4097
4126
  ];
4098
4127
  }
4099
4128
  function Qn(e, s = {}) {
4100
4129
  const { defaultAuthenticatedRoute: t = "/dashboard" } = s;
4101
- e.beforeEach(async (a, l, r) => {
4130
+ e.beforeEach(async (a, l, n) => {
4102
4131
  const o = W();
4103
- o.state.ready || await o.fetchUser(), yn(a, r, o, t);
4132
+ o.state.ready || await o.fetchUser(), yn(a, n, o, t);
4104
4133
  });
4105
4134
  }
4106
4135
  function yn(e, s, t, a) {
4107
- const l = e.meta.auth !== !1, r = t.check;
4136
+ const l = e.meta.auth !== !1, n = t.check;
4108
4137
  if (t.state.overrideToken && e.path === "/logout") {
4109
4138
  s({ path: a });
4110
4139
  return;
4111
4140
  }
4112
- if (!r) {
4141
+ if (!n) {
4113
4142
  if (!l) {
4114
4143
  if (e.path === "/logout") {
4115
4144
  s({ path: t.state.routes.auth });
@@ -4129,7 +4158,7 @@ function yn(e, s, t, a) {
4129
4158
  });
4130
4159
  return;
4131
4160
  }
4132
- if (r) {
4161
+ if (n) {
4133
4162
  if (!l && e.path === t.state.routes.auth) {
4134
4163
  s({ path: a });
4135
4164
  return;
@@ -4181,8 +4210,8 @@ const al = ue("sparkNav", () => {
4181
4210
  menu: [],
4182
4211
  collapsed: !1,
4183
4212
  hidden: !1
4184
- }), s = Y(), t = le(), a = (i = []) => {
4185
- e.menu = i, n();
4213
+ }), s = Y(), t = te(), a = (i = []) => {
4214
+ e.menu = i, r();
4186
4215
  }, l = (i, u) => {
4187
4216
  for (const d of i) {
4188
4217
  if (d.href === u) return d;
@@ -4192,7 +4221,7 @@ const al = ue("sparkNav", () => {
4192
4221
  }
4193
4222
  }
4194
4223
  return null;
4195
- }, r = async (i) => {
4224
+ }, n = async (i) => {
4196
4225
  if (i) {
4197
4226
  const u = l(e.menu, i);
4198
4227
  if (u && typeof u.action == "function") {
@@ -4205,7 +4234,7 @@ const al = ue("sparkNav", () => {
4205
4234
  e.collapsed = !e.collapsed;
4206
4235
  }, c = () => {
4207
4236
  e.hidden = !e.hidden;
4208
- }, n = () => {
4237
+ }, r = () => {
4209
4238
  const i = t.name || t.path.replace("/", "");
4210
4239
  if (i) {
4211
4240
  const u = (d) => {
@@ -4216,24 +4245,24 @@ const al = ue("sparkNav", () => {
4216
4245
  u(e.menu);
4217
4246
  }
4218
4247
  };
4219
- return N(
4248
+ return z(
4220
4249
  () => t.path,
4221
4250
  () => {
4222
- n();
4251
+ r();
4223
4252
  },
4224
4253
  { immediate: !0 }
4225
4254
  ), {
4226
4255
  state: e,
4227
4256
  initialize: a,
4228
- goto: r,
4257
+ goto: n,
4229
4258
  toggleCollapsed: o,
4230
4259
  toggleHidden: c,
4231
- syncWithRoute: n
4260
+ syncWithRoute: r
4232
4261
  };
4233
4262
  });
4234
4263
  export {
4235
- A as Icons,
4236
- ae as SparkAlert,
4264
+ O as Icons,
4265
+ oe as SparkAlert,
4237
4266
  Es as SparkAppSelector,
4238
4267
  oa as SparkBrandSelector,
4239
4268
  X as SparkButton,
@@ -4243,14 +4272,14 @@ export {
4243
4272
  Qr as SparkError403View,
4244
4273
  nn as SparkError404View,
4245
4274
  Xn as SparkErrorGeneralView,
4246
- Or as SparkForgotPasswordView,
4275
+ Ar as SparkForgotPasswordView,
4247
4276
  Zn as SparkImageUpload,
4248
4277
  $r as SparkLoginView,
4249
4278
  Tr as SparkLogoutView,
4250
4279
  _a as SparkModalContainer,
4251
- va as SparkModalDialog,
4280
+ ba as SparkModalDialog,
4252
4281
  zn as SparkNotificationOutlet,
4253
- Le as SparkOverlay,
4282
+ Pe as SparkOverlay,
4254
4283
  Yn as SparkPublicContainer,
4255
4284
  Ur as SparkResetPasswordView,
4256
4285
  qn as SparkTable,
@@ -4263,34 +4292,34 @@ export {
4263
4292
  yo as SparkTableSearch,
4264
4293
  Re as SparkTableToolbar,
4265
4294
  In as SparkToastContainer,
4266
- Bn as addIcons,
4295
+ Dn as addIcons,
4267
4296
  el as create403Route,
4268
4297
  tl as create404Route,
4269
4298
  Jn as createAuthRoutes,
4270
4299
  No as createAxiosInstance,
4271
4300
  Un as createBootstrapService,
4272
- Pa as customiseHeader,
4301
+ La as customiseHeader,
4273
4302
  jo as deleteCookie,
4274
- On as formKitGenesisOverride,
4275
- Dn as formKitIconLoader,
4276
- An as formKitIcons,
4303
+ An as formKitGenesisOverride,
4304
+ Bn as formKitIconLoader,
4305
+ On as formKitIcons,
4277
4306
  Ua as formatTemporal,
4278
4307
  Zo as getAxiosInstance,
4279
- Do as getCookie,
4308
+ Bo as getCookie,
4280
4309
  ct as getDomain,
4281
- Ae as getFormLevelMessage,
4310
+ Oe as getFormLevelMessage,
4282
4311
  Uo as isValidationError,
4283
4312
  Ka as parseDatetime,
4284
4313
  qo as parseLaravelErrors,
4285
4314
  Ca as renderHeaderTitle,
4286
- Bo as setCookie,
4315
+ Do as setCookie,
4287
4316
  Qn as setupAuthGuards,
4288
4317
  Kn as setupAxios,
4289
4318
  sl as setupBootstrapGuard,
4290
4319
  jn as setupFontAwesome,
4291
- oe as sparkModalService,
4320
+ re as sparkModalService,
4292
4321
  j as sparkNotificationService,
4293
- se as sparkOverlayService,
4322
+ ae as sparkOverlayService,
4294
4323
  Xa as updateRow,
4295
4324
  Gn as useFormSubmission,
4296
4325
  rt as useSparkAppSelectorStore,