@wishbone-media/spark 0.32.0 → 0.34.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.d.ts +1 -0
- package/dist/index.js +1134 -1056
- package/package.json +3 -1
- package/src/composables/index.js +1 -0
- package/src/composables/useCrudResource.js +109 -0
- package/src/composables/useFormSubmission.js +39 -16
- package/src/constants/australianStates.js +14 -0
- package/src/constants/index.js +1 -0
- package/src/index.js +1 -0
package/dist/index.js
CHANGED
|
@@ -1,130 +1,130 @@
|
|
|
1
|
-
import { computed as L, resolveComponent as
|
|
2
|
-
import { icon as
|
|
3
|
-
import { FontAwesomeIcon as
|
|
4
|
-
import { faCircleDot as
|
|
5
|
-
import { faSortUp as
|
|
6
|
-
import { defineStore as
|
|
7
|
-
import { useRoute as
|
|
8
|
-
import { TransitionRoot as
|
|
9
|
-
import
|
|
10
|
-
import { range as
|
|
11
|
-
import { HotTable as
|
|
1
|
+
import { computed as L, resolveComponent as A, createElementBlock as v, openBlock as m, normalizeClass as V, createElementVNode as g, createCommentVNode as $, createVNode as S, unref as C, renderSlot as z, reactive as G, Fragment as E, renderList as N, toDisplayString as M, createBlock as H, resolveDynamicComponent as W, markRaw as ce, ref as D, watch as U, onMounted as pe, Transition as ht, withCtx as P, normalizeProps as yt, mergeProps as K, createTextVNode as I, Teleport as vt, TransitionGroup as ue, inject as be, provide as bt, withModifiers as O, toHandlers as Be, useSlots as je, onUnmounted as ze, withDirectives as xt, vShow as wt, h as Le } from "vue";
|
|
2
|
+
import { icon as se, library as Ne } from "@fortawesome/fontawesome-svg-core";
|
|
3
|
+
import { FontAwesomeIcon as he } from "@fortawesome/vue-fontawesome";
|
|
4
|
+
import { faCircleDot as Ue, faEyeDropper as qe, faAnglesLeft as Ze, faAnglesRight as We, faStar as Ke, faSpinnerThird as Ge, faCircle as kt, faFile as Se, faCalendar as Ye, faArrowUp as Xe, faArrowDown as Je, faPlus as Qe, faCircleCheck as _t, faInbox as St, faCloudArrowUp as Ct, faCloudDownload as Tt, faBolt as $t, faUndo as Lt, faEye as Pt, faSignOut as Mt, faXmark as Ce, faTrash as et, faTimes as Vt, faStreetView as Ht, faSortUp as Ft, faSortDown as Dt, faSort as Rt, faScaleBalanced as At, faSatelliteDish as Et, faLayerPlus as It, faLaptopMobile as Ot, faInfoCircle as Bt, faGripDotsVertical as tt, faGearComplex as jt, faFlag as zt, faFaceSmileWink as Nt, faFaceSmileRelaxed as Ut, faExclamationTriangle as qt, faEllipsisVertical as Zt, faEllipsis as Wt, faEdit as Kt, faComments as Gt, faCircleXmark as Yt, faCircleUser as Xt, faChevronUp as Jt, faChevronRight as st, faChevronLeft as at, faChevronDown as ot, faCheckCircle as Qt, faCheck as Te, faBullhorn as es, faBellRing as ts, faBarsSort as ss, faArrowRightToLine as as, faArrowLeftToLine as os } from "@fortawesome/pro-regular-svg-icons";
|
|
5
|
+
import { faSortUp as rs, faSortDown as ns, faSort as ls } from "@fortawesome/pro-duotone-svg-icons";
|
|
6
|
+
import { defineStore as fe } from "pinia";
|
|
7
|
+
import { useRoute as ee, useRouter as Y, onBeforeRouteLeave as is } from "vue-router";
|
|
8
|
+
import { TransitionRoot as rt, Dialog as nt, TransitionChild as ye, DialogPanel as lt } from "@headlessui/vue";
|
|
9
|
+
import xe from "nprogress";
|
|
10
|
+
import { range as cs, get as te, find as us, has as ds } from "lodash";
|
|
11
|
+
import { HotTable as ps } from "@handsontable/vue3";
|
|
12
12
|
import "handsontable/styles/handsontable.css";
|
|
13
13
|
import "handsontable/styles/ht-theme-classic.css";
|
|
14
|
-
import { registerPlugin as
|
|
15
|
-
import { registerAllCellTypes as
|
|
16
|
-
import { useDebounceFn as
|
|
17
|
-
import { registerRenderer as
|
|
14
|
+
import { registerPlugin as ge, AutoColumnSize as fs, CopyPaste as ms, StretchColumns as gs, NestedHeaders as hs } from "handsontable/plugins";
|
|
15
|
+
import { registerAllCellTypes as ys } from "handsontable/cellTypes";
|
|
16
|
+
import { useDebounceFn as it, watchDebounced as Pe } from "@vueuse/core";
|
|
17
|
+
import { registerRenderer as vs, baseRenderer as bs } from "handsontable/renderers";
|
|
18
18
|
import le from "axios";
|
|
19
|
-
const
|
|
20
|
-
farArrowLeftToLine:
|
|
21
|
-
farArrowRightToLine:
|
|
22
|
-
farBarsSort:
|
|
23
|
-
farBellRing:
|
|
24
|
-
farBullhorn:
|
|
25
|
-
farCheck:
|
|
26
|
-
farCheckCircle:
|
|
27
|
-
farChevronDown:
|
|
28
|
-
farChevronLeft:
|
|
29
|
-
farChevronRight:
|
|
30
|
-
farChevronUp:
|
|
31
|
-
farCircleUser:
|
|
32
|
-
farCircleXmark:
|
|
33
|
-
farComments:
|
|
19
|
+
const R = {
|
|
20
|
+
farArrowLeftToLine: os,
|
|
21
|
+
farArrowRightToLine: as,
|
|
22
|
+
farBarsSort: ss,
|
|
23
|
+
farBellRing: ts,
|
|
24
|
+
farBullhorn: es,
|
|
25
|
+
farCheck: Te,
|
|
26
|
+
farCheckCircle: Qt,
|
|
27
|
+
farChevronDown: ot,
|
|
28
|
+
farChevronLeft: at,
|
|
29
|
+
farChevronRight: st,
|
|
30
|
+
farChevronUp: Jt,
|
|
31
|
+
farCircleUser: Xt,
|
|
32
|
+
farCircleXmark: Yt,
|
|
33
|
+
farComments: Gt,
|
|
34
34
|
farEdit: Kt,
|
|
35
|
-
farEllipsis:
|
|
36
|
-
farEllipsisVertical:
|
|
37
|
-
farExclamationTriangle:
|
|
38
|
-
farFaceSmileRelaxed:
|
|
39
|
-
farFaceSmileWink:
|
|
40
|
-
farFlag:
|
|
41
|
-
farGearComplex:
|
|
42
|
-
farGripDotsVertical:
|
|
43
|
-
farInfoCircle:
|
|
35
|
+
farEllipsis: Wt,
|
|
36
|
+
farEllipsisVertical: Zt,
|
|
37
|
+
farExclamationTriangle: qt,
|
|
38
|
+
farFaceSmileRelaxed: Ut,
|
|
39
|
+
farFaceSmileWink: Nt,
|
|
40
|
+
farFlag: zt,
|
|
41
|
+
farGearComplex: jt,
|
|
42
|
+
farGripDotsVertical: tt,
|
|
43
|
+
farInfoCircle: Bt,
|
|
44
44
|
farLaptopMobile: Ot,
|
|
45
|
-
farLayerPlus:
|
|
45
|
+
farLayerPlus: It,
|
|
46
46
|
farSatelliteDish: Et,
|
|
47
|
-
farScaleBalanced:
|
|
48
|
-
farSort:
|
|
49
|
-
farSortDown:
|
|
50
|
-
farSortUp:
|
|
51
|
-
farStreetView:
|
|
52
|
-
farTimes:
|
|
53
|
-
farTrash:
|
|
47
|
+
farScaleBalanced: At,
|
|
48
|
+
farSort: Rt,
|
|
49
|
+
farSortDown: Dt,
|
|
50
|
+
farSortUp: Ft,
|
|
51
|
+
farStreetView: Ht,
|
|
52
|
+
farTimes: Vt,
|
|
53
|
+
farTrash: et,
|
|
54
54
|
farXmark: Ce,
|
|
55
|
-
farSignOut:
|
|
56
|
-
farEye:
|
|
57
|
-
farUndo:
|
|
58
|
-
farBolt:
|
|
59
|
-
farCloudDownload:
|
|
55
|
+
farSignOut: Mt,
|
|
56
|
+
farEye: Pt,
|
|
57
|
+
farUndo: Lt,
|
|
58
|
+
farBolt: $t,
|
|
59
|
+
farCloudDownload: Tt,
|
|
60
60
|
farCloudArrowUp: Ct,
|
|
61
|
-
farInbox:
|
|
62
|
-
farCircleCheck:
|
|
63
|
-
fadSort:
|
|
64
|
-
fadSortDown:
|
|
65
|
-
fadSortUp:
|
|
61
|
+
farInbox: St,
|
|
62
|
+
farCircleCheck: _t,
|
|
63
|
+
fadSort: ls,
|
|
64
|
+
fadSortDown: ns,
|
|
65
|
+
fadSortUp: rs,
|
|
66
66
|
// Additional icons for FormKit genesis replacement
|
|
67
|
-
farPlus:
|
|
68
|
-
farArrowDown:
|
|
69
|
-
farArrowUp:
|
|
70
|
-
farCalendar:
|
|
71
|
-
farFile:
|
|
67
|
+
farPlus: Qe,
|
|
68
|
+
farArrowDown: Je,
|
|
69
|
+
farArrowUp: Xe,
|
|
70
|
+
farCalendar: Ye,
|
|
71
|
+
farFile: Se,
|
|
72
72
|
farCircle: kt,
|
|
73
|
-
farSpinner:
|
|
73
|
+
farSpinner: Ge,
|
|
74
74
|
farStar: Ke,
|
|
75
|
-
farAnglesRight:
|
|
76
|
-
farAnglesLeft:
|
|
77
|
-
farEyeDropper:
|
|
78
|
-
farCircleDot:
|
|
75
|
+
farAnglesRight: We,
|
|
76
|
+
farAnglesLeft: Ze,
|
|
77
|
+
farEyeDropper: qe,
|
|
78
|
+
farCircleDot: Ue
|
|
79
79
|
}, Qn = Object.fromEntries(
|
|
80
|
-
Object.entries(
|
|
81
|
-
const t =
|
|
80
|
+
Object.entries(R).map(([e, s]) => {
|
|
81
|
+
const t = se(s);
|
|
82
82
|
return [e, t?.html?.[0] || ""];
|
|
83
83
|
})
|
|
84
|
-
),
|
|
85
|
-
add:
|
|
86
|
-
arrowDown:
|
|
87
|
-
arrowUp:
|
|
88
|
-
check:
|
|
84
|
+
), xs = {
|
|
85
|
+
add: Qe,
|
|
86
|
+
arrowDown: Je,
|
|
87
|
+
arrowUp: Xe,
|
|
88
|
+
check: Te,
|
|
89
89
|
close: Ce,
|
|
90
|
-
checkboxDecorator:
|
|
91
|
-
date:
|
|
92
|
-
dragHandle:
|
|
93
|
-
fileItem:
|
|
90
|
+
checkboxDecorator: Te,
|
|
91
|
+
date: Ye,
|
|
92
|
+
dragHandle: tt,
|
|
93
|
+
fileItem: Se,
|
|
94
94
|
fileRemove: Ce,
|
|
95
|
-
noFiles:
|
|
96
|
-
radioDecorator:
|
|
95
|
+
noFiles: Se,
|
|
96
|
+
radioDecorator: Ue,
|
|
97
97
|
// Circle with dot for radio indicator
|
|
98
|
-
select:
|
|
99
|
-
spinner:
|
|
98
|
+
select: ot,
|
|
99
|
+
spinner: Ge,
|
|
100
100
|
star: Ke,
|
|
101
|
-
trash:
|
|
102
|
-
fastForward:
|
|
103
|
-
right:
|
|
104
|
-
left:
|
|
105
|
-
rewind:
|
|
106
|
-
color:
|
|
101
|
+
trash: et,
|
|
102
|
+
fastForward: We,
|
|
103
|
+
right: st,
|
|
104
|
+
left: at,
|
|
105
|
+
rewind: Ze,
|
|
106
|
+
color: qe
|
|
107
107
|
}, el = Object.fromEntries(
|
|
108
|
-
Object.entries(
|
|
109
|
-
const t =
|
|
108
|
+
Object.entries(xs).map(([e, s]) => {
|
|
109
|
+
const t = se(s);
|
|
110
110
|
return [e, t?.html?.[0] || ""];
|
|
111
111
|
})
|
|
112
112
|
);
|
|
113
113
|
function tl(e) {
|
|
114
|
-
const s =
|
|
114
|
+
const s = R[e];
|
|
115
115
|
if (s) {
|
|
116
|
-
const t =
|
|
116
|
+
const t = se(s);
|
|
117
117
|
return Promise.resolve(t?.html?.[0] || void 0);
|
|
118
118
|
}
|
|
119
119
|
return Promise.resolve(void 0);
|
|
120
120
|
}
|
|
121
121
|
function sl(e) {
|
|
122
|
-
Object.assign(
|
|
122
|
+
Object.assign(R, e), Ne.add(...Object.values(e));
|
|
123
123
|
}
|
|
124
124
|
function al(e) {
|
|
125
|
-
|
|
125
|
+
Ne.add(...Object.values(R)), e.component("FontAwesomeIcon", he);
|
|
126
126
|
}
|
|
127
|
-
const
|
|
127
|
+
const ws = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }, _s = { class: "ml-3" }, Ss = {
|
|
128
128
|
key: 0,
|
|
129
129
|
class: "ml-auto pl-3 pt-1 self-start"
|
|
130
130
|
}, Cs = { class: "-mx-1.5 -my-1.5" }, re = {
|
|
@@ -164,38 +164,38 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
164
164
|
info: "text-blue-400 hover:bg-blue-100"
|
|
165
165
|
})[s.type]);
|
|
166
166
|
return (o, i) => {
|
|
167
|
-
const r =
|
|
167
|
+
const r = A("font-awesome-icon");
|
|
168
168
|
return m(), v("div", {
|
|
169
169
|
class: V(["rounded-md border p-4", t.value])
|
|
170
170
|
}, [
|
|
171
|
-
g("div",
|
|
171
|
+
g("div", ws, [
|
|
172
172
|
g("div", ks, [
|
|
173
|
-
|
|
174
|
-
icon:
|
|
173
|
+
S(r, {
|
|
174
|
+
icon: C(R)[l.value],
|
|
175
175
|
class: V(a.value)
|
|
176
176
|
}, null, 8, ["icon", "class"])
|
|
177
177
|
]),
|
|
178
|
-
g("div",
|
|
179
|
-
|
|
178
|
+
g("div", _s, [
|
|
179
|
+
z(o.$slots, "default")
|
|
180
180
|
]),
|
|
181
|
-
e.closeable ? (m(), v("div",
|
|
181
|
+
e.closeable ? (m(), v("div", Ss, [
|
|
182
182
|
g("div", Cs, [
|
|
183
183
|
g("button", {
|
|
184
184
|
type: "button",
|
|
185
185
|
class: V(["inline-flex rounded-md px-2 py-1.5", n.value]),
|
|
186
186
|
onClick: i[0] || (i[0] = (c) => o.$emit("close"))
|
|
187
187
|
}, [
|
|
188
|
-
|
|
189
|
-
icon:
|
|
188
|
+
S(r, {
|
|
189
|
+
icon: C(R).farXmark
|
|
190
190
|
}, null, 8, ["icon"])
|
|
191
191
|
], 2)
|
|
192
192
|
])
|
|
193
|
-
])) :
|
|
193
|
+
])) : $("", !0)
|
|
194
194
|
])
|
|
195
195
|
], 2);
|
|
196
196
|
};
|
|
197
197
|
}
|
|
198
|
-
},
|
|
198
|
+
}, we = [
|
|
199
199
|
{
|
|
200
200
|
name: "Bolt",
|
|
201
201
|
description: "Job management",
|
|
@@ -244,9 +244,9 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
244
244
|
href: "https://tabula.letsbolt.io",
|
|
245
245
|
icon: "farCompass"
|
|
246
246
|
}
|
|
247
|
-
],
|
|
248
|
-
const e =
|
|
249
|
-
apps: [...
|
|
247
|
+
], ct = fe("sparkAppSelector", () => {
|
|
248
|
+
const e = G({
|
|
249
|
+
apps: [...we]
|
|
250
250
|
}), s = (n = {}) => {
|
|
251
251
|
if (n.apps && Array.isArray(n.apps)) {
|
|
252
252
|
const o = n.apps.filter((i) => {
|
|
@@ -265,7 +265,7 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
265
265
|
const o = /* @__PURE__ */ new Map();
|
|
266
266
|
Object.keys(n.appHrefs).forEach((i) => {
|
|
267
267
|
o.set(i.toLowerCase(), n.appHrefs[i]);
|
|
268
|
-
}), e.apps =
|
|
268
|
+
}), e.apps = we.map((i) => {
|
|
269
269
|
const r = o.get(i.name.toLowerCase());
|
|
270
270
|
return {
|
|
271
271
|
...i,
|
|
@@ -274,7 +274,7 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
274
274
|
});
|
|
275
275
|
return;
|
|
276
276
|
}
|
|
277
|
-
e.apps = [...
|
|
277
|
+
e.apps = [...we];
|
|
278
278
|
}, t = L(() => e.apps), a = (n) => {
|
|
279
279
|
if (!n) return null;
|
|
280
280
|
const o = n.toLowerCase();
|
|
@@ -290,8 +290,8 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
290
290
|
return o ? o.icon : "";
|
|
291
291
|
}
|
|
292
292
|
};
|
|
293
|
-
}),
|
|
294
|
-
const e =
|
|
293
|
+
}), ut = fe("sparkApp", () => {
|
|
294
|
+
const e = G({
|
|
295
295
|
app: "",
|
|
296
296
|
homeRoute: "dashboard",
|
|
297
297
|
showBrandSelector: !0,
|
|
@@ -303,16 +303,16 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
303
303
|
e.app = t.app || "", e.homeRoute = t.homeRoute ?? "dashboard", e.showBrandSelector = t.showBrandSelector ?? !0, e.showAppSelector = t.showAppSelector ?? !0;
|
|
304
304
|
}
|
|
305
305
|
};
|
|
306
|
-
}),
|
|
306
|
+
}), Ts = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, $s = { class: "flex flex-1 flex-col" }, Ls = { class: "divide-y divide-gray-200" }, Ps = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, Ms = { class: "ml-auto flex items-center" }, Vs = ["href", "onClick"], Hs = { class: "gap-y-1" }, Fs = { class: "text-base text-gray-800 flex items-center" }, Ds = { class: "font-medium" }, Rs = {
|
|
307
307
|
key: 0,
|
|
308
308
|
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"
|
|
309
|
-
},
|
|
309
|
+
}, As = { class: "text-sm text-gray-500" }, Es = { class: "ml-auto flex items-center" }, Is = { class: "mt-auto" }, Os = {
|
|
310
310
|
key: 0,
|
|
311
311
|
class: "p-6"
|
|
312
|
-
},
|
|
312
|
+
}, Bs = {
|
|
313
313
|
key: 1,
|
|
314
314
|
class: "bg-gray-50 p-6"
|
|
315
|
-
},
|
|
315
|
+
}, js = {
|
|
316
316
|
__name: "SparkAppSelector",
|
|
317
317
|
props: {
|
|
318
318
|
bottomSlot: {
|
|
@@ -326,7 +326,7 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
326
326
|
},
|
|
327
327
|
emits: ["close", "select"],
|
|
328
328
|
setup(e, { emit: s }) {
|
|
329
|
-
const t = s, a =
|
|
329
|
+
const t = s, a = ct(), l = ut(), n = L(() => {
|
|
330
330
|
const i = l.state.app;
|
|
331
331
|
return a.state.apps.map((r) => ({
|
|
332
332
|
...r,
|
|
@@ -336,68 +336,68 @@ const xs = { class: "flex items-center" }, ks = { class: "shrink-0 self-start" }
|
|
|
336
336
|
t("select", i);
|
|
337
337
|
};
|
|
338
338
|
return (i, r) => {
|
|
339
|
-
const c =
|
|
340
|
-
return m(), v("div",
|
|
341
|
-
g("div",
|
|
342
|
-
g("div",
|
|
343
|
-
g("div",
|
|
339
|
+
const c = A("font-awesome-icon");
|
|
340
|
+
return m(), v("div", Ts, [
|
|
341
|
+
g("div", $s, [
|
|
342
|
+
g("div", Ls, [
|
|
343
|
+
g("div", Ps, [
|
|
344
344
|
r[1] || (r[1] = g("div", null, "Mr Group Network", -1)),
|
|
345
|
-
g("div",
|
|
346
|
-
|
|
347
|
-
icon:
|
|
345
|
+
g("div", Ms, [
|
|
346
|
+
S(c, {
|
|
347
|
+
icon: C(R).farTimes,
|
|
348
348
|
class: "h-[15px] w-[15px] shrink-0 text-gray-400 cursor-pointer",
|
|
349
349
|
onClick: r[0] || (r[0] = (d) => t("close"))
|
|
350
350
|
}, null, 8, ["icon"])
|
|
351
351
|
])
|
|
352
352
|
]),
|
|
353
|
-
(m(!0), v(E, null,
|
|
353
|
+
(m(!0), v(E, null, N(n.value, (d) => (m(), v("a", {
|
|
354
354
|
key: d.name,
|
|
355
355
|
href: d.href,
|
|
356
356
|
target: "_blank",
|
|
357
357
|
class: V([d.current ? "bg-gray-50" : "hover:bg-gray-50", "flex px-[22px] py-[15px] cursor-pointer"]),
|
|
358
|
-
onClick: (
|
|
358
|
+
onClick: (f) => d.current ? f.preventDefault() : o(d)
|
|
359
359
|
}, [
|
|
360
|
-
g("div",
|
|
361
|
-
g("div",
|
|
362
|
-
g("div",
|
|
363
|
-
d.current ? (m(), v("span",
|
|
360
|
+
g("div", Hs, [
|
|
361
|
+
g("div", Fs, [
|
|
362
|
+
g("div", Ds, M(d.name), 1),
|
|
363
|
+
d.current ? (m(), v("span", Rs, " Active ")) : $("", !0)
|
|
364
364
|
]),
|
|
365
|
-
g("div",
|
|
365
|
+
g("div", As, M(d.description), 1)
|
|
366
366
|
]),
|
|
367
367
|
g("div", Es, [
|
|
368
|
-
|
|
368
|
+
S(c, {
|
|
369
369
|
class: V([d.current ? "text-gray-700" : "text-gray-400", "h-5 w-5 shrink-0"]),
|
|
370
|
-
icon:
|
|
370
|
+
icon: C(R)[d.icon]
|
|
371
371
|
}, null, 8, ["class", "icon"])
|
|
372
372
|
])
|
|
373
|
-
], 10,
|
|
373
|
+
], 10, Vs))), 128)),
|
|
374
374
|
r[2] || (r[2] = g("div", null, null, -1))
|
|
375
375
|
]),
|
|
376
|
-
g("div",
|
|
376
|
+
g("div", Is, [
|
|
377
377
|
i.$slots.bottom || e.bottomSlot ? (m(), v("div", Os, [
|
|
378
|
-
|
|
379
|
-
e.bottomSlot ? (m(), H(
|
|
378
|
+
z(i.$slots, "bottom", {}, () => [
|
|
379
|
+
e.bottomSlot ? (m(), H(W(e.bottomSlot), { key: 0 })) : $("", !0)
|
|
380
380
|
])
|
|
381
|
-
])) :
|
|
382
|
-
i.$slots.footer || e.footerSlot ? (m(), v("div",
|
|
383
|
-
|
|
384
|
-
e.footerSlot ? (m(), H(
|
|
381
|
+
])) : $("", !0),
|
|
382
|
+
i.$slots.footer || e.footerSlot ? (m(), v("div", Bs, [
|
|
383
|
+
z(i.$slots, "footer", {}, () => [
|
|
384
|
+
e.footerSlot ? (m(), H(W(e.footerSlot), { key: 0 })) : $("", !0)
|
|
385
385
|
])
|
|
386
|
-
])) :
|
|
386
|
+
])) : $("", !0)
|
|
387
387
|
])
|
|
388
388
|
])
|
|
389
389
|
]);
|
|
390
390
|
};
|
|
391
391
|
}
|
|
392
|
-
},
|
|
392
|
+
}, dt = {
|
|
393
393
|
success: 5e3,
|
|
394
394
|
info: 5e3,
|
|
395
395
|
warning: 5e3,
|
|
396
396
|
danger: 0
|
|
397
397
|
// sticky by default
|
|
398
|
-
},
|
|
399
|
-
function
|
|
400
|
-
const e =
|
|
398
|
+
}, Me = ["top-left", "top-right", "center", "bottom-left", "bottom-right"];
|
|
399
|
+
function zs() {
|
|
400
|
+
const e = G({
|
|
401
401
|
isVisible: !1,
|
|
402
402
|
type: "info",
|
|
403
403
|
message: null,
|
|
@@ -413,27 +413,27 @@ function js() {
|
|
|
413
413
|
s && (clearTimeout(s), s = null), t = 0, a = !1, l = null;
|
|
414
414
|
}, o = () => {
|
|
415
415
|
n(), e.isVisible = !1;
|
|
416
|
-
}, i = (
|
|
417
|
-
|
|
416
|
+
}, i = (p) => {
|
|
417
|
+
p <= 0 || (t = p, l = Date.now(), s = setTimeout(() => {
|
|
418
418
|
o();
|
|
419
|
-
},
|
|
419
|
+
}, p));
|
|
420
420
|
};
|
|
421
421
|
return {
|
|
422
422
|
state: e,
|
|
423
|
-
show: (
|
|
423
|
+
show: (p = {}) => {
|
|
424
424
|
n();
|
|
425
425
|
const {
|
|
426
|
-
type:
|
|
426
|
+
type: k = "info",
|
|
427
427
|
message: _ = null,
|
|
428
428
|
component: b = null,
|
|
429
429
|
props: u = {},
|
|
430
430
|
closeable: h = !0,
|
|
431
431
|
duration: x = null,
|
|
432
432
|
persistent: y = !1
|
|
433
|
-
} =
|
|
434
|
-
e.type =
|
|
435
|
-
const
|
|
436
|
-
e.duration =
|
|
433
|
+
} = p;
|
|
434
|
+
e.type = k, e.message = _, e.component = b ? ce(b) : null, e.props = u, e.closeable = h, e.persistent = y, e.isVisible = !0;
|
|
435
|
+
const w = x !== null ? x : dt[k];
|
|
436
|
+
e.duration = w, w > 0 && i(w);
|
|
437
437
|
},
|
|
438
438
|
hide: o,
|
|
439
439
|
reset: () => {
|
|
@@ -442,8 +442,8 @@ function js() {
|
|
|
442
442
|
pause: () => {
|
|
443
443
|
if (!s || a) return;
|
|
444
444
|
clearTimeout(s), s = null;
|
|
445
|
-
const
|
|
446
|
-
t = Math.max(0, t -
|
|
445
|
+
const p = Date.now() - l;
|
|
446
|
+
t = Math.max(0, t - p), a = !0;
|
|
447
447
|
},
|
|
448
448
|
resume: () => {
|
|
449
449
|
!a || t <= 0 || (a = !1, l = Date.now(), s = setTimeout(() => {
|
|
@@ -452,9 +452,9 @@ function js() {
|
|
|
452
452
|
}
|
|
453
453
|
};
|
|
454
454
|
}
|
|
455
|
-
class
|
|
455
|
+
class Ns {
|
|
456
456
|
constructor() {
|
|
457
|
-
this.outlets = /* @__PURE__ */ new Map(), this.toastState =
|
|
457
|
+
this.outlets = /* @__PURE__ */ new Map(), this.toastState = G({
|
|
458
458
|
toasts: [],
|
|
459
459
|
maxToasts: 3,
|
|
460
460
|
defaultPosition: "bottom-right",
|
|
@@ -470,7 +470,7 @@ class zs {
|
|
|
470
470
|
* @returns {Object} Notification outlet instance
|
|
471
471
|
*/
|
|
472
472
|
getOutlet(s = "default") {
|
|
473
|
-
return this.outlets.has(s) || this.outlets.set(s,
|
|
473
|
+
return this.outlets.has(s) || this.outlets.set(s, zs()), this.outlets.get(s);
|
|
474
474
|
}
|
|
475
475
|
/**
|
|
476
476
|
* Show a banner notification in the specified outlet
|
|
@@ -550,7 +550,7 @@ class zs {
|
|
|
550
550
|
* @param {boolean} options.newestOnTop - Whether newest toasts appear on top (default: true)
|
|
551
551
|
*/
|
|
552
552
|
configureToasts(s = {}) {
|
|
553
|
-
s.maxToasts !== void 0 && (this.toastState.maxToasts = s.maxToasts), s.defaultPosition !== void 0 &&
|
|
553
|
+
s.maxToasts !== void 0 && (this.toastState.maxToasts = s.maxToasts), s.defaultPosition !== void 0 && Me.includes(s.defaultPosition) && (this.toastState.defaultPosition = s.defaultPosition), s.newestOnTop !== void 0 && (this.toastState.newestOnTop = s.newestOnTop);
|
|
554
554
|
}
|
|
555
555
|
/**
|
|
556
556
|
* Show a toast notification
|
|
@@ -573,27 +573,27 @@ class zs {
|
|
|
573
573
|
closeable: o = !0,
|
|
574
574
|
duration: i = null,
|
|
575
575
|
position: r = null
|
|
576
|
-
} = s, c = ++this._toastIdCounter, d = r &&
|
|
576
|
+
} = s, c = ++this._toastIdCounter, d = r && Me.includes(r) ? r : this.toastState.defaultPosition, f = i !== null ? i : dt[t], p = {
|
|
577
577
|
id: c,
|
|
578
578
|
type: t,
|
|
579
579
|
message: a,
|
|
580
580
|
component: l ? ce(l) : null,
|
|
581
581
|
props: n,
|
|
582
582
|
closeable: o,
|
|
583
|
-
duration:
|
|
583
|
+
duration: f,
|
|
584
584
|
position: d,
|
|
585
585
|
createdAt: Date.now()
|
|
586
|
-
},
|
|
587
|
-
if (
|
|
588
|
-
const _ = this.toastState.newestOnTop ?
|
|
586
|
+
}, k = this.toastState.toasts.filter((_) => _.position === d);
|
|
587
|
+
if (k.length >= this.toastState.maxToasts) {
|
|
588
|
+
const _ = this.toastState.newestOnTop ? k[k.length - 1] : k[0];
|
|
589
589
|
this.hideToast(_.id);
|
|
590
590
|
}
|
|
591
591
|
if (this.toastState.newestOnTop) {
|
|
592
592
|
const _ = this.toastState.toasts.findIndex((b) => b.position === d);
|
|
593
|
-
_ === -1 ? this.toastState.toasts.push(
|
|
593
|
+
_ === -1 ? this.toastState.toasts.push(p) : this.toastState.toasts.splice(_, 0, p);
|
|
594
594
|
} else
|
|
595
|
-
this.toastState.toasts.push(
|
|
596
|
-
return
|
|
595
|
+
this.toastState.toasts.push(p);
|
|
596
|
+
return f > 0 && this._startToastTimer(c, f), c;
|
|
597
597
|
}
|
|
598
598
|
/**
|
|
599
599
|
* Hide a specific toast by ID
|
|
@@ -666,7 +666,7 @@ class zs {
|
|
|
666
666
|
t && (t.timeout && clearTimeout(t.timeout), this._toastTimers.delete(s));
|
|
667
667
|
}
|
|
668
668
|
}
|
|
669
|
-
const
|
|
669
|
+
const B = new Ns(), ol = {
|
|
670
670
|
__name: "SparkNotificationOutlet",
|
|
671
671
|
props: {
|
|
672
672
|
name: {
|
|
@@ -679,34 +679,34 @@ const j = new zs(), ol = {
|
|
|
679
679
|
}
|
|
680
680
|
},
|
|
681
681
|
setup(e) {
|
|
682
|
-
const s = e, t =
|
|
683
|
-
|
|
682
|
+
const s = e, t = ee(), a = L(() => B.getOutlet(s.name)), l = D(0);
|
|
683
|
+
U(
|
|
684
684
|
() => [a.value.state.message, a.value.state.component, a.value.state.type],
|
|
685
685
|
() => {
|
|
686
686
|
a.value.state.isVisible && l.value++;
|
|
687
687
|
}
|
|
688
|
-
),
|
|
688
|
+
), U(
|
|
689
689
|
() => a.value.state.isVisible,
|
|
690
690
|
(r) => {
|
|
691
691
|
r && !a.value.state.shownOnPath && (a.value.state.shownOnPath = t.path);
|
|
692
692
|
},
|
|
693
693
|
{ immediate: !0 }
|
|
694
|
-
),
|
|
694
|
+
), pe(() => {
|
|
695
695
|
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()));
|
|
696
|
-
}),
|
|
696
|
+
}), U(
|
|
697
697
|
() => t.path,
|
|
698
698
|
() => {
|
|
699
699
|
s.clearOnRouteChange && (t.meta.preserveNotifications || a.value.state.isVisible && (a.value.state.persistent || a.value.hide()));
|
|
700
700
|
}
|
|
701
701
|
);
|
|
702
702
|
const n = () => {
|
|
703
|
-
|
|
703
|
+
B.hide(s.name);
|
|
704
704
|
}, o = () => {
|
|
705
|
-
|
|
705
|
+
B.pause(s.name);
|
|
706
706
|
}, i = () => {
|
|
707
|
-
|
|
707
|
+
B.resume(s.name);
|
|
708
708
|
};
|
|
709
|
-
return (r, c) => (m(), H(
|
|
709
|
+
return (r, c) => (m(), H(ht, {
|
|
710
710
|
"enter-active-class": "transition-all duration-300 ease-out",
|
|
711
711
|
"enter-from-class": "opacity-0 -translate-y-2",
|
|
712
712
|
"enter-to-class": "opacity-100 translate-y-0",
|
|
@@ -725,20 +725,20 @@ const j = new zs(), ol = {
|
|
|
725
725
|
onMouseleave: i
|
|
726
726
|
}, {
|
|
727
727
|
default: P(() => [
|
|
728
|
-
a.value.state.component ? (m(), H(
|
|
729
|
-
|
|
728
|
+
a.value.state.component ? (m(), H(W(a.value.state.component), yt(K({ key: 0 }, a.value.state.props)), null, 16)) : (m(), v(E, { key: 1 }, [
|
|
729
|
+
I(M(a.value.state.message), 1)
|
|
730
730
|
], 64))
|
|
731
731
|
]),
|
|
732
732
|
_: 1
|
|
733
|
-
}, 8, ["type", "closeable"])) :
|
|
733
|
+
}, 8, ["type", "closeable"])) : $("", !0)
|
|
734
734
|
]),
|
|
735
735
|
_: 1
|
|
736
736
|
}));
|
|
737
737
|
}
|
|
738
|
-
},
|
|
738
|
+
}, Us = { class: "fixed top-4 left-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, qs = { class: "fixed top-4 right-4 z-[2000] flex flex-col gap-3 max-w-sm w-full pointer-events-none" }, Zs = { 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" }, Ws = { class: "fixed bottom-4 left-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, Ks = { class: "fixed bottom-4 right-4 z-[2000] flex flex-col-reverse gap-3 max-w-sm w-full pointer-events-none" }, rl = {
|
|
739
739
|
__name: "SparkToastContainer",
|
|
740
740
|
setup(e) {
|
|
741
|
-
const s =
|
|
741
|
+
const s = B.toastState, t = L(
|
|
742
742
|
() => s.toasts.filter((d) => d.position === "top-left")
|
|
743
743
|
), a = L(
|
|
744
744
|
() => s.toasts.filter((d) => d.position === "top-right")
|
|
@@ -749,15 +749,15 @@ const j = new zs(), ol = {
|
|
|
749
749
|
), o = L(
|
|
750
750
|
() => s.toasts.filter((d) => d.position === "bottom-right")
|
|
751
751
|
), i = (d) => {
|
|
752
|
-
|
|
752
|
+
B.hideToast(d);
|
|
753
753
|
}, r = (d) => {
|
|
754
|
-
|
|
754
|
+
B.pauseToast(d);
|
|
755
755
|
}, c = (d) => {
|
|
756
|
-
|
|
756
|
+
B.resumeToast(d);
|
|
757
757
|
};
|
|
758
|
-
return (d,
|
|
759
|
-
g("div",
|
|
760
|
-
|
|
758
|
+
return (d, f) => (m(), H(vt, { to: "body" }, [
|
|
759
|
+
g("div", Us, [
|
|
760
|
+
S(ue, {
|
|
761
761
|
"enter-active-class": "transition-all duration-300 ease-out",
|
|
762
762
|
"enter-from-class": "opacity-0 -translate-x-4",
|
|
763
763
|
"enter-to-class": "opacity-100 translate-x-0",
|
|
@@ -766,23 +766,23 @@ const j = new zs(), ol = {
|
|
|
766
766
|
"leave-to-class": "opacity-0 -translate-x-4"
|
|
767
767
|
}, {
|
|
768
768
|
default: P(() => [
|
|
769
|
-
(m(!0), v(E, null,
|
|
770
|
-
key:
|
|
769
|
+
(m(!0), v(E, null, N(t.value, (p) => (m(), v("div", {
|
|
770
|
+
key: p.id,
|
|
771
771
|
class: "pointer-events-auto"
|
|
772
772
|
}, [
|
|
773
|
-
|
|
774
|
-
type:
|
|
775
|
-
closeable:
|
|
776
|
-
onClose: (
|
|
777
|
-
onMouseenter: (
|
|
778
|
-
onMouseleave: (
|
|
773
|
+
S(re, {
|
|
774
|
+
type: p.type,
|
|
775
|
+
closeable: p.closeable,
|
|
776
|
+
onClose: (k) => i(p.id),
|
|
777
|
+
onMouseenter: (k) => r(p.id),
|
|
778
|
+
onMouseleave: (k) => c(p.id)
|
|
779
779
|
}, {
|
|
780
780
|
default: P(() => [
|
|
781
|
-
|
|
781
|
+
p.component ? (m(), H(W(p.component), K({
|
|
782
782
|
key: 0,
|
|
783
783
|
ref_for: !0
|
|
784
|
-
},
|
|
785
|
-
|
|
784
|
+
}, p.props), null, 16)) : (m(), v(E, { key: 1 }, [
|
|
785
|
+
I(M(p.message), 1)
|
|
786
786
|
], 64))
|
|
787
787
|
]),
|
|
788
788
|
_: 2
|
|
@@ -792,8 +792,8 @@ const j = new zs(), ol = {
|
|
|
792
792
|
_: 1
|
|
793
793
|
})
|
|
794
794
|
]),
|
|
795
|
-
g("div",
|
|
796
|
-
|
|
795
|
+
g("div", qs, [
|
|
796
|
+
S(ue, {
|
|
797
797
|
"enter-active-class": "transition-all duration-300 ease-out",
|
|
798
798
|
"enter-from-class": "opacity-0 translate-x-4",
|
|
799
799
|
"enter-to-class": "opacity-100 translate-x-0",
|
|
@@ -802,23 +802,23 @@ const j = new zs(), ol = {
|
|
|
802
802
|
"leave-to-class": "opacity-0 translate-x-4"
|
|
803
803
|
}, {
|
|
804
804
|
default: P(() => [
|
|
805
|
-
(m(!0), v(E, null,
|
|
806
|
-
key:
|
|
805
|
+
(m(!0), v(E, null, N(a.value, (p) => (m(), v("div", {
|
|
806
|
+
key: p.id,
|
|
807
807
|
class: "pointer-events-auto"
|
|
808
808
|
}, [
|
|
809
|
-
|
|
810
|
-
type:
|
|
811
|
-
closeable:
|
|
812
|
-
onClose: (
|
|
813
|
-
onMouseenter: (
|
|
814
|
-
onMouseleave: (
|
|
809
|
+
S(re, {
|
|
810
|
+
type: p.type,
|
|
811
|
+
closeable: p.closeable,
|
|
812
|
+
onClose: (k) => i(p.id),
|
|
813
|
+
onMouseenter: (k) => r(p.id),
|
|
814
|
+
onMouseleave: (k) => c(p.id)
|
|
815
815
|
}, {
|
|
816
816
|
default: P(() => [
|
|
817
|
-
|
|
817
|
+
p.component ? (m(), H(W(p.component), K({
|
|
818
818
|
key: 0,
|
|
819
819
|
ref_for: !0
|
|
820
|
-
},
|
|
821
|
-
|
|
820
|
+
}, p.props), null, 16)) : (m(), v(E, { key: 1 }, [
|
|
821
|
+
I(M(p.message), 1)
|
|
822
822
|
], 64))
|
|
823
823
|
]),
|
|
824
824
|
_: 2
|
|
@@ -828,8 +828,8 @@ const j = new zs(), ol = {
|
|
|
828
828
|
_: 1
|
|
829
829
|
})
|
|
830
830
|
]),
|
|
831
|
-
g("div",
|
|
832
|
-
|
|
831
|
+
g("div", Zs, [
|
|
832
|
+
S(ue, {
|
|
833
833
|
"enter-active-class": "transition-all duration-300 ease-out",
|
|
834
834
|
"enter-from-class": "opacity-0 scale-95",
|
|
835
835
|
"enter-to-class": "opacity-100 scale-100",
|
|
@@ -838,23 +838,23 @@ const j = new zs(), ol = {
|
|
|
838
838
|
"leave-to-class": "opacity-0 scale-95"
|
|
839
839
|
}, {
|
|
840
840
|
default: P(() => [
|
|
841
|
-
(m(!0), v(E, null,
|
|
842
|
-
key:
|
|
841
|
+
(m(!0), v(E, null, N(l.value, (p) => (m(), v("div", {
|
|
842
|
+
key: p.id,
|
|
843
843
|
class: "pointer-events-auto"
|
|
844
844
|
}, [
|
|
845
|
-
|
|
846
|
-
type:
|
|
847
|
-
closeable:
|
|
848
|
-
onClose: (
|
|
849
|
-
onMouseenter: (
|
|
850
|
-
onMouseleave: (
|
|
845
|
+
S(re, {
|
|
846
|
+
type: p.type,
|
|
847
|
+
closeable: p.closeable,
|
|
848
|
+
onClose: (k) => i(p.id),
|
|
849
|
+
onMouseenter: (k) => r(p.id),
|
|
850
|
+
onMouseleave: (k) => c(p.id)
|
|
851
851
|
}, {
|
|
852
852
|
default: P(() => [
|
|
853
|
-
|
|
853
|
+
p.component ? (m(), H(W(p.component), K({
|
|
854
854
|
key: 0,
|
|
855
855
|
ref_for: !0
|
|
856
|
-
},
|
|
857
|
-
|
|
856
|
+
}, p.props), null, 16)) : (m(), v(E, { key: 1 }, [
|
|
857
|
+
I(M(p.message), 1)
|
|
858
858
|
], 64))
|
|
859
859
|
]),
|
|
860
860
|
_: 2
|
|
@@ -864,8 +864,8 @@ const j = new zs(), ol = {
|
|
|
864
864
|
_: 1
|
|
865
865
|
})
|
|
866
866
|
]),
|
|
867
|
-
g("div",
|
|
868
|
-
|
|
867
|
+
g("div", Ws, [
|
|
868
|
+
S(ue, {
|
|
869
869
|
"enter-active-class": "transition-all duration-300 ease-out",
|
|
870
870
|
"enter-from-class": "opacity-0 -translate-x-4",
|
|
871
871
|
"enter-to-class": "opacity-100 translate-x-0",
|
|
@@ -874,23 +874,23 @@ const j = new zs(), ol = {
|
|
|
874
874
|
"leave-to-class": "opacity-0 -translate-x-4"
|
|
875
875
|
}, {
|
|
876
876
|
default: P(() => [
|
|
877
|
-
(m(!0), v(E, null,
|
|
878
|
-
key:
|
|
877
|
+
(m(!0), v(E, null, N(n.value, (p) => (m(), v("div", {
|
|
878
|
+
key: p.id,
|
|
879
879
|
class: "pointer-events-auto"
|
|
880
880
|
}, [
|
|
881
|
-
|
|
882
|
-
type:
|
|
883
|
-
closeable:
|
|
884
|
-
onClose: (
|
|
885
|
-
onMouseenter: (
|
|
886
|
-
onMouseleave: (
|
|
881
|
+
S(re, {
|
|
882
|
+
type: p.type,
|
|
883
|
+
closeable: p.closeable,
|
|
884
|
+
onClose: (k) => i(p.id),
|
|
885
|
+
onMouseenter: (k) => r(p.id),
|
|
886
|
+
onMouseleave: (k) => c(p.id)
|
|
887
887
|
}, {
|
|
888
888
|
default: P(() => [
|
|
889
|
-
|
|
889
|
+
p.component ? (m(), H(W(p.component), K({
|
|
890
890
|
key: 0,
|
|
891
891
|
ref_for: !0
|
|
892
|
-
},
|
|
893
|
-
|
|
892
|
+
}, p.props), null, 16)) : (m(), v(E, { key: 1 }, [
|
|
893
|
+
I(M(p.message), 1)
|
|
894
894
|
], 64))
|
|
895
895
|
]),
|
|
896
896
|
_: 2
|
|
@@ -901,7 +901,7 @@ const j = new zs(), ol = {
|
|
|
901
901
|
})
|
|
902
902
|
]),
|
|
903
903
|
g("div", Ks, [
|
|
904
|
-
|
|
904
|
+
S(ue, {
|
|
905
905
|
"enter-active-class": "transition-all duration-300 ease-out",
|
|
906
906
|
"enter-from-class": "opacity-0 translate-x-4",
|
|
907
907
|
"enter-to-class": "opacity-100 translate-x-0",
|
|
@@ -910,23 +910,23 @@ const j = new zs(), ol = {
|
|
|
910
910
|
"leave-to-class": "opacity-0 translate-x-4"
|
|
911
911
|
}, {
|
|
912
912
|
default: P(() => [
|
|
913
|
-
(m(!0), v(E, null,
|
|
914
|
-
key:
|
|
913
|
+
(m(!0), v(E, null, N(o.value, (p) => (m(), v("div", {
|
|
914
|
+
key: p.id,
|
|
915
915
|
class: "pointer-events-auto"
|
|
916
916
|
}, [
|
|
917
|
-
|
|
918
|
-
type:
|
|
919
|
-
closeable:
|
|
920
|
-
onClose: (
|
|
921
|
-
onMouseenter: (
|
|
922
|
-
onMouseleave: (
|
|
917
|
+
S(re, {
|
|
918
|
+
type: p.type,
|
|
919
|
+
closeable: p.closeable,
|
|
920
|
+
onClose: (k) => i(p.id),
|
|
921
|
+
onMouseenter: (k) => r(p.id),
|
|
922
|
+
onMouseleave: (k) => c(p.id)
|
|
923
923
|
}, {
|
|
924
924
|
default: P(() => [
|
|
925
|
-
|
|
925
|
+
p.component ? (m(), H(W(p.component), K({
|
|
926
926
|
key: 0,
|
|
927
927
|
ref_for: !0
|
|
928
|
-
},
|
|
929
|
-
|
|
928
|
+
}, p.props), null, 16)) : (m(), v(E, { key: 1 }, [
|
|
929
|
+
I(M(p.message), 1)
|
|
930
930
|
], 64))
|
|
931
931
|
]),
|
|
932
932
|
_: 2
|
|
@@ -938,10 +938,10 @@ const j = new zs(), ol = {
|
|
|
938
938
|
])
|
|
939
939
|
]));
|
|
940
940
|
}
|
|
941
|
-
},
|
|
941
|
+
}, pt = fe(
|
|
942
942
|
"brandFilter",
|
|
943
943
|
() => {
|
|
944
|
-
const e =
|
|
944
|
+
const e = G({
|
|
945
945
|
brands: []
|
|
946
946
|
}), s = (n = {}) => {
|
|
947
947
|
if (!n.brands || !Array.isArray(n.brands)) {
|
|
@@ -982,57 +982,57 @@ const j = new zs(), ol = {
|
|
|
982
982
|
paths: ["state.brands"]
|
|
983
983
|
}
|
|
984
984
|
}
|
|
985
|
-
),
|
|
985
|
+
), Gs = { class: "flex grow flex-col gap-y-5 overflow-y-auto bg-white rounded-lg" }, Ys = { class: "flex flex-1 flex-col" }, Xs = { class: "divide-y divide-gray-200" }, Js = { class: "flex px-[22px] py-2.5 text-[12px] items-center" }, Qs = { class: "ml-auto flex items-center" }, ea = {
|
|
986
986
|
key: 0,
|
|
987
987
|
class: "flex px-[22px] py-[15px] text-gray-500 text-sm"
|
|
988
|
-
},
|
|
988
|
+
}, ta = ["onClick"], sa = { class: "w-full gap-y-1 flex justify-between" }, aa = { class: "flex flex-col" }, oa = { class: "flex items-center" }, ra = { class: "font-medium text-base text-gray-900" }, na = {
|
|
989
989
|
key: 0,
|
|
990
990
|
class: "inline-flex items-center rounded-full bg-green-100 px-1.5 py-0.5 text-xs font-medium text-green-800 ml-1"
|
|
991
|
-
},
|
|
991
|
+
}, la = { class: "text-sm text-gray-500 font-normal" }, ia = { class: "flex items-center" }, ca = ["src", "alt"], ua = {
|
|
992
992
|
__name: "SparkBrandSelector",
|
|
993
993
|
emits: ["close", "select"],
|
|
994
994
|
setup(e, { emit: s }) {
|
|
995
|
-
const t = s, a =
|
|
995
|
+
const t = s, a = pt(), l = (n) => {
|
|
996
996
|
t("select", n);
|
|
997
997
|
};
|
|
998
998
|
return (n, o) => {
|
|
999
|
-
const i =
|
|
1000
|
-
return m(), v("div",
|
|
1001
|
-
g("div",
|
|
1002
|
-
g("div",
|
|
1003
|
-
g("div",
|
|
999
|
+
const i = A("font-awesome-icon");
|
|
1000
|
+
return m(), v("div", Gs, [
|
|
1001
|
+
g("div", Ys, [
|
|
1002
|
+
g("div", Xs, [
|
|
1003
|
+
g("div", Js, [
|
|
1004
1004
|
o[1] || (o[1] = g("div", null, "Filter by Brand", -1)),
|
|
1005
|
-
g("div",
|
|
1006
|
-
|
|
1007
|
-
icon:
|
|
1005
|
+
g("div", Qs, [
|
|
1006
|
+
S(i, {
|
|
1007
|
+
icon: C(R).farTimes,
|
|
1008
1008
|
class: "size-4 text-gray-400 cursor-pointer",
|
|
1009
1009
|
onClick: o[0] || (o[0] = (r) => t("close"))
|
|
1010
1010
|
}, null, 8, ["icon"])
|
|
1011
1011
|
])
|
|
1012
1012
|
]),
|
|
1013
|
-
|
|
1014
|
-
(m(!0), v(E, null,
|
|
1013
|
+
C(a).allBrands.length === 0 ? (m(), v("div", ea, " No brands configured ")) : $("", !0),
|
|
1014
|
+
(m(!0), v(E, null, N(C(a).allBrands, (r) => (m(), v("div", {
|
|
1015
1015
|
key: r.id,
|
|
1016
1016
|
class: V([r.current ? "bg-gray-50" : "hover:bg-gray-50", "flex px-[22px] py-[15px] cursor-pointer"]),
|
|
1017
1017
|
onClick: (c) => l(r)
|
|
1018
1018
|
}, [
|
|
1019
|
-
g("div",
|
|
1020
|
-
g("div",
|
|
1021
|
-
g("div",
|
|
1022
|
-
g("div",
|
|
1023
|
-
r.current ? (m(), v("span",
|
|
1019
|
+
g("div", sa, [
|
|
1020
|
+
g("div", aa, [
|
|
1021
|
+
g("div", oa, [
|
|
1022
|
+
g("div", ra, M(r.name), 1),
|
|
1023
|
+
r.current ? (m(), v("span", na, " Current ")) : $("", !0)
|
|
1024
1024
|
]),
|
|
1025
|
-
g("div",
|
|
1025
|
+
g("div", la, M(r.current ? "Current Brand" : "Change to"), 1)
|
|
1026
1026
|
]),
|
|
1027
|
-
g("div",
|
|
1027
|
+
g("div", ia, [
|
|
1028
1028
|
g("img", {
|
|
1029
1029
|
src: r.logo,
|
|
1030
1030
|
alt: `${r.name} logo`,
|
|
1031
1031
|
class: "h-8 w-auto"
|
|
1032
|
-
}, null, 8,
|
|
1032
|
+
}, null, 8, ca)
|
|
1033
1033
|
])
|
|
1034
1034
|
])
|
|
1035
|
-
], 10,
|
|
1035
|
+
], 10, ta))), 128)),
|
|
1036
1036
|
o[2] || (o[2] = g("div", null, null, -1))
|
|
1037
1037
|
]),
|
|
1038
1038
|
o[3] || (o[3] = g("div", { class: "mt-auto" }, null, -1))
|
|
@@ -1040,7 +1040,7 @@ const j = new zs(), ol = {
|
|
|
1040
1040
|
]);
|
|
1041
1041
|
};
|
|
1042
1042
|
}
|
|
1043
|
-
},
|
|
1043
|
+
}, da = ["disabled"], q = {
|
|
1044
1044
|
__name: "SparkButton",
|
|
1045
1045
|
props: {
|
|
1046
1046
|
size: {
|
|
@@ -1063,7 +1063,7 @@ const j = new zs(), ol = {
|
|
|
1063
1063
|
},
|
|
1064
1064
|
emits: ["click"],
|
|
1065
1065
|
setup(e) {
|
|
1066
|
-
const s = e, t =
|
|
1066
|
+
const s = e, t = D(null), a = be("buttonGroup", null), l = L(() => {
|
|
1067
1067
|
if (!a?.isInGroup || !t.value) return null;
|
|
1068
1068
|
const r = a.getButtonIndex(t.value), c = a.getButtonCount();
|
|
1069
1069
|
return {
|
|
@@ -1084,15 +1084,15 @@ const j = new zs(), ol = {
|
|
|
1084
1084
|
text: /^text-(?!white|black)/
|
|
1085
1085
|
}, o = (r, c) => {
|
|
1086
1086
|
if (!c) return r;
|
|
1087
|
-
const d = r.split(" ").filter(Boolean),
|
|
1088
|
-
return [...d.filter((
|
|
1087
|
+
const d = r.split(" ").filter(Boolean), f = c.split(" ").filter(Boolean);
|
|
1088
|
+
return [...d.filter((k) => !f.some((_) => {
|
|
1089
1089
|
const b = Object.entries(n).find(
|
|
1090
|
-
([h, x]) => x.test(
|
|
1090
|
+
([h, x]) => x.test(k)
|
|
1091
1091
|
)?.[0], u = Object.entries(n).find(
|
|
1092
1092
|
([h, x]) => x.test(_)
|
|
1093
1093
|
)?.[0];
|
|
1094
1094
|
return b && b === u;
|
|
1095
|
-
})), ...
|
|
1095
|
+
})), ...f].join(" ");
|
|
1096
1096
|
}, i = L(() => {
|
|
1097
1097
|
let r = "cursor-pointer", c = "";
|
|
1098
1098
|
switch (s.size) {
|
|
@@ -1113,8 +1113,8 @@ const j = new zs(), ol = {
|
|
|
1113
1113
|
break;
|
|
1114
1114
|
}
|
|
1115
1115
|
if (a?.isInGroup && l.value) {
|
|
1116
|
-
const { isFirst: d, isLast:
|
|
1117
|
-
r += " relative inline-flex items-center focus:z-10", d &&
|
|
1116
|
+
const { isFirst: d, isLast: f } = l.value;
|
|
1117
|
+
r += " relative inline-flex items-center focus:z-10", d && f ? r += ` rounded-${c}` : d ? r += ` rounded-l-${c} rounded-r-none` : f ? r += ` rounded-r-${c} rounded-l-none -ml-px` : r += " rounded-none -ml-px";
|
|
1118
1118
|
} else
|
|
1119
1119
|
r += ` shadow-xs rounded-${c}`;
|
|
1120
1120
|
switch (s.variant) {
|
|
@@ -1149,14 +1149,14 @@ const j = new zs(), ol = {
|
|
|
1149
1149
|
disabled: e.disabled,
|
|
1150
1150
|
onClick: c[0] || (c[0] = (d) => r.$emit("click"))
|
|
1151
1151
|
}, [
|
|
1152
|
-
|
|
1153
|
-
], 10,
|
|
1152
|
+
z(r.$slots, "default")
|
|
1153
|
+
], 10, da));
|
|
1154
1154
|
}
|
|
1155
|
-
},
|
|
1155
|
+
}, ft = {
|
|
1156
1156
|
__name: "SparkButtonGroup",
|
|
1157
1157
|
setup(e) {
|
|
1158
|
-
const s =
|
|
1159
|
-
return
|
|
1158
|
+
const s = D(null);
|
|
1159
|
+
return bt("buttonGroup", {
|
|
1160
1160
|
isInGroup: !0,
|
|
1161
1161
|
getButtonIndex: (l) => s.value ? Array.from(s.value.children).indexOf(l) : -1,
|
|
1162
1162
|
getButtonCount: () => s.value?.children.length || 0
|
|
@@ -1165,13 +1165,13 @@ const j = new zs(), ol = {
|
|
|
1165
1165
|
ref_key: "groupRef",
|
|
1166
1166
|
ref: s
|
|
1167
1167
|
}, [
|
|
1168
|
-
|
|
1168
|
+
z(l.$slots, "default")
|
|
1169
1169
|
], 512));
|
|
1170
1170
|
}
|
|
1171
|
-
},
|
|
1171
|
+
}, pa = { class: "divide-y divide-gray-300 rounded-lg border border-gray-300 text-gray-700 bg-gray-100" }, fa = {
|
|
1172
1172
|
key: 0,
|
|
1173
1173
|
class: "px-[30px] py-5"
|
|
1174
|
-
},
|
|
1174
|
+
}, ma = {
|
|
1175
1175
|
key: 1,
|
|
1176
1176
|
class: "p-5"
|
|
1177
1177
|
}, nl = {
|
|
@@ -1188,30 +1188,30 @@ const j = new zs(), ol = {
|
|
|
1188
1188
|
},
|
|
1189
1189
|
setup(e) {
|
|
1190
1190
|
const s = e;
|
|
1191
|
-
return (t, a) => (m(), v("div",
|
|
1192
|
-
t.$slots.header ? (m(), v("div",
|
|
1193
|
-
|
|
1194
|
-
])) :
|
|
1191
|
+
return (t, a) => (m(), v("div", pa, [
|
|
1192
|
+
t.$slots.header ? (m(), v("div", fa, [
|
|
1193
|
+
z(t.$slots, "header")
|
|
1194
|
+
])) : $("", !0),
|
|
1195
1195
|
g("div", {
|
|
1196
1196
|
class: V([s.padded ? s.paddedClass : ""])
|
|
1197
1197
|
}, [
|
|
1198
|
-
|
|
1198
|
+
z(t.$slots, "default")
|
|
1199
1199
|
], 2),
|
|
1200
|
-
t.$slots.footer ? (m(), v("div",
|
|
1201
|
-
|
|
1202
|
-
])) :
|
|
1200
|
+
t.$slots.footer ? (m(), v("div", ma, [
|
|
1201
|
+
z(t.$slots, "footer")
|
|
1202
|
+
])) : $("", !0)
|
|
1203
1203
|
]));
|
|
1204
1204
|
}
|
|
1205
|
-
},
|
|
1205
|
+
}, ga = {
|
|
1206
1206
|
key: 0,
|
|
1207
1207
|
class: "block text-sm font-medium text-gray-700 mb-2"
|
|
1208
|
-
},
|
|
1208
|
+
}, ha = { key: 0 }, ya = { class: "text-sm text-gray-600 mb-2" }, va = {
|
|
1209
1209
|
key: 1,
|
|
1210
1210
|
class: "flex items-center justify-center gap-3"
|
|
1211
|
-
},
|
|
1211
|
+
}, ba = { class: "text-gray-700" }, xa = {
|
|
1212
1212
|
key: 0,
|
|
1213
1213
|
class: "absolute inset-0 flex items-center justify-center bg-blue-50/80 rounded-md pointer-events-none"
|
|
1214
|
-
},
|
|
1214
|
+
}, wa = {
|
|
1215
1215
|
key: 3,
|
|
1216
1216
|
class: "flex justify-end mt-4"
|
|
1217
1217
|
}, ka = {
|
|
@@ -1254,7 +1254,7 @@ const j = new zs(), ol = {
|
|
|
1254
1254
|
},
|
|
1255
1255
|
icon: {
|
|
1256
1256
|
type: Object,
|
|
1257
|
-
default: () =>
|
|
1257
|
+
default: () => R.farCloudArrowUp
|
|
1258
1258
|
},
|
|
1259
1259
|
browseText: {
|
|
1260
1260
|
type: String,
|
|
@@ -1288,19 +1288,19 @@ const j = new zs(), ol = {
|
|
|
1288
1288
|
},
|
|
1289
1289
|
emits: ["upload-start", "upload-success", "upload-error", "file-selected", "file-cleared"],
|
|
1290
1290
|
setup(e, { expose: s, emit: t }) {
|
|
1291
|
-
const a = e, l = t, n =
|
|
1291
|
+
const a = e, l = t, n = be("axios"), o = D(null), i = D(!1), r = D(!1), c = D(null);
|
|
1292
1292
|
function d() {
|
|
1293
1293
|
a.disabled || i.value || (r.value = !0);
|
|
1294
1294
|
}
|
|
1295
|
-
function
|
|
1295
|
+
function f() {
|
|
1296
1296
|
r.value = !1;
|
|
1297
1297
|
}
|
|
1298
|
-
function
|
|
1298
|
+
function p(x) {
|
|
1299
1299
|
if (r.value = !1, a.disabled || i.value) return;
|
|
1300
1300
|
const y = x.dataTransfer?.files?.[0];
|
|
1301
1301
|
if (y) {
|
|
1302
|
-
if (!
|
|
1303
|
-
|
|
1302
|
+
if (!k(y)) {
|
|
1303
|
+
B.show({
|
|
1304
1304
|
type: "danger",
|
|
1305
1305
|
message: "File type not accepted."
|
|
1306
1306
|
});
|
|
@@ -1309,16 +1309,16 @@ const j = new zs(), ol = {
|
|
|
1309
1309
|
o.value = y, l("file-selected", y);
|
|
1310
1310
|
}
|
|
1311
1311
|
}
|
|
1312
|
-
function
|
|
1313
|
-
const y = a.accept.split(",").map((
|
|
1314
|
-
for (const
|
|
1315
|
-
if (
|
|
1316
|
-
if (
|
|
1317
|
-
const
|
|
1318
|
-
if (x.type.startsWith(
|
|
1319
|
-
} else if (
|
|
1320
|
-
if (x.name.toLowerCase().endsWith(
|
|
1321
|
-
} else if (x.type ===
|
|
1312
|
+
function k(x) {
|
|
1313
|
+
const y = a.accept.split(",").map((w) => w.trim());
|
|
1314
|
+
for (const w of y) {
|
|
1315
|
+
if (w === "*/*") return !0;
|
|
1316
|
+
if (w.endsWith("/*")) {
|
|
1317
|
+
const T = w.slice(0, -2);
|
|
1318
|
+
if (x.type.startsWith(T + "/")) return !0;
|
|
1319
|
+
} else if (w.startsWith(".")) {
|
|
1320
|
+
if (x.name.toLowerCase().endsWith(w.toLowerCase())) return !0;
|
|
1321
|
+
} else if (x.type === w) return !0;
|
|
1322
1322
|
}
|
|
1323
1323
|
return !1;
|
|
1324
1324
|
}
|
|
@@ -1341,16 +1341,16 @@ const j = new zs(), ol = {
|
|
|
1341
1341
|
i.value = !0, l("upload-start");
|
|
1342
1342
|
try {
|
|
1343
1343
|
const x = new FormData();
|
|
1344
|
-
x.append(a.fieldName, o.value), Object.entries(a.extraFields).forEach(([
|
|
1345
|
-
x.append(
|
|
1344
|
+
x.append(a.fieldName, o.value), Object.entries(a.extraFields).forEach(([T, F]) => {
|
|
1345
|
+
x.append(T, F);
|
|
1346
1346
|
});
|
|
1347
1347
|
const y = await n.post(a.uploadUrl, x, {
|
|
1348
1348
|
headers: { "Content-Type": "multipart/form-data" },
|
|
1349
1349
|
params: a.extraParams
|
|
1350
|
-
}),
|
|
1351
|
-
l("upload-success",
|
|
1350
|
+
}), w = a.responseParser(y);
|
|
1351
|
+
l("upload-success", w);
|
|
1352
1352
|
} catch (x) {
|
|
1353
|
-
l("upload-error", x),
|
|
1353
|
+
l("upload-error", x), B.show({
|
|
1354
1354
|
type: "danger",
|
|
1355
1355
|
message: x.response?.data?.message || "Failed to upload file."
|
|
1356
1356
|
});
|
|
@@ -1365,9 +1365,9 @@ const j = new zs(), ol = {
|
|
|
1365
1365
|
selectedFile: o,
|
|
1366
1366
|
uploading: i
|
|
1367
1367
|
}), (x, y) => {
|
|
1368
|
-
const
|
|
1368
|
+
const w = A("FormKit"), T = A("font-awesome-icon");
|
|
1369
1369
|
return m(), v("div", null, [
|
|
1370
|
-
e.label ? (m(), v("label",
|
|
1370
|
+
e.label ? (m(), v("label", ga, M(e.label), 1)) : $("", !0),
|
|
1371
1371
|
e.variant === "dashed" ? (m(), v("div", {
|
|
1372
1372
|
key: 1,
|
|
1373
1373
|
class: V(["border-2 border-dashed border-gray-300 rounded-lg p-8 text-center transition-colors", {
|
|
@@ -1376,10 +1376,10 @@ const j = new zs(), ol = {
|
|
|
1376
1376
|
}]),
|
|
1377
1377
|
onDragover: O(d, ["prevent"]),
|
|
1378
1378
|
onDragenter: O(d, ["prevent"]),
|
|
1379
|
-
onDragleave: O(
|
|
1380
|
-
onDrop: O(
|
|
1379
|
+
onDragleave: O(f, ["prevent"]),
|
|
1380
|
+
onDrop: O(p, ["prevent"])
|
|
1381
1381
|
}, [
|
|
1382
|
-
|
|
1382
|
+
S(w, {
|
|
1383
1383
|
ref_key: "formkitFileRef",
|
|
1384
1384
|
ref: c,
|
|
1385
1385
|
type: "file",
|
|
@@ -1389,36 +1389,36 @@ const j = new zs(), ol = {
|
|
|
1389
1389
|
"outer-class": "hidden",
|
|
1390
1390
|
onInput: _
|
|
1391
1391
|
}, null, 8, ["name", "accept", "disabled"]),
|
|
1392
|
-
o.value ? (m(), v("div",
|
|
1393
|
-
|
|
1394
|
-
icon:
|
|
1392
|
+
o.value ? (m(), v("div", va, [
|
|
1393
|
+
S(T, {
|
|
1394
|
+
icon: C(R).farFile,
|
|
1395
1395
|
class: "text-2xl text-gray-500"
|
|
1396
1396
|
}, null, 8, ["icon"]),
|
|
1397
|
-
g("span",
|
|
1398
|
-
|
|
1397
|
+
g("span", ba, M(o.value.name), 1),
|
|
1398
|
+
S(q, {
|
|
1399
1399
|
variant: "secondary",
|
|
1400
1400
|
size: "sm",
|
|
1401
1401
|
onClick: u
|
|
1402
1402
|
}, {
|
|
1403
1403
|
default: P(() => [
|
|
1404
|
-
|
|
1405
|
-
icon:
|
|
1404
|
+
S(T, {
|
|
1405
|
+
icon: C(R).farXmark
|
|
1406
1406
|
}, null, 8, ["icon"])
|
|
1407
1407
|
]),
|
|
1408
1408
|
_: 1
|
|
1409
1409
|
})
|
|
1410
|
-
])) : (m(), v("div",
|
|
1411
|
-
|
|
1410
|
+
])) : (m(), v("div", ha, [
|
|
1411
|
+
S(T, {
|
|
1412
1412
|
icon: e.icon,
|
|
1413
1413
|
class: "text-4xl text-gray-400 mb-3"
|
|
1414
1414
|
}, null, 8, ["icon"]),
|
|
1415
|
-
g("p",
|
|
1416
|
-
|
|
1415
|
+
g("p", ya, M(e.dropText), 1),
|
|
1416
|
+
S(q, {
|
|
1417
1417
|
variant: "secondary",
|
|
1418
1418
|
onClick: b
|
|
1419
1419
|
}, {
|
|
1420
1420
|
default: P(() => [
|
|
1421
|
-
|
|
1421
|
+
I(M(e.browseText), 1)
|
|
1422
1422
|
]),
|
|
1423
1423
|
_: 1
|
|
1424
1424
|
})
|
|
@@ -1430,51 +1430,51 @@ const j = new zs(), ol = {
|
|
|
1430
1430
|
}]),
|
|
1431
1431
|
onDragover: O(d, ["prevent"]),
|
|
1432
1432
|
onDragenter: O(d, ["prevent"]),
|
|
1433
|
-
onDragleave: O(
|
|
1434
|
-
onDrop: O(
|
|
1433
|
+
onDragleave: O(f, ["prevent"]),
|
|
1434
|
+
onDrop: O(p, ["prevent"])
|
|
1435
1435
|
}, [
|
|
1436
|
-
|
|
1436
|
+
S(w, {
|
|
1437
1437
|
type: "file",
|
|
1438
1438
|
name: e.name,
|
|
1439
1439
|
accept: e.accept,
|
|
1440
1440
|
disabled: e.disabled || i.value,
|
|
1441
1441
|
onInput: _
|
|
1442
1442
|
}, null, 8, ["name", "accept", "disabled"]),
|
|
1443
|
-
r.value ? (m(), v("div",
|
|
1443
|
+
r.value ? (m(), v("div", xa, [...y[0] || (y[0] = [
|
|
1444
1444
|
g("span", { class: "text-sm text-blue-600 font-medium" }, "Drop file here", -1)
|
|
1445
|
-
])])) :
|
|
1445
|
+
])])) : $("", !0)
|
|
1446
1446
|
], 34)),
|
|
1447
|
-
e.showUploadButton ? (m(), v("div",
|
|
1448
|
-
|
|
1447
|
+
e.showUploadButton ? (m(), v("div", wa, [
|
|
1448
|
+
S(q, {
|
|
1449
1449
|
size: "lg",
|
|
1450
1450
|
disabled: !o.value || i.value,
|
|
1451
1451
|
onClick: h
|
|
1452
1452
|
}, {
|
|
1453
1453
|
default: P(() => [
|
|
1454
|
-
i.value ? (m(), H(
|
|
1454
|
+
i.value ? (m(), H(T, {
|
|
1455
1455
|
key: 0,
|
|
1456
|
-
icon:
|
|
1456
|
+
icon: C(R).farSpinner,
|
|
1457
1457
|
class: "mr-2 animate-spin"
|
|
1458
|
-
}, null, 8, ["icon"])) :
|
|
1459
|
-
|
|
1458
|
+
}, null, 8, ["icon"])) : $("", !0),
|
|
1459
|
+
I(" " + M(i.value ? e.uploadingText : e.uploadText), 1)
|
|
1460
1460
|
]),
|
|
1461
1461
|
_: 1
|
|
1462
1462
|
}, 8, ["disabled"])
|
|
1463
|
-
])) :
|
|
1464
|
-
i.value && !e.showUploadButton ? (m(), v("p", ka, M(e.uploadingText), 1)) :
|
|
1463
|
+
])) : $("", !0),
|
|
1464
|
+
i.value && !e.showUploadButton ? (m(), v("p", ka, M(e.uploadingText), 1)) : $("", !0)
|
|
1465
1465
|
]);
|
|
1466
1466
|
};
|
|
1467
1467
|
}
|
|
1468
|
-
},
|
|
1468
|
+
}, _a = {
|
|
1469
1469
|
key: 0,
|
|
1470
1470
|
class: "block text-sm font-medium text-gray-700 mb-2"
|
|
1471
|
-
},
|
|
1471
|
+
}, Sa = {
|
|
1472
1472
|
key: 1,
|
|
1473
1473
|
class: "mb-2 relative inline-block"
|
|
1474
|
-
}, Ca = ["href"],
|
|
1474
|
+
}, Ca = ["href"], Ta = ["src", "alt"], $a = ["disabled"], La = {
|
|
1475
1475
|
key: 0,
|
|
1476
1476
|
class: "absolute inset-0 flex items-center justify-center bg-blue-50/80 rounded-md pointer-events-none"
|
|
1477
|
-
},
|
|
1477
|
+
}, Pa = {
|
|
1478
1478
|
key: 3,
|
|
1479
1479
|
class: "text-sm text-gray-500 mt-1"
|
|
1480
1480
|
}, il = {
|
|
@@ -1523,7 +1523,7 @@ const j = new zs(), ol = {
|
|
|
1523
1523
|
},
|
|
1524
1524
|
emits: ["update:modelValue", "upload-start", "upload-success", "upload-error"],
|
|
1525
1525
|
setup(e, { emit: s }) {
|
|
1526
|
-
const t = e, a = s, l =
|
|
1526
|
+
const t = e, a = s, l = be("axios"), n = D(!1), o = D(!1);
|
|
1527
1527
|
function i() {
|
|
1528
1528
|
a("update:modelValue", "");
|
|
1529
1529
|
}
|
|
@@ -1537,17 +1537,17 @@ const j = new zs(), ol = {
|
|
|
1537
1537
|
if (o.value = !1, t.disabled || n.value) return;
|
|
1538
1538
|
const b = _.dataTransfer?.files?.[0];
|
|
1539
1539
|
if (b) {
|
|
1540
|
-
if (!
|
|
1541
|
-
|
|
1540
|
+
if (!f(b)) {
|
|
1541
|
+
B.show({
|
|
1542
1542
|
type: "danger",
|
|
1543
1543
|
message: "File type not accepted."
|
|
1544
1544
|
});
|
|
1545
1545
|
return;
|
|
1546
1546
|
}
|
|
1547
|
-
|
|
1547
|
+
k(b);
|
|
1548
1548
|
}
|
|
1549
1549
|
}
|
|
1550
|
-
function
|
|
1550
|
+
function f(_) {
|
|
1551
1551
|
const b = t.accept.split(",").map((u) => u.trim());
|
|
1552
1552
|
for (const u of b) {
|
|
1553
1553
|
if (u === "*/*") return !0;
|
|
@@ -1560,12 +1560,12 @@ const j = new zs(), ol = {
|
|
|
1560
1560
|
}
|
|
1561
1561
|
return !1;
|
|
1562
1562
|
}
|
|
1563
|
-
function
|
|
1563
|
+
function p(_) {
|
|
1564
1564
|
if (!_ || _.length === 0) return;
|
|
1565
1565
|
const b = _[0].file;
|
|
1566
|
-
b &&
|
|
1566
|
+
b && k(b);
|
|
1567
1567
|
}
|
|
1568
|
-
async function
|
|
1568
|
+
async function k(_) {
|
|
1569
1569
|
n.value = !0, a("upload-start");
|
|
1570
1570
|
try {
|
|
1571
1571
|
const b = new FormData();
|
|
@@ -1575,12 +1575,12 @@ const j = new zs(), ol = {
|
|
|
1575
1575
|
const u = await l.post(t.uploadUrl, b, {
|
|
1576
1576
|
headers: { "Content-Type": "multipart/form-data" }
|
|
1577
1577
|
}), h = t.responseParser(u);
|
|
1578
|
-
a("update:modelValue", h), a("upload-success", u),
|
|
1578
|
+
a("update:modelValue", h), a("upload-success", u), B.show({
|
|
1579
1579
|
type: "success",
|
|
1580
1580
|
message: "Image uploaded!"
|
|
1581
1581
|
});
|
|
1582
1582
|
} catch (b) {
|
|
1583
|
-
a("upload-error", b),
|
|
1583
|
+
a("upload-error", b), B.show({
|
|
1584
1584
|
type: "danger",
|
|
1585
1585
|
message: b.response?.data?.message || "Failed to upload image."
|
|
1586
1586
|
});
|
|
@@ -1589,10 +1589,10 @@ const j = new zs(), ol = {
|
|
|
1589
1589
|
}
|
|
1590
1590
|
}
|
|
1591
1591
|
return (_, b) => {
|
|
1592
|
-
const u =
|
|
1592
|
+
const u = A("font-awesome-icon"), h = A("FormKit");
|
|
1593
1593
|
return m(), v("div", null, [
|
|
1594
|
-
e.label ? (m(), v("label",
|
|
1595
|
-
e.modelValue ? (m(), v("div",
|
|
1594
|
+
e.label ? (m(), v("label", _a, M(e.label), 1)) : $("", !0),
|
|
1595
|
+
e.modelValue ? (m(), v("div", Sa, [
|
|
1596
1596
|
g("a", {
|
|
1597
1597
|
href: e.modelValue,
|
|
1598
1598
|
target: "_blank",
|
|
@@ -1602,7 +1602,7 @@ const j = new zs(), ol = {
|
|
|
1602
1602
|
src: e.modelValue,
|
|
1603
1603
|
alt: e.label || "Image preview",
|
|
1604
1604
|
class: V([e.height, "w-auto object-contain border border-gray-300 rounded-md cursor-pointer hover:opacity-80 transition-opacity"])
|
|
1605
|
-
}, null, 10,
|
|
1605
|
+
}, null, 10, Ta)
|
|
1606
1606
|
], 8, Ca),
|
|
1607
1607
|
g("button", {
|
|
1608
1608
|
type: "button",
|
|
@@ -1610,13 +1610,13 @@ const j = new zs(), ol = {
|
|
|
1610
1610
|
disabled: e.disabled,
|
|
1611
1611
|
onClick: i
|
|
1612
1612
|
}, [
|
|
1613
|
-
|
|
1614
|
-
icon:
|
|
1613
|
+
S(u, {
|
|
1614
|
+
icon: C(R).farXmark,
|
|
1615
1615
|
class: "text-xs"
|
|
1616
1616
|
}, null, 8, ["icon"])
|
|
1617
|
-
], 8,
|
|
1618
|
-
])) :
|
|
1619
|
-
e.modelValue ?
|
|
1617
|
+
], 8, $a)
|
|
1618
|
+
])) : $("", !0),
|
|
1619
|
+
e.modelValue ? $("", !0) : (m(), v("div", {
|
|
1620
1620
|
key: 2,
|
|
1621
1621
|
class: V(["relative rounded-md transition-colors", {
|
|
1622
1622
|
"ring-2 ring-blue-500 ring-offset-2 bg-blue-50": o.value
|
|
@@ -1626,25 +1626,25 @@ const j = new zs(), ol = {
|
|
|
1626
1626
|
onDragleave: O(c, ["prevent"]),
|
|
1627
1627
|
onDrop: O(d, ["prevent"])
|
|
1628
1628
|
}, [
|
|
1629
|
-
|
|
1629
|
+
S(h, {
|
|
1630
1630
|
type: "file",
|
|
1631
1631
|
name: e.name,
|
|
1632
1632
|
accept: e.accept,
|
|
1633
1633
|
disabled: e.disabled || n.value,
|
|
1634
|
-
onInput:
|
|
1634
|
+
onInput: p
|
|
1635
1635
|
}, null, 8, ["name", "accept", "disabled"]),
|
|
1636
|
-
o.value ? (m(), v("div",
|
|
1636
|
+
o.value ? (m(), v("div", La, [...b[0] || (b[0] = [
|
|
1637
1637
|
g("span", { class: "text-sm text-blue-600 font-medium" }, "Drop image here", -1)
|
|
1638
|
-
])])) :
|
|
1638
|
+
])])) : $("", !0)
|
|
1639
1639
|
], 34)),
|
|
1640
|
-
n.value ? (m(), v("p",
|
|
1640
|
+
n.value ? (m(), v("p", Pa, "Uploading...")) : $("", !0)
|
|
1641
1641
|
]);
|
|
1642
1642
|
};
|
|
1643
1643
|
}
|
|
1644
|
-
},
|
|
1644
|
+
}, Ma = { class: "px-4 pt-5 pb-4 sm:p-6" }, Va = {
|
|
1645
1645
|
key: 0,
|
|
1646
1646
|
class: "text-lg font-medium text-gray-900"
|
|
1647
|
-
},
|
|
1647
|
+
}, Ha = {
|
|
1648
1648
|
__name: "SparkModalDialog",
|
|
1649
1649
|
props: {
|
|
1650
1650
|
title: {
|
|
@@ -1722,36 +1722,36 @@ const j = new zs(), ol = {
|
|
|
1722
1722
|
danger: "text-red-400"
|
|
1723
1723
|
})[s.type]);
|
|
1724
1724
|
return (r, c) => {
|
|
1725
|
-
const d =
|
|
1726
|
-
return m(), v("div",
|
|
1725
|
+
const d = A("font-awesome-icon");
|
|
1726
|
+
return m(), v("div", Ma, [
|
|
1727
1727
|
n.value ? (m(), v("div", {
|
|
1728
1728
|
key: 0,
|
|
1729
1729
|
class: V(["mx-auto flex size-12 items-center justify-center rounded-full", o.value])
|
|
1730
1730
|
}, [
|
|
1731
|
-
|
|
1732
|
-
icon:
|
|
1731
|
+
S(d, {
|
|
1732
|
+
icon: C(R)[n.value],
|
|
1733
1733
|
class: V(["h-5 w-5", i.value])
|
|
1734
1734
|
}, null, 8, ["icon", "class"])
|
|
1735
|
-
], 2)) :
|
|
1735
|
+
], 2)) : $("", !0),
|
|
1736
1736
|
g("div", {
|
|
1737
1737
|
class: V(["text-center", { "mt-3 sm:mt-5": n.value }])
|
|
1738
1738
|
}, [
|
|
1739
|
-
e.title ? (m(), v("h3",
|
|
1739
|
+
e.title ? (m(), v("h3", Va, M(e.title), 1)) : $("", !0),
|
|
1740
1740
|
e.message ? (m(), v("div", {
|
|
1741
1741
|
key: 1,
|
|
1742
1742
|
class: V([{ "mt-2": e.title }, "text-sm text-gray-500"])
|
|
1743
|
-
}, M(e.message), 3)) :
|
|
1743
|
+
}, M(e.message), 3)) : $("", !0)
|
|
1744
1744
|
], 2),
|
|
1745
1745
|
g("div", {
|
|
1746
1746
|
class: V(["mt-5 sm:mt-6", a.value])
|
|
1747
1747
|
}, [
|
|
1748
|
-
(m(!0), v(E, null,
|
|
1749
|
-
key:
|
|
1750
|
-
variant:
|
|
1751
|
-
onClick: (
|
|
1748
|
+
(m(!0), v(E, null, N(t.value, (f, p) => (m(), H(C(q), {
|
|
1749
|
+
key: p,
|
|
1750
|
+
variant: f.variant,
|
|
1751
|
+
onClick: (k) => r.$emit(f.event, f)
|
|
1752
1752
|
}, {
|
|
1753
1753
|
default: P(() => [
|
|
1754
|
-
|
|
1754
|
+
I(M(f.text), 1)
|
|
1755
1755
|
]),
|
|
1756
1756
|
_: 2
|
|
1757
1757
|
}, 1032, ["variant", "onClick"]))), 128))
|
|
@@ -1760,9 +1760,9 @@ const j = new zs(), ol = {
|
|
|
1760
1760
|
};
|
|
1761
1761
|
}
|
|
1762
1762
|
};
|
|
1763
|
-
class
|
|
1763
|
+
class Fa {
|
|
1764
1764
|
constructor() {
|
|
1765
|
-
this.state =
|
|
1765
|
+
this.state = G({
|
|
1766
1766
|
isVisible: !1,
|
|
1767
1767
|
content: null,
|
|
1768
1768
|
props: {},
|
|
@@ -1797,7 +1797,7 @@ class Ha {
|
|
|
1797
1797
|
confirmVariant: r = "primary"
|
|
1798
1798
|
} = s;
|
|
1799
1799
|
this.show(
|
|
1800
|
-
|
|
1800
|
+
Ha,
|
|
1801
1801
|
{
|
|
1802
1802
|
title: a,
|
|
1803
1803
|
message: l,
|
|
@@ -1818,20 +1818,20 @@ class Ha {
|
|
|
1818
1818
|
);
|
|
1819
1819
|
});
|
|
1820
1820
|
}
|
|
1821
|
-
const J = new
|
|
1821
|
+
const J = new Fa(), Da = { class: "fixed inset-0 z-10 w-screen overflow-y-auto" }, Ra = { class: "flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0" }, Aa = {
|
|
1822
1822
|
__name: "SparkModalContainer",
|
|
1823
1823
|
setup(e) {
|
|
1824
|
-
return (s, t) => (m(), H(
|
|
1824
|
+
return (s, t) => (m(), H(C(rt), {
|
|
1825
1825
|
as: "template",
|
|
1826
|
-
show:
|
|
1826
|
+
show: C(J).state.isVisible
|
|
1827
1827
|
}, {
|
|
1828
1828
|
default: P(() => [
|
|
1829
|
-
C(
|
|
1829
|
+
S(C(nt), {
|
|
1830
1830
|
class: "relative z-1000",
|
|
1831
|
-
onClose:
|
|
1831
|
+
onClose: C(J).hide
|
|
1832
1832
|
}, {
|
|
1833
1833
|
default: P(() => [
|
|
1834
|
-
C(
|
|
1834
|
+
S(C(ye), {
|
|
1835
1835
|
as: "template",
|
|
1836
1836
|
enter: "ease-out duration-300",
|
|
1837
1837
|
"enter-from": "opacity-0",
|
|
@@ -1845,9 +1845,9 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1845
1845
|
])]),
|
|
1846
1846
|
_: 1
|
|
1847
1847
|
}),
|
|
1848
|
-
g("div",
|
|
1849
|
-
g("div",
|
|
1850
|
-
C(
|
|
1848
|
+
g("div", Da, [
|
|
1849
|
+
g("div", Ra, [
|
|
1850
|
+
S(C(ye), {
|
|
1851
1851
|
as: "template",
|
|
1852
1852
|
enter: "ease-out duration-300",
|
|
1853
1853
|
"enter-from": "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",
|
|
@@ -1857,9 +1857,9 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1857
1857
|
"leave-to": "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
|
|
1858
1858
|
}, {
|
|
1859
1859
|
default: P(() => [
|
|
1860
|
-
C(
|
|
1860
|
+
S(C(lt), { 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" }, {
|
|
1861
1861
|
default: P(() => [
|
|
1862
|
-
(m(), H(
|
|
1862
|
+
(m(), H(W(C(J).state.content), K(C(J).state.props, Be(C(J).state.eventHandlers)), null, 16))
|
|
1863
1863
|
]),
|
|
1864
1864
|
_: 1
|
|
1865
1865
|
})
|
|
@@ -1875,7 +1875,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1875
1875
|
_: 1
|
|
1876
1876
|
}, 8, ["show"]));
|
|
1877
1877
|
}
|
|
1878
|
-
}, Ea = { class: "fixed inset-0 flex" },
|
|
1878
|
+
}, Ea = { class: "fixed inset-0 flex" }, Ve = {
|
|
1879
1879
|
__name: "SparkOverlay",
|
|
1880
1880
|
props: {
|
|
1881
1881
|
position: {
|
|
@@ -1890,7 +1890,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1890
1890
|
},
|
|
1891
1891
|
emits: ["close"],
|
|
1892
1892
|
setup(e, { emit: s }) {
|
|
1893
|
-
const t =
|
|
1893
|
+
const t = D(null), a = {
|
|
1894
1894
|
xs: "w-[250px]",
|
|
1895
1895
|
sm: "w-[300px]",
|
|
1896
1896
|
md: "w-[450px]",
|
|
@@ -1899,18 +1899,18 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1899
1899
|
}, l = e, n = s, o = L(() => a[l.overlayInstance.state.size] || a.md), i = () => {
|
|
1900
1900
|
l.overlayInstance.close(), n("close");
|
|
1901
1901
|
};
|
|
1902
|
-
return (r, c) => (m(), H(
|
|
1902
|
+
return (r, c) => (m(), H(C(rt), {
|
|
1903
1903
|
show: e.overlayInstance.state.isVisible,
|
|
1904
1904
|
as: "template"
|
|
1905
1905
|
}, {
|
|
1906
1906
|
default: P(() => [
|
|
1907
|
-
C(
|
|
1907
|
+
S(C(nt), {
|
|
1908
1908
|
initialFocus: t.value,
|
|
1909
1909
|
class: "relative z-1000",
|
|
1910
1910
|
onClose: i
|
|
1911
1911
|
}, {
|
|
1912
1912
|
default: P(() => [
|
|
1913
|
-
C(
|
|
1913
|
+
S(C(ye), {
|
|
1914
1914
|
as: "template",
|
|
1915
1915
|
enter: "transition-opacity ease-linear duration-150",
|
|
1916
1916
|
"enter-from": "opacity-0",
|
|
@@ -1925,7 +1925,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1925
1925
|
_: 1
|
|
1926
1926
|
}),
|
|
1927
1927
|
g("div", Ea, [
|
|
1928
|
-
C(
|
|
1928
|
+
S(C(ye), {
|
|
1929
1929
|
as: "template",
|
|
1930
1930
|
enter: "transition ease-in-out duration-150 transform",
|
|
1931
1931
|
"enter-from": e.position === "left" ? "-translate-x-full opacity-0" : "translate-x-full opacity-0",
|
|
@@ -1935,7 +1935,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1935
1935
|
"leave-to": e.position === "left" ? "-translate-x-full opacity-0" : "translate-x-full opacity-0"
|
|
1936
1936
|
}, {
|
|
1937
1937
|
default: P(() => [
|
|
1938
|
-
C(
|
|
1938
|
+
S(C(lt), {
|
|
1939
1939
|
ref_key: "panelRef",
|
|
1940
1940
|
ref: t,
|
|
1941
1941
|
class: V([
|
|
@@ -1945,7 +1945,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1945
1945
|
])
|
|
1946
1946
|
}, {
|
|
1947
1947
|
default: P(() => [
|
|
1948
|
-
(m(), H(
|
|
1948
|
+
(m(), H(W(e.overlayInstance.state.content), K(e.overlayInstance.state.props, Be(e.overlayInstance.state.eventHandlers)), null, 16))
|
|
1949
1949
|
]),
|
|
1950
1950
|
_: 1
|
|
1951
1951
|
}, 8, ["class"])
|
|
@@ -1960,7 +1960,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
1960
1960
|
_: 1
|
|
1961
1961
|
}, 8, ["show"]));
|
|
1962
1962
|
}
|
|
1963
|
-
},
|
|
1963
|
+
}, Ia = ["disabled", "onClick"], cl = {
|
|
1964
1964
|
__name: "SparkSubNav",
|
|
1965
1965
|
props: {
|
|
1966
1966
|
/**
|
|
@@ -2024,18 +2024,18 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2024
2024
|
// SparkButtonGroup handles its own styling
|
|
2025
2025
|
custom: ""
|
|
2026
2026
|
}[t.layout]]), d = L(() => t.compact ? "text-sm" : "");
|
|
2027
|
-
function
|
|
2027
|
+
function f(b) {
|
|
2028
2028
|
const u = o(b), h = i(b), x = [
|
|
2029
2029
|
"inline-flex items-center transition-colors cursor-pointer",
|
|
2030
2030
|
"focus:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 focus-visible:ring-offset-1"
|
|
2031
2031
|
];
|
|
2032
|
-
return h && x.push("opacity-50 cursor-not-allowed"), t.layout === "tabs" ? x.push(...
|
|
2032
|
+
return h && x.push("opacity-50 cursor-not-allowed"), t.layout === "tabs" ? x.push(...p(u, h)) : t.layout === "vertical" && x.push(...k(u, h)), x;
|
|
2033
2033
|
}
|
|
2034
|
-
function
|
|
2034
|
+
function p(b, u) {
|
|
2035
2035
|
const h = ["border-b-2 -mb-px rounded-t font-medium"], x = t.compact ? "text-sm px-3 py-1.5" : "text-sm px-8 py-4";
|
|
2036
2036
|
return h.push(x), b ? h.push("border-primary-600 text-primary-600") : u ? h.push("border-transparent text-gray-400") : h.push("border-transparent text-gray-600 hover:text-gray-900 hover:border-gray-300"), h;
|
|
2037
2037
|
}
|
|
2038
|
-
function
|
|
2038
|
+
function k(b, u) {
|
|
2039
2039
|
const h = ["font-medium text-sm py-1"];
|
|
2040
2040
|
return b ? h.push("text-primary-600") : u ? h.push("text-gray-400") : h.push("text-gray-600 hover:text-gray-900"), h;
|
|
2041
2041
|
}
|
|
@@ -2052,19 +2052,19 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2052
2052
|
return (b, u) => (m(), v("nav", {
|
|
2053
2053
|
class: V(c.value)
|
|
2054
2054
|
}, [
|
|
2055
|
-
t.layout === "custom" ?
|
|
2055
|
+
t.layout === "custom" ? z(b.$slots, "default", {
|
|
2056
2056
|
key: 0,
|
|
2057
2057
|
items: l.value,
|
|
2058
2058
|
activeId: n.value,
|
|
2059
2059
|
isActive: o,
|
|
2060
2060
|
isDisabled: i,
|
|
2061
2061
|
navigate: r
|
|
2062
|
-
}) : t.layout === "horizontal" ? (m(), H(
|
|
2062
|
+
}) : t.layout === "horizontal" ? (m(), H(ft, {
|
|
2063
2063
|
key: 1,
|
|
2064
2064
|
class: "isolate"
|
|
2065
2065
|
}, {
|
|
2066
2066
|
default: P(() => [
|
|
2067
|
-
(m(!0), v(E, null,
|
|
2067
|
+
(m(!0), v(E, null, N(l.value, (h) => (m(), H(q, {
|
|
2068
2068
|
key: h.id,
|
|
2069
2069
|
size: "xl",
|
|
2070
2070
|
variant: o(h) ? "primary" : "secondary",
|
|
@@ -2072,43 +2072,43 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2072
2072
|
onClick: (x) => r(h)
|
|
2073
2073
|
}, {
|
|
2074
2074
|
default: P(() => [
|
|
2075
|
-
h.icon ? (m(), H(
|
|
2075
|
+
h.icon ? (m(), H(C(he), {
|
|
2076
2076
|
key: 0,
|
|
2077
|
-
icon:
|
|
2077
|
+
icon: C(R)[h.icon],
|
|
2078
2078
|
class: "mr-1.5 size-4"
|
|
2079
|
-
}, null, 8, ["icon"])) :
|
|
2080
|
-
|
|
2079
|
+
}, null, 8, ["icon"])) : $("", !0),
|
|
2080
|
+
I(" " + M(h.label) + " ", 1),
|
|
2081
2081
|
h.badge != null ? (m(), v("span", {
|
|
2082
2082
|
key: 1,
|
|
2083
2083
|
class: V(_(h))
|
|
2084
|
-
}, M(h.badge), 3)) :
|
|
2084
|
+
}, M(h.badge), 3)) : $("", !0)
|
|
2085
2085
|
]),
|
|
2086
2086
|
_: 2
|
|
2087
2087
|
}, 1032, ["variant", "disabled", "onClick"]))), 128))
|
|
2088
2088
|
]),
|
|
2089
2089
|
_: 1
|
|
2090
|
-
})) : (m(!0), v(E, { key: 2 },
|
|
2090
|
+
})) : (m(!0), v(E, { key: 2 }, N(l.value, (h) => (m(), v("button", {
|
|
2091
2091
|
key: h.id,
|
|
2092
|
-
class: V(
|
|
2092
|
+
class: V(f(h)),
|
|
2093
2093
|
disabled: i(h) || void 0,
|
|
2094
2094
|
onClick: (x) => r(h)
|
|
2095
2095
|
}, [
|
|
2096
|
-
o(h) && t.layout === "vertical" ? (m(), H(
|
|
2096
|
+
o(h) && t.layout === "vertical" ? (m(), H(C(he), {
|
|
2097
2097
|
key: 0,
|
|
2098
|
-
icon:
|
|
2098
|
+
icon: C(R).farCircleCheck,
|
|
2099
2099
|
class: "mr-2 size-4"
|
|
2100
|
-
}, null, 8, ["icon"])) :
|
|
2101
|
-
h.icon && !(o(h) && t.layout === "vertical") ? (m(), H(
|
|
2100
|
+
}, null, 8, ["icon"])) : $("", !0),
|
|
2101
|
+
h.icon && !(o(h) && t.layout === "vertical") ? (m(), H(C(he), {
|
|
2102
2102
|
key: 1,
|
|
2103
|
-
icon:
|
|
2103
|
+
icon: C(R)[h.icon],
|
|
2104
2104
|
class: V(["mr-2", d.value])
|
|
2105
|
-
}, null, 8, ["icon", "class"])) :
|
|
2105
|
+
}, null, 8, ["icon", "class"])) : $("", !0),
|
|
2106
2106
|
g("span", null, M(h.label), 1),
|
|
2107
2107
|
h.badge != null ? (m(), v("span", {
|
|
2108
2108
|
key: 2,
|
|
2109
2109
|
class: V(_(h))
|
|
2110
|
-
}, M(h.badge), 3)) :
|
|
2111
|
-
], 10,
|
|
2110
|
+
}, M(h.badge), 3)) : $("", !0)
|
|
2111
|
+
], 10, Ia))), 128))
|
|
2112
2112
|
], 2));
|
|
2113
2113
|
}
|
|
2114
2114
|
}, Oa = (e) => {
|
|
@@ -2117,12 +2117,12 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2117
2117
|
e = s[s.length - 1];
|
|
2118
2118
|
}
|
|
2119
2119
|
return e.replace(/_/g, " ");
|
|
2120
|
-
},
|
|
2120
|
+
}, Ba = (e, s, t) => {
|
|
2121
2121
|
const a = s.querySelector(".relative");
|
|
2122
2122
|
if (!a || a.querySelector(".spark-table-head-sorting"))
|
|
2123
2123
|
return;
|
|
2124
2124
|
const l = document.createElement("span");
|
|
2125
|
-
l.classList.add("spark-table-head-sorting"), l.innerHTML =
|
|
2125
|
+
l.classList.add("spark-table-head-sorting"), l.innerHTML = se({ prefix: "fad", iconName: "sort" }).html + se({ prefix: "fad", iconName: "sort-up" }).html + se({ prefix: "fad", iconName: "sort-down" }).html, a.appendChild(l), a.addEventListener("click", async () => {
|
|
2126
2126
|
const n = t.params.orderBy, o = t.params.sortedBy;
|
|
2127
2127
|
return n === e && o === "asc" ? (a.classList.remove("asc"), a.classList.add("desc"), t.methods.applyParams({
|
|
2128
2128
|
orderBy: e,
|
|
@@ -2132,12 +2132,12 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2132
2132
|
sortedBy: "asc"
|
|
2133
2133
|
}));
|
|
2134
2134
|
});
|
|
2135
|
-
},
|
|
2135
|
+
}, ja = (e, s, t) => {
|
|
2136
2136
|
if (s.querySelector(".spark-table-head-filter"))
|
|
2137
2137
|
return;
|
|
2138
2138
|
const a = document.createElement("div"), l = document.createElement("input");
|
|
2139
2139
|
l.type = "text", l.placeholder = "Filter...", a.className = "spark-table-head-filter", a.appendChild(l);
|
|
2140
|
-
const n =
|
|
2140
|
+
const n = it(async (o, i) => {
|
|
2141
2141
|
const r = i.target.value, c = `filter[${o}]`;
|
|
2142
2142
|
if (r)
|
|
2143
2143
|
return t.params[c] && t.params[c] === r ? void 0 : t.methods.applyParams({
|
|
@@ -2147,19 +2147,19 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2147
2147
|
await t.methods.removeParam(c);
|
|
2148
2148
|
}, 200);
|
|
2149
2149
|
l.addEventListener("keyup", (o) => n(e, o)), s.appendChild(a);
|
|
2150
|
-
},
|
|
2150
|
+
}, za = (e, s, t) => {
|
|
2151
2151
|
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");
|
|
2152
2152
|
const l = e.querySelector(".colHeader");
|
|
2153
2153
|
l.classList.add("spark-table-head-title"), l.innerHTML = Oa(s);
|
|
2154
|
-
},
|
|
2154
|
+
}, Na = (e, s, t) => {
|
|
2155
2155
|
if (typeof e != "number")
|
|
2156
2156
|
return e;
|
|
2157
2157
|
if (e < 0)
|
|
2158
2158
|
return;
|
|
2159
2159
|
let a = 2;
|
|
2160
2160
|
const l = t.methods.colToProp(e), n = t.methods.getSettingsForProp(l);
|
|
2161
|
-
s.childElementCount === 1 && ((!n || !n.columnSort) && a--, (!n || !n.columnFilter) && a--, n && n.columnSort &&
|
|
2162
|
-
},
|
|
2161
|
+
s.childElementCount === 1 && ((!n || !n.columnSort) && a--, (!n || !n.columnFilter) && a--, n && n.columnSort && Ba(l, s, t), n && n.columnFilter && ja(l, s, t)), (s.childElementCount === a || a === 0) && za(s, l, n);
|
|
2162
|
+
}, Ua = (e) => {
|
|
2163
2163
|
if (!e.hotInstance || !e.hotInstance.rootElement)
|
|
2164
2164
|
return;
|
|
2165
2165
|
const s = e.params.orderBy, t = e.params.sortedBy, a = e.hotInstance.rootElement.querySelectorAll("thead th.can-sort .relative");
|
|
@@ -2169,41 +2169,41 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2169
2169
|
const n = l.closest("th"), o = Array.from(n.parentElement.children).indexOf(n);
|
|
2170
2170
|
e.methods.colToProp(o) === s && l.classList.add(t);
|
|
2171
2171
|
});
|
|
2172
|
-
},
|
|
2172
|
+
}, qa = (e) => (s, t, a, l, n, o, i) => {
|
|
2173
2173
|
t.innerHTML = "", t.classList.add("spark-table-cell-actions");
|
|
2174
2174
|
const c = (i.rendererConfig || {}).actions || [];
|
|
2175
2175
|
if (c.length === 0)
|
|
2176
2176
|
return;
|
|
2177
|
-
const d = s.getSourceDataAtRow(s.toPhysicalRow(a)),
|
|
2178
|
-
|
|
2179
|
-
if (
|
|
2177
|
+
const d = s.getSourceDataAtRow(s.toPhysicalRow(a)), f = document.createElement("div");
|
|
2178
|
+
f.classList.add("flex", "items-center", "gap-2"), c.forEach((p) => {
|
|
2179
|
+
if (p.condition && typeof p.condition == "function" && !p.condition(d))
|
|
2180
2180
|
return;
|
|
2181
|
-
const
|
|
2182
|
-
if (
|
|
2181
|
+
const k = document.createElement("button");
|
|
2182
|
+
if (k.type = "button", k.classList.add("spark-table-action-button"), p.icon) {
|
|
2183
2183
|
const _ = document.createElement("span");
|
|
2184
|
-
_.innerHTML =
|
|
2184
|
+
_.innerHTML = se({ prefix: "far", iconName: p.icon }).html, _.classList.add("size-4"), k.appendChild(_);
|
|
2185
2185
|
}
|
|
2186
|
-
if (
|
|
2186
|
+
if (p.label) {
|
|
2187
2187
|
const _ = document.createElement("span");
|
|
2188
|
-
_.textContent =
|
|
2188
|
+
_.textContent = p.label, k.appendChild(_);
|
|
2189
2189
|
}
|
|
2190
|
-
|
|
2191
|
-
if (_.preventDefault(), _.stopPropagation(),
|
|
2192
|
-
const b = typeof
|
|
2190
|
+
k.addEventListener("click", async (_) => {
|
|
2191
|
+
if (_.preventDefault(), _.stopPropagation(), p.confirm) {
|
|
2192
|
+
const b = typeof p.confirm == "string" ? p.confirm : `Are you sure you want to ${p.label?.toLowerCase() || "perform this action"}?`;
|
|
2193
2193
|
if (!await J.confirm({
|
|
2194
|
-
title:
|
|
2194
|
+
title: p.confirmTitle,
|
|
2195
2195
|
message: b,
|
|
2196
|
-
type:
|
|
2197
|
-
confirmText:
|
|
2198
|
-
cancelText:
|
|
2199
|
-
confirmVariant:
|
|
2196
|
+
type: p.confirmType,
|
|
2197
|
+
confirmText: p.confirmText,
|
|
2198
|
+
cancelText: p.cancelText,
|
|
2199
|
+
confirmVariant: p.confirmVariant
|
|
2200
2200
|
}))
|
|
2201
2201
|
return;
|
|
2202
2202
|
}
|
|
2203
|
-
|
|
2204
|
-
}),
|
|
2205
|
-
}), t.appendChild(
|
|
2206
|
-
},
|
|
2203
|
+
p.event && e.methods.fireEvent(p.event, d), p.handler && typeof p.handler == "function" && p.handler(d);
|
|
2204
|
+
}), f.appendChild(k);
|
|
2205
|
+
}), t.appendChild(f);
|
|
2206
|
+
}, He = {
|
|
2207
2207
|
green: "bg-green-100 text-green-800",
|
|
2208
2208
|
red: "bg-red-100 text-red-800",
|
|
2209
2209
|
yellow: "bg-yellow-100 text-yellow-800",
|
|
@@ -2212,11 +2212,11 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2212
2212
|
purple: "bg-purple-100 text-purple-800",
|
|
2213
2213
|
pink: "bg-pink-100 text-pink-800",
|
|
2214
2214
|
indigo: "bg-indigo-100 text-indigo-800"
|
|
2215
|
-
},
|
|
2215
|
+
}, Za = (e) => (s, t, a, l, n, o, i) => {
|
|
2216
2216
|
if (t.innerHTML = "", t.classList.add("spark-table-cell-badge"), !o)
|
|
2217
2217
|
return;
|
|
2218
|
-
const c = (i.rendererConfig || {}).colorMap || {}, d = c[o] || c[o?.toLowerCase()] || "gray",
|
|
2219
|
-
|
|
2218
|
+
const c = (i.rendererConfig || {}).colorMap || {}, d = c[o] || c[o?.toLowerCase()] || "gray", f = He[d] || He.gray, p = document.createElement("span");
|
|
2219
|
+
p.classList.add(
|
|
2220
2220
|
"inline-flex",
|
|
2221
2221
|
"items-center",
|
|
2222
2222
|
"px-2.5",
|
|
@@ -2225,16 +2225,16 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2225
2225
|
"text-xs",
|
|
2226
2226
|
"font-medium",
|
|
2227
2227
|
"capitalize",
|
|
2228
|
-
...
|
|
2229
|
-
),
|
|
2230
|
-
},
|
|
2228
|
+
...f.split(" ")
|
|
2229
|
+
), p.textContent = o, t.appendChild(p);
|
|
2230
|
+
}, Fe = {
|
|
2231
2231
|
green: { bg: "bg-green-100", text: "text-green-500" },
|
|
2232
2232
|
red: { bg: "bg-red-100", text: "text-red-500" },
|
|
2233
2233
|
yellow: { bg: "bg-yellow-100", text: "text-yellow-500" },
|
|
2234
2234
|
blue: { bg: "bg-blue-100", text: "text-blue-500" },
|
|
2235
2235
|
gray: { bg: "bg-gray-100", text: "text-gray-500" },
|
|
2236
2236
|
purple: { bg: "bg-purple-100", text: "text-purple-500" }
|
|
2237
|
-
},
|
|
2237
|
+
}, Wa = (e) => {
|
|
2238
2238
|
if (e == null || e === "")
|
|
2239
2239
|
return !1;
|
|
2240
2240
|
if (typeof e == "boolean")
|
|
@@ -2248,7 +2248,7 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2248
2248
|
return !1;
|
|
2249
2249
|
}, Ka = (e) => (s, t, a, l, n, o, i) => {
|
|
2250
2250
|
t.innerHTML = "", t.classList.add("spark-table-cell-boolean");
|
|
2251
|
-
const r = i.rendererConfig || {}, c =
|
|
2251
|
+
const r = i.rendererConfig || {}, c = Wa(o), d = c ? r.trueIcon || "check" : r.falseIcon || "xmark", f = c ? r.trueColor || "green" : r.falseColor || "red", p = r.size || 32, k = r.iconPrefix || "far", _ = Fe[f] || Fe.gray;
|
|
2252
2252
|
t.dataset.copyValue = c ? "true" : "false";
|
|
2253
2253
|
const b = document.createElement("div");
|
|
2254
2254
|
b.classList.add(
|
|
@@ -2258,12 +2258,12 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2258
2258
|
"rounded-full",
|
|
2259
2259
|
_.bg,
|
|
2260
2260
|
_.text
|
|
2261
|
-
), b.style.width = `${
|
|
2261
|
+
), b.style.width = `${p}px`, b.style.height = `${p}px`;
|
|
2262
2262
|
const u = document.createElement("span");
|
|
2263
|
-
u.innerHTML =
|
|
2264
|
-
const h = Math.round(
|
|
2263
|
+
u.innerHTML = se({ prefix: k, iconName: d }).html, u.classList.add("flex", "items-center", "justify-center");
|
|
2264
|
+
const h = Math.round(p * 0.5);
|
|
2265
2265
|
u.style.fontSize = `${h}px`, b.appendChild(u), t.appendChild(b);
|
|
2266
|
-
},
|
|
2266
|
+
}, Ga = (e, s = 2) => {
|
|
2267
2267
|
const t = Number(e);
|
|
2268
2268
|
if (isNaN(t)) return null;
|
|
2269
2269
|
const a = t < 0, n = Math.abs(t).toLocaleString("en-AU", {
|
|
@@ -2271,74 +2271,74 @@ const J = new Ha(), Fa = { class: "fixed inset-0 z-10 w-screen overflow-y-auto"
|
|
|
2271
2271
|
maximumFractionDigits: s
|
|
2272
2272
|
});
|
|
2273
2273
|
return a ? `-$${n}` : `$${n}`;
|
|
2274
|
-
},
|
|
2274
|
+
}, Ya = (e) => (s, t, a, l, n, o, i) => {
|
|
2275
2275
|
t.innerHTML = "", t.classList.add("spark-table-cell-currency");
|
|
2276
2276
|
const r = i.rendererConfig || {}, { decimals: c = 2, emptyText: d = "" } = r;
|
|
2277
2277
|
if (o == null || o === "") {
|
|
2278
2278
|
t.textContent = d;
|
|
2279
2279
|
return;
|
|
2280
2280
|
}
|
|
2281
|
-
const
|
|
2282
|
-
if (
|
|
2281
|
+
const f = Ga(o, c);
|
|
2282
|
+
if (f === null) {
|
|
2283
2283
|
t.textContent = d;
|
|
2284
2284
|
return;
|
|
2285
2285
|
}
|
|
2286
|
-
const
|
|
2287
|
-
|
|
2288
|
-
},
|
|
2286
|
+
const p = document.createElement("span");
|
|
2287
|
+
p.textContent = f, t.appendChild(p);
|
|
2288
|
+
}, Xa = (e) => (s, t, a, l, n, o, i) => {
|
|
2289
2289
|
if (t.innerHTML = "", t.classList.add("spark-table-cell-link"), !o)
|
|
2290
2290
|
return;
|
|
2291
2291
|
const r = i.rendererConfig || {}, c = s.getSourceDataAtRow(s.toPhysicalRow(a));
|
|
2292
2292
|
let d = o;
|
|
2293
2293
|
r.href && (typeof r.href == "function" ? d = r.href(c) : r.href === "email" ? d = `mailto:${o}` : r.href === "tel" ? d = `tel:${o}` : typeof r.href == "string" && (d = c[r.href] || o));
|
|
2294
|
-
const
|
|
2295
|
-
|
|
2296
|
-
|
|
2297
|
-
}), t.appendChild(
|
|
2298
|
-
},
|
|
2294
|
+
const f = document.createElement("a");
|
|
2295
|
+
f.href = d, f.textContent = o, f.classList.add("text-primary-600", "hover:text-primary-900", "hover:underline"), r.target && (f.target = r.target), r.rel && (f.rel = r.rel), f.addEventListener("click", (p) => {
|
|
2296
|
+
p.stopPropagation();
|
|
2297
|
+
}), t.appendChild(f);
|
|
2298
|
+
}, De = {
|
|
2299
2299
|
sm: "h-6 w-6",
|
|
2300
2300
|
md: "h-8 w-8",
|
|
2301
2301
|
lg: "h-12 w-12"
|
|
2302
|
-
},
|
|
2302
|
+
}, Ja = (e) => (s, t, a, l, n, o, i) => {
|
|
2303
2303
|
if (t.innerHTML = "", t.classList.add("spark-table-cell-image"), !o)
|
|
2304
2304
|
return;
|
|
2305
|
-
const r = i.rendererConfig || {}, c = s.getSourceDataAtRow(s.toPhysicalRow(a)), d = r.size || "md",
|
|
2306
|
-
let
|
|
2307
|
-
typeof r.alt == "string" && c[r.alt] && (
|
|
2305
|
+
const r = i.rendererConfig || {}, c = s.getSourceDataAtRow(s.toPhysicalRow(a)), d = r.size || "md", f = De[d] || De.md, p = r.rounded !== !1;
|
|
2306
|
+
let k = r.alt || "";
|
|
2307
|
+
typeof r.alt == "string" && c[r.alt] && (k = c[r.alt]);
|
|
2308
2308
|
const _ = document.createElement("img");
|
|
2309
|
-
_.src = o, _.alt =
|
|
2310
|
-
},
|
|
2309
|
+
_.src = o, _.alt = k, _.classList.add(...f.split(" "), "object-cover"), p ? _.classList.add("rounded-full") : _.classList.add("rounded"), t.appendChild(_);
|
|
2310
|
+
}, Qa = (e) => (s, t, a, l, n, o, i) => {
|
|
2311
2311
|
if (t.innerHTML = "", t.classList.add("spark-table-cell-date"), !o)
|
|
2312
2312
|
return;
|
|
2313
2313
|
const r = i.rendererConfig || {}, c = r.format || "short", d = r.locale || "en-US";
|
|
2314
|
-
let
|
|
2314
|
+
let f = o;
|
|
2315
2315
|
try {
|
|
2316
|
-
const
|
|
2317
|
-
isNaN(
|
|
2316
|
+
const k = new Date(o);
|
|
2317
|
+
isNaN(k.getTime()) ? f = o : typeof c == "function" ? f = c(k) : c === "short" ? f = k.toLocaleDateString(d) : c === "long" ? f = k.toLocaleDateString(d, {
|
|
2318
2318
|
year: "numeric",
|
|
2319
2319
|
month: "long",
|
|
2320
2320
|
day: "numeric"
|
|
2321
|
-
}) : c === "relative" ?
|
|
2322
|
-
} catch (
|
|
2323
|
-
console.error("Error formatting date:",
|
|
2321
|
+
}) : c === "relative" ? f = eo(k) : c === "datetime" ? f = k.toLocaleString(d) : f = k.toLocaleDateString(d);
|
|
2322
|
+
} catch (k) {
|
|
2323
|
+
console.error("Error formatting date:", k), f = o;
|
|
2324
2324
|
}
|
|
2325
|
-
const
|
|
2326
|
-
|
|
2325
|
+
const p = document.createElement("span");
|
|
2326
|
+
p.textContent = f, t.appendChild(p);
|
|
2327
2327
|
};
|
|
2328
|
-
function
|
|
2328
|
+
function eo(e) {
|
|
2329
2329
|
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), i = Math.floor(o / 30), r = Math.floor(o / 365), c = t > 0;
|
|
2330
2330
|
return a < 60 ? c ? "just now" : "in a moment" : l < 60 ? c ? `${l} minute${l > 1 ? "s" : ""} ago` : `in ${l} minute${l > 1 ? "s" : ""}` : n < 24 ? c ? `${n} hour${n > 1 ? "s" : ""} ago` : `in ${n} hour${n > 1 ? "s" : ""}` : o < 30 ? c ? `${o} day${o > 1 ? "s" : ""} ago` : `in ${o} day${o > 1 ? "s" : ""}` : i < 12 ? c ? `${i} month${i > 1 ? "s" : ""} ago` : `in ${i} month${i > 1 ? "s" : ""}` : c ? `${r} year${r > 1 ? "s" : ""} ago` : `in ${r} year${r > 1 ? "s" : ""}`;
|
|
2331
2331
|
}
|
|
2332
|
-
const
|
|
2332
|
+
const to = (e) => {
|
|
2333
2333
|
const s = ["th", "st", "nd", "rd"], t = e % 100;
|
|
2334
2334
|
return e + (s[(t - 20) % 10] || s[t] || s[0]);
|
|
2335
|
-
},
|
|
2335
|
+
}, Z = (e, s = 2) => String(e).padStart(s, "0"), ke = /* @__PURE__ */ new Map(), so = (e, s) => {
|
|
2336
2336
|
const t = `${e}:${JSON.stringify(s)}`;
|
|
2337
2337
|
return ke.has(t) || ke.set(t, new Intl.DateTimeFormat(e, s)), ke.get(t);
|
|
2338
2338
|
}, de = (e, s, t, a) => {
|
|
2339
|
-
const o =
|
|
2339
|
+
const o = so(s, t).formatToParts(e).find((i) => i.type === a);
|
|
2340
2340
|
return o ? o.value : "";
|
|
2341
|
-
},
|
|
2341
|
+
}, ao = (e) => e.epochMilliseconds !== void 0 ? new Date(e.epochMilliseconds) : new Date(
|
|
2342
2342
|
e.year,
|
|
2343
2343
|
e.month - 1,
|
|
2344
2344
|
e.day,
|
|
@@ -2346,7 +2346,7 @@ const eo = (e) => {
|
|
|
2346
2346
|
e.minute || 0,
|
|
2347
2347
|
e.second || 0,
|
|
2348
2348
|
e.millisecond || 0
|
|
2349
|
-
),
|
|
2349
|
+
), oo = (e) => {
|
|
2350
2350
|
const s = e.hour || 0, t = s % 12 || 12, a = s >= 12;
|
|
2351
2351
|
return {
|
|
2352
2352
|
year: e.year,
|
|
@@ -2364,13 +2364,13 @@ const eo = (e) => {
|
|
|
2364
2364
|
isPM: a,
|
|
2365
2365
|
quarter: Math.ceil(e.month / 3)
|
|
2366
2366
|
};
|
|
2367
|
-
},
|
|
2367
|
+
}, Re = (e, s = !0) => {
|
|
2368
2368
|
if (!e.offsetNanoseconds && e.offsetNanoseconds !== 0)
|
|
2369
2369
|
return "";
|
|
2370
2370
|
const t = Math.round(e.offsetNanoseconds / 6e10), a = t >= 0 ? "+" : "-", l = Math.abs(t), n = Math.floor(l / 60), o = l % 60;
|
|
2371
|
-
return s ? `${a}${
|
|
2372
|
-
},
|
|
2373
|
-
const t =
|
|
2371
|
+
return s ? `${a}${Z(n)}:${Z(o)}` : `${a}${Z(n)}${Z(o)}`;
|
|
2372
|
+
}, ro = (e, s) => {
|
|
2373
|
+
const t = oo(e), a = ao(e), l = t.dayOfWeek === 7 ? 0 : t.dayOfWeek;
|
|
2374
2374
|
return [
|
|
2375
2375
|
// Year
|
|
2376
2376
|
["YYYY", () => String(t.year)],
|
|
@@ -2378,11 +2378,11 @@ const eo = (e) => {
|
|
|
2378
2378
|
// Month
|
|
2379
2379
|
["MMMM", () => de(a, s, { month: "long" }, "month")],
|
|
2380
2380
|
["MMM", () => de(a, s, { month: "short" }, "month")],
|
|
2381
|
-
["MM", () =>
|
|
2381
|
+
["MM", () => Z(t.month)],
|
|
2382
2382
|
["M", () => String(t.month)],
|
|
2383
2383
|
// Day of month
|
|
2384
|
-
["DD", () =>
|
|
2385
|
-
["Do", () =>
|
|
2384
|
+
["DD", () => Z(t.day)],
|
|
2385
|
+
["Do", () => to(t.day)],
|
|
2386
2386
|
["D", () => String(t.day)],
|
|
2387
2387
|
// Day of week
|
|
2388
2388
|
["dddd", () => de(a, s, { weekday: "long" }, "weekday")],
|
|
@@ -2390,33 +2390,33 @@ const eo = (e) => {
|
|
|
2390
2390
|
["dd", () => de(a, s, { weekday: "short" }, "weekday").slice(0, 2)],
|
|
2391
2391
|
["d", () => String(l)],
|
|
2392
2392
|
// Hour
|
|
2393
|
-
["HH", () =>
|
|
2393
|
+
["HH", () => Z(t.hour24)],
|
|
2394
2394
|
["H", () => String(t.hour24)],
|
|
2395
|
-
["hh", () =>
|
|
2395
|
+
["hh", () => Z(t.hour12)],
|
|
2396
2396
|
["h", () => String(t.hour12)],
|
|
2397
|
-
["kk", () =>
|
|
2397
|
+
["kk", () => Z(t.hourFrom1)],
|
|
2398
2398
|
["k", () => String(t.hourFrom1)],
|
|
2399
2399
|
// Minute
|
|
2400
|
-
["mm", () =>
|
|
2400
|
+
["mm", () => Z(t.minute)],
|
|
2401
2401
|
["m", () => String(t.minute)],
|
|
2402
2402
|
// Second
|
|
2403
|
-
["ss", () =>
|
|
2403
|
+
["ss", () => Z(t.second)],
|
|
2404
2404
|
["s", () => String(t.second)],
|
|
2405
2405
|
// Millisecond
|
|
2406
|
-
["SSS", () =>
|
|
2406
|
+
["SSS", () => Z(t.millisecond, 3)],
|
|
2407
2407
|
// AM/PM
|
|
2408
2408
|
["A", () => t.isPM ? "PM" : "AM"],
|
|
2409
2409
|
["a", () => t.isPM ? "pm" : "am"],
|
|
2410
2410
|
// Timezone offset
|
|
2411
|
-
["ZZ", () =>
|
|
2412
|
-
["Z", () =>
|
|
2411
|
+
["ZZ", () => Re(e, !1)],
|
|
2412
|
+
["Z", () => Re(e, !0)],
|
|
2413
2413
|
// Quarter
|
|
2414
2414
|
["Q", () => String(t.quarter)],
|
|
2415
2415
|
// Unix timestamp
|
|
2416
2416
|
["x", () => String(e.epochMilliseconds ?? a.getTime())],
|
|
2417
2417
|
["X", () => String(Math.floor((e.epochMilliseconds ?? a.getTime()) / 1e3))]
|
|
2418
2418
|
];
|
|
2419
|
-
},
|
|
2419
|
+
}, no = (e, s, t = {}) => {
|
|
2420
2420
|
const { locale: a = "en-US" } = t;
|
|
2421
2421
|
if (!e)
|
|
2422
2422
|
return "";
|
|
@@ -2432,49 +2432,49 @@ const eo = (e) => {
|
|
|
2432
2432
|
} catch (r) {
|
|
2433
2433
|
return console.error("Failed to parse date string:", e, r), e;
|
|
2434
2434
|
}
|
|
2435
|
-
const n =
|
|
2435
|
+
const n = ro(l, a), o = n.map(([r]) => r).join("|"), i = new RegExp(`\\[([^\\]]+)\\]|(${o})`, "g");
|
|
2436
2436
|
return s.replace(i, (r, c, d) => {
|
|
2437
2437
|
if (c !== void 0)
|
|
2438
2438
|
return c;
|
|
2439
|
-
const
|
|
2440
|
-
return
|
|
2439
|
+
const f = n.find(([p]) => p === d);
|
|
2440
|
+
return f ? f[1]() : r;
|
|
2441
2441
|
});
|
|
2442
|
-
},
|
|
2442
|
+
}, lo = (e, s = {}) => {
|
|
2443
2443
|
const { fromTimezone: t, toTimezone: a } = s;
|
|
2444
2444
|
if (!e)
|
|
2445
2445
|
return null;
|
|
2446
2446
|
const l = e.replace(" ", "T");
|
|
2447
2447
|
return t && a ? Temporal.PlainDateTime.from(l).toZonedDateTime(t).withTimeZone(a) : t ? Temporal.PlainDateTime.from(l).toZonedDateTime(t) : Temporal.PlainDateTime.from(l);
|
|
2448
|
-
},
|
|
2448
|
+
}, io = (e) => (s, t, a, l, n, o, i) => {
|
|
2449
2449
|
t.innerHTML = "", t.classList.add("spark-table-cell-datetime");
|
|
2450
2450
|
const r = i.rendererConfig || {}, {
|
|
2451
2451
|
format: c = "DD MMM YYYY, HH:mm",
|
|
2452
2452
|
fromTimezone: d,
|
|
2453
|
-
toTimezone:
|
|
2454
|
-
locale:
|
|
2455
|
-
emptyText:
|
|
2453
|
+
toTimezone: f,
|
|
2454
|
+
locale: p = "en-US",
|
|
2455
|
+
emptyText: k = ""
|
|
2456
2456
|
} = r;
|
|
2457
2457
|
if (!o) {
|
|
2458
|
-
t.textContent =
|
|
2458
|
+
t.textContent = k;
|
|
2459
2459
|
return;
|
|
2460
2460
|
}
|
|
2461
2461
|
try {
|
|
2462
|
-
const _ =
|
|
2462
|
+
const _ = lo(o, { fromTimezone: d, toTimezone: f });
|
|
2463
2463
|
if (!_) {
|
|
2464
|
-
t.textContent =
|
|
2464
|
+
t.textContent = k;
|
|
2465
2465
|
return;
|
|
2466
2466
|
}
|
|
2467
|
-
const b =
|
|
2467
|
+
const b = no(_, c, { locale: p }), u = document.createElement("span");
|
|
2468
2468
|
u.textContent = b, t.appendChild(u);
|
|
2469
2469
|
} catch (_) {
|
|
2470
2470
|
console.error("Error formatting datetime:", _, { value: o, format: c }), t.textContent = o;
|
|
2471
2471
|
}
|
|
2472
|
-
},
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
}),
|
|
2476
|
-
},
|
|
2477
|
-
X("spark.actions",
|
|
2472
|
+
}, co = /* @__PURE__ */ new Map(), X = (e, s) => {
|
|
2473
|
+
vs(e, (t, a, l, n, o, i, r) => {
|
|
2474
|
+
bs.apply(null, [t, a, l, n, o, i, r]), s(t, a, l, n, o, i, r);
|
|
2475
|
+
}), co.set(e, s);
|
|
2476
|
+
}, uo = (e) => {
|
|
2477
|
+
X("spark.actions", qa(e)), X("spark.badge", Za()), X("spark.boolean", Ka()), X("spark.currency", Ya()), X("spark.link", Xa()), X("spark.image", Ja()), X("spark.date", Qa()), X("spark.datetime", io()), X("style.capitalize", (s, t, a, l, n, o) => {
|
|
2478
2478
|
if (!o || o.length === 0) {
|
|
2479
2479
|
t.innerText = "";
|
|
2480
2480
|
return;
|
|
@@ -2482,15 +2482,15 @@ const eo = (e) => {
|
|
|
2482
2482
|
const i = document.createElement("span");
|
|
2483
2483
|
i.innerHTML = o, i.classList.add("capitalize"), t.replaceChildren(i);
|
|
2484
2484
|
});
|
|
2485
|
-
},
|
|
2486
|
-
},
|
|
2487
|
-
const t =
|
|
2488
|
-
const
|
|
2489
|
-
return Object.keys(y).forEach((
|
|
2490
|
-
const
|
|
2491
|
-
|
|
2492
|
-
}),
|
|
2493
|
-
},
|
|
2485
|
+
}, po = () => {
|
|
2486
|
+
}, fo = (e, s = {}) => {
|
|
2487
|
+
const t = Y(), a = ee(), l = s.namespace, n = l === null, o = s.syncToRoute !== !1, i = s.persistToStorage === !0, r = s.restoreOnMount !== !1, c = s.storageTTL || 7, d = n ? `spark-table:${a.path}` : `spark-table:${l}`, f = (y, w = "") => {
|
|
2488
|
+
const T = {};
|
|
2489
|
+
return Object.keys(y).forEach((F) => {
|
|
2490
|
+
const j = y[F], me = w ? `${w}[${F}]` : F;
|
|
2491
|
+
j != null && (typeof j == "object" && !Array.isArray(j) ? Object.assign(T, f(j, me)) : T[me] = String(j));
|
|
2492
|
+
}), T;
|
|
2493
|
+
}, p = () => {
|
|
2494
2494
|
if (i)
|
|
2495
2495
|
try {
|
|
2496
2496
|
const y = {
|
|
@@ -2501,18 +2501,18 @@ const eo = (e) => {
|
|
|
2501
2501
|
} catch (y) {
|
|
2502
2502
|
console.warn("Failed to save table state to localStorage:", y);
|
|
2503
2503
|
}
|
|
2504
|
-
},
|
|
2504
|
+
}, k = () => {
|
|
2505
2505
|
if (!i) return null;
|
|
2506
2506
|
try {
|
|
2507
2507
|
const y = localStorage.getItem(d);
|
|
2508
2508
|
if (!y) return null;
|
|
2509
|
-
const
|
|
2509
|
+
const w = JSON.parse(y);
|
|
2510
2510
|
if (c > 0) {
|
|
2511
|
-
const
|
|
2512
|
-
if (
|
|
2511
|
+
const T = Date.now() - w.timestamp, F = c * 24 * 60 * 60 * 1e3;
|
|
2512
|
+
if (T > F)
|
|
2513
2513
|
return localStorage.removeItem(d), null;
|
|
2514
2514
|
}
|
|
2515
|
-
return
|
|
2515
|
+
return w.params;
|
|
2516
2516
|
} catch (y) {
|
|
2517
2517
|
return console.warn("Failed to load table state from localStorage:", y), null;
|
|
2518
2518
|
}
|
|
@@ -2526,25 +2526,25 @@ const eo = (e) => {
|
|
|
2526
2526
|
if (!o) return;
|
|
2527
2527
|
const y = { ...a.query };
|
|
2528
2528
|
if (n) {
|
|
2529
|
-
Object.keys(y).forEach((
|
|
2530
|
-
u(
|
|
2529
|
+
Object.keys(y).forEach((T) => {
|
|
2530
|
+
u(T) && delete y[T];
|
|
2531
2531
|
});
|
|
2532
|
-
const
|
|
2533
|
-
Object.assign(y,
|
|
2532
|
+
const w = f(e.params);
|
|
2533
|
+
Object.assign(y, w);
|
|
2534
2534
|
} else {
|
|
2535
|
-
Object.keys(y).forEach((
|
|
2536
|
-
(
|
|
2535
|
+
Object.keys(y).forEach((T) => {
|
|
2536
|
+
(T.startsWith(`${l}[`) || T === l) && delete y[T];
|
|
2537
2537
|
});
|
|
2538
|
-
const
|
|
2539
|
-
Object.assign(y,
|
|
2538
|
+
const w = f(e.params, l);
|
|
2539
|
+
Object.assign(y, w);
|
|
2540
2540
|
}
|
|
2541
2541
|
t.replace({ query: y });
|
|
2542
|
-
}, u = (y) => !!(["page", "limit", "search", "orderBy", "sortedBy"].includes(y) || y.includes("[")), h = (y,
|
|
2543
|
-
if (["page", "limit"].includes(y) &&
|
|
2544
|
-
const
|
|
2545
|
-
return isNaN(
|
|
2542
|
+
}, u = (y) => !!(["page", "limit", "search", "orderBy", "sortedBy"].includes(y) || y.includes("[")), h = (y, w) => {
|
|
2543
|
+
if (["page", "limit"].includes(y) && w !== null && w !== void 0) {
|
|
2544
|
+
const F = parseInt(w, 10);
|
|
2545
|
+
return isNaN(F) ? w : F;
|
|
2546
2546
|
}
|
|
2547
|
-
return
|
|
2547
|
+
return w;
|
|
2548
2548
|
}, x = () => {
|
|
2549
2549
|
if (n)
|
|
2550
2550
|
Object.keys(a.query).forEach((y) => {
|
|
@@ -2552,48 +2552,48 @@ const eo = (e) => {
|
|
|
2552
2552
|
});
|
|
2553
2553
|
else {
|
|
2554
2554
|
const y = `${l}[`;
|
|
2555
|
-
Object.keys(a.query).forEach((
|
|
2556
|
-
if (
|
|
2557
|
-
const
|
|
2558
|
-
e.params[
|
|
2555
|
+
Object.keys(a.query).forEach((w) => {
|
|
2556
|
+
if (w.startsWith(y)) {
|
|
2557
|
+
const T = w.slice(y.length, -1);
|
|
2558
|
+
e.params[T] = h(T, a.query[w]);
|
|
2559
2559
|
}
|
|
2560
2560
|
});
|
|
2561
2561
|
}
|
|
2562
2562
|
};
|
|
2563
|
-
return
|
|
2563
|
+
return U(
|
|
2564
2564
|
() => e.params,
|
|
2565
2565
|
() => {
|
|
2566
|
-
o && b(), i &&
|
|
2566
|
+
o && b(), i && p();
|
|
2567
2567
|
},
|
|
2568
2568
|
{ deep: !0 }
|
|
2569
|
-
), r &&
|
|
2569
|
+
), r && pe(() => {
|
|
2570
2570
|
let y = !1;
|
|
2571
2571
|
if (o) {
|
|
2572
|
-
let
|
|
2572
|
+
let w = !1;
|
|
2573
2573
|
if (n)
|
|
2574
|
-
|
|
2574
|
+
w = Object.keys(a.query).some((T) => u(T));
|
|
2575
2575
|
else {
|
|
2576
|
-
const
|
|
2577
|
-
|
|
2578
|
-
(
|
|
2576
|
+
const T = `${l}[`;
|
|
2577
|
+
w = Object.keys(a.query).some(
|
|
2578
|
+
(F) => F.startsWith(T)
|
|
2579
2579
|
);
|
|
2580
2580
|
}
|
|
2581
|
-
|
|
2581
|
+
w && (y = !0, x());
|
|
2582
2582
|
}
|
|
2583
2583
|
if (!y && i) {
|
|
2584
|
-
const
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
}), Object.assign(e.params,
|
|
2584
|
+
const w = k();
|
|
2585
|
+
w && Object.keys(w).length > 0 && (Object.keys(w).forEach((T) => {
|
|
2586
|
+
w[T] = h(T, w[T]);
|
|
2587
|
+
}), Object.assign(e.params, w));
|
|
2588
2588
|
}
|
|
2589
2589
|
}), {
|
|
2590
2590
|
syncToRoute: b,
|
|
2591
2591
|
restoreFromRoute: x,
|
|
2592
|
-
saveToStorage:
|
|
2593
|
-
loadFromStorage:
|
|
2592
|
+
saveToStorage: p,
|
|
2593
|
+
loadFromStorage: k,
|
|
2594
2594
|
clearStorage: _
|
|
2595
2595
|
};
|
|
2596
|
-
},
|
|
2596
|
+
}, mo = { class: "flex items-center gap-4 py-3" }, go = { class: "shrink-0" }, ho = { class: "text-sm text-gray-700" }, yo = { class: "font-medium" }, vo = { class: "font-medium" }, bo = { class: "font-medium" }, xo = {
|
|
2597
2597
|
__name: "SparkTablePaginationDetails",
|
|
2598
2598
|
props: {
|
|
2599
2599
|
sparkTable: {
|
|
@@ -2604,28 +2604,28 @@ const eo = (e) => {
|
|
|
2604
2604
|
setup(e) {
|
|
2605
2605
|
const s = e;
|
|
2606
2606
|
return (t, a) => (m(), v("div", null, [
|
|
2607
|
-
g("div",
|
|
2608
|
-
g("div",
|
|
2609
|
-
g("div",
|
|
2610
|
-
a[0] || (a[0] =
|
|
2611
|
-
g("span",
|
|
2612
|
-
a[1] || (a[1] =
|
|
2613
|
-
g("span",
|
|
2614
|
-
a[2] || (a[2] =
|
|
2615
|
-
g("span",
|
|
2616
|
-
a[3] || (a[3] =
|
|
2607
|
+
g("div", mo, [
|
|
2608
|
+
g("div", go, [
|
|
2609
|
+
g("div", ho, [
|
|
2610
|
+
a[0] || (a[0] = I(" Showing ", -1)),
|
|
2611
|
+
g("span", yo, M(s.sparkTable.response.meta.from), 1),
|
|
2612
|
+
a[1] || (a[1] = I(" to ", -1)),
|
|
2613
|
+
g("span", vo, M(s.sparkTable.response.meta.to), 1),
|
|
2614
|
+
a[2] || (a[2] = I(" of ", -1)),
|
|
2615
|
+
g("span", bo, M(s.sparkTable.response.meta.total), 1),
|
|
2616
|
+
a[3] || (a[3] = I(" results ", -1))
|
|
2617
2617
|
])
|
|
2618
2618
|
])
|
|
2619
2619
|
])
|
|
2620
2620
|
]));
|
|
2621
2621
|
}
|
|
2622
|
-
},
|
|
2622
|
+
}, wo = { class: "flex items-center gap-4 px-4 py-3" }, ko = {
|
|
2623
2623
|
key: 0,
|
|
2624
2624
|
class: "shrink-0 ml-auto"
|
|
2625
|
-
},
|
|
2625
|
+
}, _o = {
|
|
2626
2626
|
class: "isolate inline-flex -space-x-px rounded-md shadow-xs bg-white",
|
|
2627
2627
|
"aria-label": "Pagination"
|
|
2628
|
-
},
|
|
2628
|
+
}, So = ["onClick"], Co = {
|
|
2629
2629
|
__name: "SparkTablePaginationPaging",
|
|
2630
2630
|
props: {
|
|
2631
2631
|
sparkTable: {
|
|
@@ -2641,51 +2641,51 @@ const eo = (e) => {
|
|
|
2641
2641
|
d < 1 || d > t.sparkTable.response.meta.last_page || a("paginate", {
|
|
2642
2642
|
page: d
|
|
2643
2643
|
});
|
|
2644
|
-
}, o = L(() => t.sparkTable.params.page ? Math.ceil(t.sparkTable.params.page / 10) * 10 : 1), i = L(() => t.sparkTable.computed.ready ?
|
|
2644
|
+
}, o = L(() => t.sparkTable.params.page ? Math.ceil(t.sparkTable.params.page / 10) * 10 : 1), i = L(() => t.sparkTable.computed.ready ? cs(
|
|
2645
2645
|
Math.floor((o.value - 1) / 10) * 10 + 1,
|
|
2646
2646
|
o.value > t.sparkTable.response.meta.last_page ? t.sparkTable.response.meta.last_page + 1 : o.value + 1
|
|
2647
2647
|
) : []), r = L(
|
|
2648
|
-
() => t.sparkTable.params.page <
|
|
2648
|
+
() => t.sparkTable.params.page < te(t.sparkTable.response.meta, "last_page", 1)
|
|
2649
2649
|
), c = L(() => t.sparkTable.params.page > 1);
|
|
2650
|
-
return (d,
|
|
2651
|
-
const
|
|
2650
|
+
return (d, f) => {
|
|
2651
|
+
const p = A("font-awesome-icon");
|
|
2652
2652
|
return m(), v("div", null, [
|
|
2653
|
-
g("div",
|
|
2653
|
+
g("div", wo, [
|
|
2654
2654
|
i.value.length > 1 ? (m(), v("div", ko, [
|
|
2655
2655
|
g("div", null, [
|
|
2656
|
-
g("nav",
|
|
2656
|
+
g("nav", _o, [
|
|
2657
2657
|
g("a", {
|
|
2658
2658
|
class: V([c.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"]),
|
|
2659
2659
|
href: "#",
|
|
2660
|
-
onClick:
|
|
2660
|
+
onClick: f[0] || (f[0] = O((k) => l(-1), ["prevent"]))
|
|
2661
2661
|
}, [
|
|
2662
|
-
|
|
2663
|
-
icon:
|
|
2662
|
+
S(p, {
|
|
2663
|
+
icon: C(R).farChevronLeft,
|
|
2664
2664
|
class: "size-5"
|
|
2665
2665
|
}, null, 8, ["icon"])
|
|
2666
2666
|
], 2),
|
|
2667
|
-
(m(!0), v(E, null,
|
|
2668
|
-
key: `page-${
|
|
2667
|
+
(m(!0), v(E, null, N(i.value, (k) => (m(), v("a", {
|
|
2668
|
+
key: `page-${k}`,
|
|
2669
2669
|
href: "#",
|
|
2670
2670
|
class: V([
|
|
2671
2671
|
"relative inline-flex items-center px-4 py-[9px] text-sm font-semibold ring-1 ring-inset",
|
|
2672
|
-
e.sparkTable.params.page ===
|
|
2672
|
+
e.sparkTable.params.page === k ? "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"
|
|
2673
2673
|
]),
|
|
2674
|
-
onClick: (_) => n(
|
|
2675
|
-
}, M(
|
|
2674
|
+
onClick: (_) => n(k)
|
|
2675
|
+
}, M(k), 11, So))), 128)),
|
|
2676
2676
|
g("a", {
|
|
2677
2677
|
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"]),
|
|
2678
|
-
onClick:
|
|
2678
|
+
onClick: f[1] || (f[1] = O((k) => l(1), ["prevent"])),
|
|
2679
2679
|
href: "#"
|
|
2680
2680
|
}, [
|
|
2681
|
-
|
|
2682
|
-
icon:
|
|
2681
|
+
S(p, {
|
|
2682
|
+
icon: C(R).farChevronRight,
|
|
2683
2683
|
class: "size-5"
|
|
2684
2684
|
}, null, 8, ["icon"])
|
|
2685
2685
|
], 2)
|
|
2686
2686
|
])
|
|
2687
2687
|
])
|
|
2688
|
-
])) :
|
|
2688
|
+
])) : $("", !0)
|
|
2689
2689
|
])
|
|
2690
2690
|
]);
|
|
2691
2691
|
};
|
|
@@ -2695,7 +2695,7 @@ const eo = (e) => {
|
|
|
2695
2695
|
for (const [a, l] of s)
|
|
2696
2696
|
t[a] = l;
|
|
2697
2697
|
return t;
|
|
2698
|
-
},
|
|
2698
|
+
}, To = { class: "spark-table-pagination-per-page" }, $o = {
|
|
2699
2699
|
__name: "SparkTablePaginationPerPage",
|
|
2700
2700
|
props: {
|
|
2701
2701
|
sparkTable: {
|
|
@@ -2715,9 +2715,9 @@ const eo = (e) => {
|
|
|
2715
2715
|
});
|
|
2716
2716
|
};
|
|
2717
2717
|
return (o, i) => {
|
|
2718
|
-
const r =
|
|
2719
|
-
return m(), v("div",
|
|
2720
|
-
|
|
2718
|
+
const r = A("FormKit");
|
|
2719
|
+
return m(), v("div", To, [
|
|
2720
|
+
S(r, {
|
|
2721
2721
|
"model-value": e.sparkTable.params.limit,
|
|
2722
2722
|
type: "select",
|
|
2723
2723
|
options: l.value,
|
|
@@ -2729,7 +2729,7 @@ const eo = (e) => {
|
|
|
2729
2729
|
]);
|
|
2730
2730
|
};
|
|
2731
2731
|
}
|
|
2732
|
-
},
|
|
2732
|
+
}, Lo = /* @__PURE__ */ oe($o, [["__scopeId", "data-v-9ef8544b"]]), Ae = {
|
|
2733
2733
|
__name: "SparkTableToolbar",
|
|
2734
2734
|
props: {
|
|
2735
2735
|
position: {
|
|
@@ -2739,7 +2739,7 @@ const eo = (e) => {
|
|
|
2739
2739
|
}
|
|
2740
2740
|
},
|
|
2741
2741
|
setup(e) {
|
|
2742
|
-
const s = e, t =
|
|
2742
|
+
const s = e, t = je(), a = L(() => !!t.default), l = L(() => {
|
|
2743
2743
|
const n = "spark-table-toolbar flex flex-wrap items-center gap-x-5 w-full";
|
|
2744
2744
|
return s.position === "footer" ? `${n} spark-table-toolbar-footer justify-between` : `${n} spark-table-toolbar-header gap-y-5 py-5`;
|
|
2745
2745
|
});
|
|
@@ -2747,10 +2747,10 @@ const eo = (e) => {
|
|
|
2747
2747
|
key: 0,
|
|
2748
2748
|
class: V(l.value)
|
|
2749
2749
|
}, [
|
|
2750
|
-
|
|
2751
|
-
], 2)) :
|
|
2750
|
+
z(n.$slots, "default")
|
|
2751
|
+
], 2)) : $("", !0);
|
|
2752
2752
|
}
|
|
2753
|
-
},
|
|
2753
|
+
}, Po = { class: "spark-table-search" }, Mo = {
|
|
2754
2754
|
__name: "SparkTableSearch",
|
|
2755
2755
|
props: {
|
|
2756
2756
|
/** SparkTable instance object */
|
|
@@ -2769,33 +2769,33 @@ const eo = (e) => {
|
|
|
2769
2769
|
}
|
|
2770
2770
|
},
|
|
2771
2771
|
setup(e) {
|
|
2772
|
-
const s = e, t =
|
|
2772
|
+
const s = e, t = D(""), a = s.config.param || "search";
|
|
2773
2773
|
s.sparkTable.params[a] ? t.value = s.sparkTable.params[a] : s.config.initialValue && (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
|
|
2774
2774
|
[a]: s.config.initialValue
|
|
2775
2775
|
}));
|
|
2776
|
-
const l =
|
|
2776
|
+
const l = it((o) => {
|
|
2777
2777
|
o ? s.sparkTable.methods.applyParams({
|
|
2778
2778
|
page: 1,
|
|
2779
2779
|
[a]: o
|
|
2780
2780
|
}) : s.sparkTable.methods.removeParam(a);
|
|
2781
2781
|
}, s.config.debounce || 300);
|
|
2782
|
-
|
|
2782
|
+
U(t, (o) => {
|
|
2783
2783
|
l(o);
|
|
2784
2784
|
});
|
|
2785
2785
|
const n = s.config.placeholder || "Search...";
|
|
2786
|
-
return
|
|
2786
|
+
return U(
|
|
2787
2787
|
() => s.sparkTable.params[a],
|
|
2788
2788
|
(o) => {
|
|
2789
2789
|
o && o !== t.value ? t.value = o : !o && t.value && (t.value = "");
|
|
2790
2790
|
}
|
|
2791
2791
|
), (o, i) => {
|
|
2792
|
-
const r =
|
|
2793
|
-
return m(), v("div",
|
|
2794
|
-
|
|
2792
|
+
const r = A("FormKit");
|
|
2793
|
+
return m(), v("div", Po, [
|
|
2794
|
+
S(r, K({
|
|
2795
2795
|
modelValue: t.value,
|
|
2796
2796
|
"onUpdate:modelValue": i[0] || (i[0] = (c) => t.value = c),
|
|
2797
2797
|
type: "text",
|
|
2798
|
-
placeholder:
|
|
2798
|
+
placeholder: C(n),
|
|
2799
2799
|
suffixIcon: "search",
|
|
2800
2800
|
"outer-class": "!mb-0",
|
|
2801
2801
|
"wrapper-class": "!mb-0",
|
|
@@ -2804,7 +2804,7 @@ const eo = (e) => {
|
|
|
2804
2804
|
]);
|
|
2805
2805
|
};
|
|
2806
2806
|
}
|
|
2807
|
-
},
|
|
2807
|
+
}, Vo = /* @__PURE__ */ oe(Mo, [["__scopeId", "data-v-976170dc"]]), Ho = { class: "spark-table-filter-select" }, Fo = {
|
|
2808
2808
|
__name: "SparkTableFilterSelect",
|
|
2809
2809
|
props: {
|
|
2810
2810
|
/** SparkTable instance object */
|
|
@@ -2820,7 +2820,7 @@ const eo = (e) => {
|
|
|
2820
2820
|
}
|
|
2821
2821
|
},
|
|
2822
2822
|
setup(e) {
|
|
2823
|
-
const s = e, t =
|
|
2823
|
+
const s = e, t = D(""), a = s.config.param || `filter[${s.config.key}]`;
|
|
2824
2824
|
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({
|
|
2825
2825
|
[a]: s.config.initialValue
|
|
2826
2826
|
}));
|
|
@@ -2828,24 +2828,24 @@ const eo = (e) => {
|
|
|
2828
2828
|
{ label: s.config.placeholder || "All", value: "" },
|
|
2829
2829
|
...s.config.options
|
|
2830
2830
|
]);
|
|
2831
|
-
return
|
|
2831
|
+
return U(t, (o) => {
|
|
2832
2832
|
o ? s.sparkTable.methods.applyParams({
|
|
2833
2833
|
page: 1,
|
|
2834
2834
|
[a]: o
|
|
2835
2835
|
}) : s.sparkTable.methods.removeParam(a);
|
|
2836
|
-
}),
|
|
2836
|
+
}), U(
|
|
2837
2837
|
() => s.sparkTable.params[a],
|
|
2838
2838
|
(o) => {
|
|
2839
2839
|
o != null && o !== "" ? t.value !== o && (t.value = o) : t.value && (t.value = "");
|
|
2840
2840
|
}
|
|
2841
2841
|
), (o, i) => {
|
|
2842
|
-
const r =
|
|
2843
|
-
return m(), v("div",
|
|
2844
|
-
|
|
2842
|
+
const r = A("FormKit");
|
|
2843
|
+
return m(), v("div", Ho, [
|
|
2844
|
+
S(r, K({
|
|
2845
2845
|
modelValue: t.value,
|
|
2846
2846
|
"onUpdate:modelValue": i[0] || (i[0] = (c) => t.value = c),
|
|
2847
2847
|
type: "select",
|
|
2848
|
-
label:
|
|
2848
|
+
label: C(l),
|
|
2849
2849
|
options: n.value,
|
|
2850
2850
|
placeholder: e.config.placeholder || "All",
|
|
2851
2851
|
"outer-class": "!mb-0",
|
|
@@ -2854,7 +2854,7 @@ const eo = (e) => {
|
|
|
2854
2854
|
]);
|
|
2855
2855
|
};
|
|
2856
2856
|
}
|
|
2857
|
-
},
|
|
2857
|
+
}, Do = /* @__PURE__ */ oe(Fo, [["__scopeId", "data-v-642dbc69"]]), Ro = { class: "spark-table-filter-buttons" }, Ao = {
|
|
2858
2858
|
key: 0,
|
|
2859
2859
|
class: "spark-table-filter-buttons-label"
|
|
2860
2860
|
}, Eo = {
|
|
@@ -2873,7 +2873,7 @@ const eo = (e) => {
|
|
|
2873
2873
|
}
|
|
2874
2874
|
},
|
|
2875
2875
|
setup(e) {
|
|
2876
|
-
const s = e, t =
|
|
2876
|
+
const s = e, t = D(null), a = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`;
|
|
2877
2877
|
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({
|
|
2878
2878
|
[l]: s.config.initialValue
|
|
2879
2879
|
}));
|
|
@@ -2883,16 +2883,16 @@ const eo = (e) => {
|
|
|
2883
2883
|
[l]: i
|
|
2884
2884
|
});
|
|
2885
2885
|
};
|
|
2886
|
-
return
|
|
2886
|
+
return U(
|
|
2887
2887
|
() => s.sparkTable.params[l],
|
|
2888
2888
|
(i) => {
|
|
2889
2889
|
(i == null || i === "") && t.value ? t.value = null : i !== t.value && (t.value = i);
|
|
2890
2890
|
}
|
|
2891
|
-
), (i, r) => (m(), v("div",
|
|
2892
|
-
|
|
2893
|
-
|
|
2891
|
+
), (i, r) => (m(), v("div", Ro, [
|
|
2892
|
+
C(a) ? (m(), v("span", Ao, M(C(a)), 1)) : $("", !0),
|
|
2893
|
+
S(ft, { class: "isolate" }, {
|
|
2894
2894
|
default: P(() => [
|
|
2895
|
-
(m(!0), v(E, null,
|
|
2895
|
+
(m(!0), v(E, null, N(e.config.options, (c) => (m(), H(q, {
|
|
2896
2896
|
key: c.value,
|
|
2897
2897
|
size: "xl",
|
|
2898
2898
|
"button-class": "px-3.5",
|
|
@@ -2900,7 +2900,7 @@ const eo = (e) => {
|
|
|
2900
2900
|
onClick: (d) => o(c.value)
|
|
2901
2901
|
}, {
|
|
2902
2902
|
default: P(() => [
|
|
2903
|
-
|
|
2903
|
+
I(M(c.label), 1)
|
|
2904
2904
|
]),
|
|
2905
2905
|
_: 2
|
|
2906
2906
|
}, 1032, ["variant", "onClick"]))), 128))
|
|
@@ -2909,7 +2909,7 @@ const eo = (e) => {
|
|
|
2909
2909
|
})
|
|
2910
2910
|
]));
|
|
2911
2911
|
}
|
|
2912
|
-
},
|
|
2912
|
+
}, Io = /* @__PURE__ */ oe(Eo, [["__scopeId", "data-v-01a49899"]]), Oo = { class: "spark-table-date-picker" }, Bo = {
|
|
2913
2913
|
__name: "SparkTableDatePicker",
|
|
2914
2914
|
props: {
|
|
2915
2915
|
/** SparkTable instance object */
|
|
@@ -2925,15 +2925,15 @@ const eo = (e) => {
|
|
|
2925
2925
|
}
|
|
2926
2926
|
},
|
|
2927
2927
|
setup(e) {
|
|
2928
|
-
const s = e, t =
|
|
2928
|
+
const s = e, t = D(null), a = s.config.label || null, l = s.config.param || `filter[${s.config.key}]`, n = D(`${l}-0`);
|
|
2929
2929
|
return s.sparkTable.params[l] ? t.value = s.sparkTable.params[l] : s.config.initialValue ? (t.value = s.config.initialValue, s.sparkTable.methods.applyParams({
|
|
2930
2930
|
[l]: s.config.initialValue
|
|
2931
|
-
})) : t.value = null,
|
|
2931
|
+
})) : t.value = null, U(t, (o) => {
|
|
2932
2932
|
o ? s.sparkTable.methods.applyParams({
|
|
2933
2933
|
page: 1,
|
|
2934
2934
|
[l]: o
|
|
2935
2935
|
}) : s.sparkTable.methods.removeParam(l);
|
|
2936
|
-
}),
|
|
2936
|
+
}), U(
|
|
2937
2937
|
() => s.sparkTable.params[l],
|
|
2938
2938
|
(o) => {
|
|
2939
2939
|
if ((o == null || o === "") && t.value) {
|
|
@@ -2943,7 +2943,7 @@ const eo = (e) => {
|
|
|
2943
2943
|
} else o && o !== t.value && (t.value = o);
|
|
2944
2944
|
}
|
|
2945
2945
|
), (o, i) => {
|
|
2946
|
-
const r =
|
|
2946
|
+
const r = A("FormKit");
|
|
2947
2947
|
return m(), v("div", Oo, [
|
|
2948
2948
|
(m(), H(r, K({
|
|
2949
2949
|
key: n.value,
|
|
@@ -2951,7 +2951,7 @@ const eo = (e) => {
|
|
|
2951
2951
|
"onUpdate:modelValue": i[0] || (i[0] = (c) => t.value = c),
|
|
2952
2952
|
type: "datepicker",
|
|
2953
2953
|
"picker-only": "",
|
|
2954
|
-
label:
|
|
2954
|
+
label: C(a),
|
|
2955
2955
|
placeholder: e.config.placeholder || "Select date",
|
|
2956
2956
|
overlay: !0,
|
|
2957
2957
|
"value-format": "YYYY-MM-DD",
|
|
@@ -2962,7 +2962,7 @@ const eo = (e) => {
|
|
|
2962
2962
|
]);
|
|
2963
2963
|
};
|
|
2964
2964
|
}
|
|
2965
|
-
},
|
|
2965
|
+
}, jo = /* @__PURE__ */ oe(Bo, [["__scopeId", "data-v-44ef9cb8"]]), zo = { class: "spark-table-reset" }, No = { key: 1 }, Uo = {
|
|
2966
2966
|
__name: "SparkTableReset",
|
|
2967
2967
|
props: {
|
|
2968
2968
|
/** SparkTable instance object */
|
|
@@ -2982,8 +2982,8 @@ const eo = (e) => {
|
|
|
2982
2982
|
Object.entries(a).forEach(([c, d]) => {
|
|
2983
2983
|
if (!d || d.type === "reset" || !(typeof d.enabled == "function" ? d.enabled(s.sparkTable.params) : d.enabled))
|
|
2984
2984
|
return;
|
|
2985
|
-
let
|
|
2986
|
-
d.type === "search" ?
|
|
2985
|
+
let p = null;
|
|
2986
|
+
d.type === "search" ? p = d.param || "search" : d.type === "filterSelect" || d.type === "filterButtons" ? p = d.param || `filter[${d.key}]` : d.type === "datePicker" && (p = d.param || `filter[${d.key}]`), p && (d.initialValue !== void 0 && d.initialValue !== null ? n[p] = d.initialValue : l.push(p));
|
|
2987
2987
|
});
|
|
2988
2988
|
const o = l.filter(
|
|
2989
2989
|
(c) => s.sparkTable.params[c] !== void 0 && s.sparkTable.params[c] !== null && s.sparkTable.params[c] !== ""
|
|
@@ -2999,9 +2999,9 @@ const eo = (e) => {
|
|
|
2999
2999
|
s.sparkTable.methods.applyParams({ ...r, page: 1 });
|
|
3000
3000
|
};
|
|
3001
3001
|
return (a, l) => {
|
|
3002
|
-
const n =
|
|
3003
|
-
return m(), v("div",
|
|
3004
|
-
|
|
3002
|
+
const n = A("font-awesome-icon");
|
|
3003
|
+
return m(), v("div", zo, [
|
|
3004
|
+
S(q, {
|
|
3005
3005
|
onClick: t,
|
|
3006
3006
|
variant: "secondary",
|
|
3007
3007
|
"button-class": "px-3.5",
|
|
@@ -3012,26 +3012,26 @@ const eo = (e) => {
|
|
|
3012
3012
|
key: 0,
|
|
3013
3013
|
icon: ["far", e.config.icon],
|
|
3014
3014
|
class: V({ "mr-1.5": e.config.label })
|
|
3015
|
-
}, null, 8, ["icon", "class"])) :
|
|
3016
|
-
e.config.label ? (m(), v("span",
|
|
3015
|
+
}, null, 8, ["icon", "class"])) : $("", !0),
|
|
3016
|
+
e.config.label ? (m(), v("span", No, M(e.config.label), 1)) : $("", !0)
|
|
3017
3017
|
]),
|
|
3018
3018
|
_: 1
|
|
3019
3019
|
})
|
|
3020
3020
|
]);
|
|
3021
3021
|
};
|
|
3022
3022
|
}
|
|
3023
|
-
},
|
|
3023
|
+
}, qo = /* @__PURE__ */ oe(Uo, [["__scopeId", "data-v-0894e3bf"]]), Zo = { class: "spark-table" }, Wo = {
|
|
3024
3024
|
key: 1,
|
|
3025
3025
|
class: "pt-5"
|
|
3026
3026
|
}, Ko = {
|
|
3027
3027
|
key: 2,
|
|
3028
3028
|
class: "flex flex-col items-center justify-center py-16 text-gray-500 rounded-md border border-gray-300 bg-white"
|
|
3029
|
-
},
|
|
3029
|
+
}, Go = { class: "flex items-center gap-x-3 ml-auto" }, $e = {
|
|
3030
3030
|
perPages: [15, 30, 50, 100, 200, 500],
|
|
3031
3031
|
limit: 15
|
|
3032
|
-
},
|
|
3032
|
+
}, Yo = {
|
|
3033
3033
|
page: 1,
|
|
3034
|
-
limit:
|
|
3034
|
+
limit: $e.limit
|
|
3035
3035
|
}, Ee = {
|
|
3036
3036
|
colHeaders: !0,
|
|
3037
3037
|
filters: !1,
|
|
@@ -3054,7 +3054,7 @@ const eo = (e) => {
|
|
|
3054
3054
|
dataTransformer: {
|
|
3055
3055
|
type: Function,
|
|
3056
3056
|
default: (e, s) => ({
|
|
3057
|
-
data:
|
|
3057
|
+
data: te(s.settings, "nestedHeaders") ? e.data.data.map((a) => (s.settings.columnKeys || []).map((n) => a[n])) : e.data.data,
|
|
3058
3058
|
meta: {
|
|
3059
3059
|
last_page: e.data.last_page,
|
|
3060
3060
|
from: e.data.from,
|
|
@@ -3066,13 +3066,13 @@ const eo = (e) => {
|
|
|
3066
3066
|
params: {
|
|
3067
3067
|
type: Object,
|
|
3068
3068
|
default() {
|
|
3069
|
-
return
|
|
3069
|
+
return Yo;
|
|
3070
3070
|
}
|
|
3071
3071
|
},
|
|
3072
3072
|
options: {
|
|
3073
3073
|
type: Object,
|
|
3074
3074
|
default() {
|
|
3075
|
-
return
|
|
3075
|
+
return $e;
|
|
3076
3076
|
}
|
|
3077
3077
|
},
|
|
3078
3078
|
settings: {
|
|
@@ -3107,16 +3107,16 @@ const eo = (e) => {
|
|
|
3107
3107
|
],
|
|
3108
3108
|
setup(e, { expose: s, emit: t }) {
|
|
3109
3109
|
const a = e;
|
|
3110
|
-
|
|
3111
|
-
const l = t, n =
|
|
3110
|
+
ys(), ge(fs), ge(ms), ge(gs), te(a, "settings.nestedHeaders") && ge(hs);
|
|
3111
|
+
const l = t, n = be("axios"), o = D(null), i = D(!1), r = D(null);
|
|
3112
3112
|
let c = !1;
|
|
3113
3113
|
const d = {
|
|
3114
|
-
search:
|
|
3115
|
-
filterSelect:
|
|
3116
|
-
filterButtons:
|
|
3117
|
-
datePicker:
|
|
3118
|
-
reset:
|
|
3119
|
-
},
|
|
3114
|
+
search: Vo,
|
|
3115
|
+
filterSelect: Do,
|
|
3116
|
+
filterButtons: Io,
|
|
3117
|
+
datePicker: jo,
|
|
3118
|
+
reset: qo
|
|
3119
|
+
}, f = G({
|
|
3120
3120
|
hotInstance: null,
|
|
3121
3121
|
url: L(() => a.url),
|
|
3122
3122
|
plugins: a.plugins,
|
|
@@ -3127,43 +3127,43 @@ const eo = (e) => {
|
|
|
3127
3127
|
},
|
|
3128
3128
|
methods: {
|
|
3129
3129
|
applyParams: (u) => {
|
|
3130
|
-
u && (
|
|
3131
|
-
...
|
|
3130
|
+
u && (f.params = {
|
|
3131
|
+
...f.params,
|
|
3132
3132
|
...u
|
|
3133
|
-
}, l("page-change",
|
|
3133
|
+
}, l("page-change", f.params));
|
|
3134
3134
|
},
|
|
3135
3135
|
removeParam: async (u) => {
|
|
3136
|
-
|
|
3136
|
+
f.params[u] && (delete f.params[u], await f.methods.loadTable());
|
|
3137
3137
|
},
|
|
3138
3138
|
loadTable: async (u) => {
|
|
3139
3139
|
if (!(!o.value || !o.value.hotInstance)) {
|
|
3140
|
-
i.value = !0, r.value = null, l("loading", !0),
|
|
3140
|
+
i.value = !0, r.value = null, l("loading", !0), xe.start(), f.hotInstance = o.value.hotInstance;
|
|
3141
3141
|
try {
|
|
3142
3142
|
if (a.dataProvider) {
|
|
3143
|
-
const y = await a.dataProvider(
|
|
3144
|
-
|
|
3143
|
+
const y = await a.dataProvider(f.computed.params);
|
|
3144
|
+
f.response = a.dataTransformer(y, a);
|
|
3145
3145
|
} else if (a.url) {
|
|
3146
3146
|
const y = await n.get(a.url, {
|
|
3147
|
-
params:
|
|
3147
|
+
params: f.computed.params
|
|
3148
3148
|
});
|
|
3149
|
-
|
|
3149
|
+
f.response = a.dataTransformer(y, a);
|
|
3150
3150
|
} else {
|
|
3151
|
-
console.error("No data provider or URL provided"), i.value = !1, l("loading", !1),
|
|
3151
|
+
console.error("No data provider or URL provided"), i.value = !1, l("loading", !1), xe.done();
|
|
3152
3152
|
return;
|
|
3153
3153
|
}
|
|
3154
3154
|
if (c) return;
|
|
3155
|
-
|
|
3156
|
-
const h =
|
|
3157
|
-
|
|
3158
|
-
y.width || h.calculateColumnsWidth(
|
|
3155
|
+
f.hotInstance.updateData(f.response.data), f.options.callback && typeof f.options.callback == "function" && await f.options.callback();
|
|
3156
|
+
const h = f.hotInstance.getPlugin("autoColumnSize");
|
|
3157
|
+
te(a.settings, "columns", []).forEach((y, w) => {
|
|
3158
|
+
y.width || h.calculateColumnsWidth(w, w, !0);
|
|
3159
3159
|
}), l("load", {
|
|
3160
|
-
data:
|
|
3161
|
-
meta:
|
|
3160
|
+
data: f.response.data,
|
|
3161
|
+
meta: f.response.meta
|
|
3162
3162
|
}), u && typeof u == "function" && u();
|
|
3163
3163
|
} catch (h) {
|
|
3164
3164
|
r.value = h, l("error", h), console.error("Error loading table data:", h);
|
|
3165
3165
|
} finally {
|
|
3166
|
-
i.value = !1, l("loading", !1),
|
|
3166
|
+
i.value = !1, l("loading", !1), xe.done();
|
|
3167
3167
|
}
|
|
3168
3168
|
}
|
|
3169
3169
|
},
|
|
@@ -3172,46 +3172,46 @@ const eo = (e) => {
|
|
|
3172
3172
|
fireEvent: (u, h) => {
|
|
3173
3173
|
l(u, h);
|
|
3174
3174
|
},
|
|
3175
|
-
getSettingsForProp: (u) =>
|
|
3175
|
+
getSettingsForProp: (u) => us(te(f.tableSettings, "columns"), { data: u }),
|
|
3176
3176
|
// Helper methods for easier param access
|
|
3177
|
-
getParams: () =>
|
|
3178
|
-
getParam: (u) =>
|
|
3177
|
+
getParams: () => f.computed.params,
|
|
3178
|
+
getParam: (u) => f.computed.params[u],
|
|
3179
3179
|
setParam: (u, h) => {
|
|
3180
|
-
|
|
3180
|
+
f.methods.applyParams({ [u]: h });
|
|
3181
3181
|
},
|
|
3182
|
-
clearParam: (u) =>
|
|
3182
|
+
clearParam: (u) => f.methods.removeParam(u),
|
|
3183
3183
|
clearParams: (u) => {
|
|
3184
3184
|
(Array.isArray(u) ? u : [u]).forEach((x) => {
|
|
3185
|
-
|
|
3186
|
-
}),
|
|
3185
|
+
f.params[x] !== void 0 && delete f.params[x];
|
|
3186
|
+
}), f.methods.applyParams({ page: 1 });
|
|
3187
3187
|
}
|
|
3188
3188
|
},
|
|
3189
3189
|
computed: {
|
|
3190
3190
|
params: L(() => ({
|
|
3191
3191
|
...a.params,
|
|
3192
|
-
...
|
|
3192
|
+
...f.params
|
|
3193
3193
|
})),
|
|
3194
|
-
ready: L(() =>
|
|
3194
|
+
ready: L(() => ds(f, "response.meta.last_page"))
|
|
3195
3195
|
},
|
|
3196
3196
|
options: L(() => ({
|
|
3197
|
-
|
|
3197
|
+
...$e,
|
|
3198
3198
|
...a.options
|
|
3199
3199
|
})),
|
|
3200
3200
|
tableSettings: L(() => ({
|
|
3201
3201
|
...Ee,
|
|
3202
|
-
nestedHeaders:
|
|
3203
|
-
...!
|
|
3204
|
-
afterGetColHeader: (u, h) =>
|
|
3202
|
+
nestedHeaders: te(a.settings, "nestedHeaders", []),
|
|
3203
|
+
...!te(a.settings, "nestedHeaders") && {
|
|
3204
|
+
afterGetColHeader: (u, h) => Na(u, h, f)
|
|
3205
3205
|
},
|
|
3206
|
-
afterChange: (u, h) =>
|
|
3207
|
-
afterRender: () =>
|
|
3206
|
+
afterChange: (u, h) => po(),
|
|
3207
|
+
afterRender: () => Ua(f),
|
|
3208
3208
|
/**
|
|
3209
3209
|
* Prevent columns with explicit width from being stretched
|
|
3210
3210
|
* This hook fires BEFORE stretchH is applied, allowing us to cap specific columns
|
|
3211
3211
|
* while letting others stretch normally
|
|
3212
3212
|
*/
|
|
3213
3213
|
beforeStretchingColumnWidth: (u, h) => {
|
|
3214
|
-
const y =
|
|
3214
|
+
const y = te(a.settings, "columns", [])[h];
|
|
3215
3215
|
return y && y.width !== void 0 ? y.width : u;
|
|
3216
3216
|
},
|
|
3217
3217
|
/**
|
|
@@ -3221,21 +3221,21 @@ const eo = (e) => {
|
|
|
3221
3221
|
beforeCopy: (u, h) => {
|
|
3222
3222
|
const x = o.value?.hotInstance;
|
|
3223
3223
|
x && h.forEach((y) => {
|
|
3224
|
-
for (let
|
|
3225
|
-
for (let
|
|
3226
|
-
const
|
|
3227
|
-
if (
|
|
3228
|
-
const
|
|
3229
|
-
u[
|
|
3224
|
+
for (let w = y.startRow; w <= y.endRow; w++)
|
|
3225
|
+
for (let T = y.startCol; T <= y.endCol; T++) {
|
|
3226
|
+
const F = x.getCell(w, T);
|
|
3227
|
+
if (F) {
|
|
3228
|
+
const j = w - h[0].startRow, me = T - h[0].startCol;
|
|
3229
|
+
u[j][me] = F.dataset.copyValue ?? F.textContent ?? "";
|
|
3230
3230
|
}
|
|
3231
3231
|
}
|
|
3232
3232
|
});
|
|
3233
3233
|
},
|
|
3234
3234
|
...a.settings
|
|
3235
3235
|
}))
|
|
3236
|
-
}),
|
|
3237
|
-
() =>
|
|
3238
|
-
),
|
|
3236
|
+
}), p = L(
|
|
3237
|
+
() => f.computed.ready && f.response.data?.length === 0
|
|
3238
|
+
), k = (u) => {
|
|
3239
3239
|
if (!u) return null;
|
|
3240
3240
|
switch (u.type) {
|
|
3241
3241
|
case "search":
|
|
@@ -3247,133 +3247,133 @@ const eo = (e) => {
|
|
|
3247
3247
|
default:
|
|
3248
3248
|
return null;
|
|
3249
3249
|
}
|
|
3250
|
-
}, _ = (u) => u ? typeof u.enabled == "function" ? u.enabled(
|
|
3251
|
-
if (
|
|
3252
|
-
() => ({ ...
|
|
3250
|
+
}, _ = (u) => u ? typeof u.enabled == "function" ? u.enabled(f.params) : u.enabled : !1, b = L(() => Object.entries(a.plugins).filter(([u, h]) => _(h)).map(([u, h]) => ({ name: u, config: h })));
|
|
3251
|
+
if (U(
|
|
3252
|
+
() => ({ ...f.params }),
|
|
3253
3253
|
() => {
|
|
3254
3254
|
const u = [];
|
|
3255
3255
|
Object.values(a.plugins).forEach((h) => {
|
|
3256
|
-
const x =
|
|
3256
|
+
const x = k(h);
|
|
3257
3257
|
if (!x) return;
|
|
3258
|
-
const y = _(h),
|
|
3259
|
-
!y &&
|
|
3258
|
+
const y = _(h), w = f.params[x] !== void 0;
|
|
3259
|
+
!y && w && u.push(x);
|
|
3260
3260
|
}), u.length > 0 && u.forEach((h) => {
|
|
3261
|
-
delete
|
|
3261
|
+
delete f.params[h];
|
|
3262
3262
|
});
|
|
3263
3263
|
},
|
|
3264
3264
|
{ deep: !0, flush: "sync" }
|
|
3265
3265
|
), a.syncToRoute || a.persistToStorage) {
|
|
3266
3266
|
const u = typeof a.syncToRoute == "string";
|
|
3267
|
-
|
|
3267
|
+
fo(f, {
|
|
3268
3268
|
namespace: u ? a.syncToRoute : null,
|
|
3269
3269
|
syncToRoute: !!a.syncToRoute,
|
|
3270
3270
|
persistToStorage: a.persistToStorage
|
|
3271
3271
|
});
|
|
3272
3272
|
}
|
|
3273
|
-
return
|
|
3273
|
+
return Pe(
|
|
3274
3274
|
() => a.params,
|
|
3275
3275
|
async () => {
|
|
3276
|
-
|
|
3276
|
+
f.params.page = 1, await f.methods.loadTable();
|
|
3277
3277
|
},
|
|
3278
3278
|
{ debounce: 50, maxWait: 1e3 }
|
|
3279
|
-
),
|
|
3280
|
-
() =>
|
|
3279
|
+
), Pe(
|
|
3280
|
+
() => f.params,
|
|
3281
3281
|
async () => {
|
|
3282
|
-
await
|
|
3282
|
+
await f.methods.loadTable();
|
|
3283
3283
|
},
|
|
3284
3284
|
{ debounce: 50, maxWait: 1e3 }
|
|
3285
|
-
),
|
|
3285
|
+
), U(
|
|
3286
3286
|
() => a.url,
|
|
3287
3287
|
async (u, h) => {
|
|
3288
|
-
u !== h && (
|
|
3288
|
+
u !== h && (f.params.page = 1, await f.methods.loadTable());
|
|
3289
3289
|
}
|
|
3290
|
-
),
|
|
3291
|
-
await
|
|
3292
|
-
}),
|
|
3290
|
+
), pe(async () => {
|
|
3291
|
+
await f.methods.loadTable(), l("ready");
|
|
3292
|
+
}), ze(() => {
|
|
3293
3293
|
c = !0;
|
|
3294
|
-
}),
|
|
3295
|
-
refresh: () =>
|
|
3296
|
-
getParams: () =>
|
|
3297
|
-
getParam: (u) =>
|
|
3298
|
-
setParam: (u, h) =>
|
|
3299
|
-
clearParam: (u) =>
|
|
3300
|
-
clearParams: (u) =>
|
|
3301
|
-
applyParams: (u) =>
|
|
3294
|
+
}), uo(f), s({
|
|
3295
|
+
refresh: () => f.methods.loadTable(),
|
|
3296
|
+
getParams: () => f.methods.getParams(),
|
|
3297
|
+
getParam: (u) => f.methods.getParam(u),
|
|
3298
|
+
setParam: (u, h) => f.methods.setParam(u, h),
|
|
3299
|
+
clearParam: (u) => f.methods.clearParam(u),
|
|
3300
|
+
clearParams: (u) => f.methods.clearParams(u),
|
|
3301
|
+
applyParams: (u) => f.methods.applyParams(u),
|
|
3302
3302
|
loading: i,
|
|
3303
3303
|
error: r,
|
|
3304
|
-
sparkTable:
|
|
3304
|
+
sparkTable: f,
|
|
3305
3305
|
table: o
|
|
3306
3306
|
}), (u, h) => {
|
|
3307
|
-
const x =
|
|
3308
|
-
return m(), v("div",
|
|
3309
|
-
|
|
3307
|
+
const x = A("font-awesome-icon");
|
|
3308
|
+
return m(), v("div", Zo, [
|
|
3309
|
+
f.computed.ready && b.value && b.value.length ? (m(), H(Ae, {
|
|
3310
3310
|
key: 0,
|
|
3311
3311
|
position: "header"
|
|
3312
3312
|
}, {
|
|
3313
3313
|
default: P(() => [
|
|
3314
|
-
(m(!0), v(E, null,
|
|
3314
|
+
(m(!0), v(E, null, N(b.value, (y) => (m(), H(W(d[y.config.type]), {
|
|
3315
3315
|
key: y.name,
|
|
3316
3316
|
class: V(y.config.align ? `self-${y.config.align}` : ""),
|
|
3317
|
-
"spark-table":
|
|
3317
|
+
"spark-table": f,
|
|
3318
3318
|
config: y.config
|
|
3319
3319
|
}, null, 8, ["class", "spark-table", "config"]))), 128)),
|
|
3320
|
-
|
|
3321
|
-
sparkTable:
|
|
3320
|
+
z(u.$slots, "header", {
|
|
3321
|
+
sparkTable: f,
|
|
3322
3322
|
loading: i.value,
|
|
3323
3323
|
error: r.value
|
|
3324
3324
|
})
|
|
3325
3325
|
]),
|
|
3326
3326
|
_: 3
|
|
3327
|
-
})) : (m(), v("div",
|
|
3328
|
-
|
|
3327
|
+
})) : (m(), v("div", Wo)),
|
|
3328
|
+
xt(S(C(ps), {
|
|
3329
3329
|
"theme-name": "ht-theme-classic",
|
|
3330
3330
|
ref_key: "table",
|
|
3331
3331
|
ref: o,
|
|
3332
|
-
settings:
|
|
3332
|
+
settings: f.tableSettings
|
|
3333
3333
|
}, null, 8, ["settings"]), [
|
|
3334
|
-
[
|
|
3334
|
+
[wt, !p.value]
|
|
3335
3335
|
]),
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
icon:
|
|
3336
|
+
p.value ? (m(), v("div", Ko, [
|
|
3337
|
+
S(x, {
|
|
3338
|
+
icon: C(R).farInbox,
|
|
3339
3339
|
class: "size-12 mb-4 text-gray-300"
|
|
3340
3340
|
}, null, 8, ["icon"]),
|
|
3341
3341
|
h[0] || (h[0] = g("p", { class: "text-sm" }, "No records found", -1))
|
|
3342
|
-
])) :
|
|
3343
|
-
|
|
3342
|
+
])) : $("", !0),
|
|
3343
|
+
f.computed.ready ? (m(), H(Ae, {
|
|
3344
3344
|
key: 3,
|
|
3345
3345
|
position: "footer"
|
|
3346
3346
|
}, {
|
|
3347
3347
|
default: P(() => [
|
|
3348
|
-
|
|
3348
|
+
p.value ? $("", !0) : (m(), H(xo, {
|
|
3349
3349
|
key: 0,
|
|
3350
|
-
"spark-table":
|
|
3350
|
+
"spark-table": f
|
|
3351
3351
|
}, null, 8, ["spark-table"])),
|
|
3352
|
-
g("div",
|
|
3353
|
-
|
|
3352
|
+
g("div", Go, [
|
|
3353
|
+
p.value ? $("", !0) : (m(), H(Co, {
|
|
3354
3354
|
key: 0,
|
|
3355
|
-
"spark-table":
|
|
3356
|
-
onPaginate:
|
|
3355
|
+
"spark-table": f,
|
|
3356
|
+
onPaginate: f.methods.applyParams
|
|
3357
3357
|
}, null, 8, ["spark-table", "onPaginate"])),
|
|
3358
|
-
|
|
3359
|
-
"spark-table":
|
|
3360
|
-
onPaginate:
|
|
3358
|
+
S(Lo, {
|
|
3359
|
+
"spark-table": f,
|
|
3360
|
+
onPaginate: f.methods.applyParams
|
|
3361
3361
|
}, null, 8, ["spark-table", "onPaginate"]),
|
|
3362
|
-
|
|
3363
|
-
sparkTable:
|
|
3362
|
+
z(u.$slots, "footer", {
|
|
3363
|
+
sparkTable: f,
|
|
3364
3364
|
loading: i.value,
|
|
3365
3365
|
error: r.value
|
|
3366
3366
|
})
|
|
3367
3367
|
])
|
|
3368
3368
|
]),
|
|
3369
3369
|
_: 3
|
|
3370
|
-
})) :
|
|
3370
|
+
})) : $("", !0)
|
|
3371
3371
|
]);
|
|
3372
3372
|
};
|
|
3373
3373
|
}
|
|
3374
3374
|
};
|
|
3375
|
-
function
|
|
3376
|
-
const e =
|
|
3375
|
+
function Ie() {
|
|
3376
|
+
const e = G({
|
|
3377
3377
|
isVisible: !1,
|
|
3378
3378
|
content: null,
|
|
3379
3379
|
props: {},
|
|
@@ -3399,9 +3399,9 @@ function Ae() {
|
|
|
3399
3399
|
}
|
|
3400
3400
|
};
|
|
3401
3401
|
}
|
|
3402
|
-
class
|
|
3402
|
+
class Xo {
|
|
3403
3403
|
constructor() {
|
|
3404
|
-
this.left =
|
|
3404
|
+
this.left = Ie(), this.right = Ie();
|
|
3405
3405
|
}
|
|
3406
3406
|
showLeft = (s, t = {}, a = {}, l = {}) => {
|
|
3407
3407
|
const n = {
|
|
@@ -3431,37 +3431,37 @@ class Yo {
|
|
|
3431
3431
|
this.left.close(), this.right.close();
|
|
3432
3432
|
};
|
|
3433
3433
|
}
|
|
3434
|
-
const ae = new
|
|
3434
|
+
const ae = new Xo(), Jo = (e) => {
|
|
3435
3435
|
const s = document.cookie.match(new RegExp(`(^| )${e}=([^;]+)`));
|
|
3436
3436
|
return s ? s[2] : null;
|
|
3437
|
-
},
|
|
3437
|
+
}, Qo = (e, s, t = {}) => {
|
|
3438
3438
|
const {
|
|
3439
3439
|
maxAge: a = 31536e3,
|
|
3440
3440
|
// 365 days in seconds
|
|
3441
|
-
domain: l =
|
|
3441
|
+
domain: l = mt(),
|
|
3442
3442
|
secure: n = !0,
|
|
3443
3443
|
sameSite: o = "Lax",
|
|
3444
3444
|
path: i = "/"
|
|
3445
3445
|
} = t;
|
|
3446
3446
|
let r = `${e}=${s}; max-age=${a}; path=${i}; samesite=${o}`;
|
|
3447
3447
|
l && (r += `; domain=${l}`), n && (r += "; secure"), document.cookie = r;
|
|
3448
|
-
},
|
|
3449
|
-
const { domain: t =
|
|
3448
|
+
}, er = (e, s = {}) => {
|
|
3449
|
+
const { domain: t = mt(), path: a = "/" } = s;
|
|
3450
3450
|
let l = `${e}=; max-age=0; path=${a}`;
|
|
3451
3451
|
t && (l += `; domain=${t}`), document.cookie = l;
|
|
3452
|
-
},
|
|
3452
|
+
}, mt = () => {
|
|
3453
3453
|
const e = window.location.hostname;
|
|
3454
3454
|
return e === "localhost" ? "localhost" : e.endsWith(".test") || e.endsWith(".io") ? "." + e.split(".").slice(-2).join(".") : e.endsWith(".com.au") ? "." + e.split(".").slice(-3).join(".") : e;
|
|
3455
|
-
},
|
|
3456
|
-
function
|
|
3457
|
-
|
|
3455
|
+
}, gt = [];
|
|
3456
|
+
function tr(e) {
|
|
3457
|
+
gt.push(e);
|
|
3458
3458
|
}
|
|
3459
|
-
function
|
|
3460
|
-
|
|
3459
|
+
function sr() {
|
|
3460
|
+
gt.forEach((e) => e());
|
|
3461
3461
|
}
|
|
3462
3462
|
function dl(e) {
|
|
3463
3463
|
let s = !1;
|
|
3464
|
-
return
|
|
3464
|
+
return tr(() => {
|
|
3465
3465
|
s = !1;
|
|
3466
3466
|
}), {
|
|
3467
3467
|
bootstrapApp: async () => {
|
|
@@ -3474,8 +3474,8 @@ function dl(e) {
|
|
|
3474
3474
|
}
|
|
3475
3475
|
};
|
|
3476
3476
|
}
|
|
3477
|
-
const
|
|
3478
|
-
const e =
|
|
3477
|
+
const _e = "bolt-next-token", Q = fe("auth", () => {
|
|
3478
|
+
const e = G({
|
|
3479
3479
|
user: null,
|
|
3480
3480
|
token: null,
|
|
3481
3481
|
ready: !1,
|
|
@@ -3510,12 +3510,12 @@ const we = "bolt-next-token", Q = pe("auth", () => {
|
|
|
3510
3510
|
}), s = (c = {}) => {
|
|
3511
3511
|
c.endpoints && Object.assign(e.endpoints, c.endpoints), c.routes && Object.assign(e.routes, c.routes), c.devCredentials && Object.assign(e.devCredentials, c.devCredentials), c.callbacks && Object.assign(e.callbacks, c.callbacks), c.overrideToken && (e.overrideToken = c.overrideToken);
|
|
3512
3512
|
}, t = (c) => {
|
|
3513
|
-
|
|
3513
|
+
Qo(_e, c), e.token = c;
|
|
3514
3514
|
}, a = () => {
|
|
3515
|
-
|
|
3516
|
-
}, l = () =>
|
|
3517
|
-
const d = await le.post(e.endpoints.login, c),
|
|
3518
|
-
return t(
|
|
3515
|
+
er(_e), e.token = null;
|
|
3516
|
+
}, l = () => Jo(_e), n = async (c) => {
|
|
3517
|
+
const d = await le.post(e.endpoints.login, c), f = d.headers.authorization;
|
|
3518
|
+
return t(f), e.user = d.data, e.callbacks.onLoginSuccess && await e.callbacks.onLoginSuccess(d.data), d.data;
|
|
3519
3519
|
}, o = async () => {
|
|
3520
3520
|
try {
|
|
3521
3521
|
await le.post(
|
|
@@ -3530,7 +3530,7 @@ const we = "bolt-next-token", Q = pe("auth", () => {
|
|
|
3530
3530
|
} catch (c) {
|
|
3531
3531
|
throw e.callbacks.onLogoutError && await e.callbacks.onLogoutError(c), c;
|
|
3532
3532
|
} finally {
|
|
3533
|
-
a(), e.user = null,
|
|
3533
|
+
a(), e.user = null, sr();
|
|
3534
3534
|
}
|
|
3535
3535
|
}, i = async () => {
|
|
3536
3536
|
const c = e.overrideToken || l();
|
|
@@ -3561,7 +3561,7 @@ const we = "bolt-next-token", Q = pe("auth", () => {
|
|
|
3561
3561
|
getTokenCookie: l
|
|
3562
3562
|
};
|
|
3563
3563
|
});
|
|
3564
|
-
function
|
|
3564
|
+
function ar(e = {}) {
|
|
3565
3565
|
const s = le.create({
|
|
3566
3566
|
baseURL: e.baseURL || "",
|
|
3567
3567
|
timeout: e.timeout || 3e4,
|
|
@@ -3603,9 +3603,9 @@ function sr(e = {}) {
|
|
|
3603
3603
|
}
|
|
3604
3604
|
let ne = null;
|
|
3605
3605
|
function pl(e, s = {}) {
|
|
3606
|
-
return ne =
|
|
3606
|
+
return ne = ar(s), e.provide("axios", ne), e.config.globalProperties.$axios = ne, ne;
|
|
3607
3607
|
}
|
|
3608
|
-
function
|
|
3608
|
+
function ve() {
|
|
3609
3609
|
if (!ne)
|
|
3610
3610
|
throw new Error("Axios instance not initialized. Call setupAxios() first.");
|
|
3611
3611
|
return ne;
|
|
@@ -3621,70 +3621,136 @@ function rr(e) {
|
|
|
3621
3621
|
}
|
|
3622
3622
|
function fl(e = {}) {
|
|
3623
3623
|
const {
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3624
|
+
endpoint: s = null,
|
|
3625
|
+
successMessage: t = "Saved successfully!",
|
|
3626
|
+
createMessage: a = "Created successfully!",
|
|
3627
|
+
updateMessage: l = "Updated successfully!",
|
|
3628
|
+
redirectTo: n = null,
|
|
3629
|
+
onSuccess: o = null,
|
|
3630
|
+
onError: i = null,
|
|
3631
|
+
showNotification: r = !0,
|
|
3632
|
+
setFieldErrors: c = !0,
|
|
3633
|
+
setFormErrors: d = !0
|
|
3634
|
+
} = e, f = Y(), p = D(!1);
|
|
3635
|
+
async function k(u) {
|
|
3636
|
+
const { submitFn: h, method: x = "create", node: y = null, isEditMode: w = !1 } = u;
|
|
3637
|
+
p.value = !0, y && y.clearErrors();
|
|
3637
3638
|
try {
|
|
3638
|
-
const
|
|
3639
|
-
if (
|
|
3640
|
-
const
|
|
3641
|
-
|
|
3639
|
+
const F = (await h()).data;
|
|
3640
|
+
if (o && await o(F), !w && n) {
|
|
3641
|
+
const j = typeof n == "function" ? n(F) : n;
|
|
3642
|
+
await f.push(j);
|
|
3643
|
+
}
|
|
3644
|
+
if (r) {
|
|
3645
|
+
const j = w ? l : x === "create" ? a : t;
|
|
3646
|
+
B.toast({
|
|
3642
3647
|
type: "success",
|
|
3643
|
-
message:
|
|
3648
|
+
message: j
|
|
3644
3649
|
});
|
|
3645
3650
|
}
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
return { success: !1, data: null, error: y };
|
|
3655
|
-
if (rr(k)) {
|
|
3656
|
-
const $ = or(k);
|
|
3657
|
-
$ && h && r && h.setErrors([], $), c && j.show({
|
|
3651
|
+
return { success: !0, data: F, error: null };
|
|
3652
|
+
} catch (T) {
|
|
3653
|
+
const F = T.response;
|
|
3654
|
+
if (i && await i(T) === !0)
|
|
3655
|
+
return { success: !1, data: null, error: T };
|
|
3656
|
+
if (rr(F)) {
|
|
3657
|
+
const j = or(F);
|
|
3658
|
+
j && y && c && y.setErrors([], j), d && (B.show({
|
|
3658
3659
|
type: "danger",
|
|
3659
|
-
message: Oe(
|
|
3660
|
-
});
|
|
3660
|
+
message: Oe(F)
|
|
3661
|
+
}), window.scrollTo({ top: 0, behavior: "smooth" }));
|
|
3661
3662
|
} else
|
|
3662
|
-
|
|
3663
|
+
B.show({
|
|
3663
3664
|
type: "danger",
|
|
3664
|
-
message: Oe(
|
|
3665
|
-
});
|
|
3666
|
-
return { success: !1, data: null, error:
|
|
3665
|
+
message: Oe(F)
|
|
3666
|
+
}), window.scrollTo({ top: 0, behavior: "smooth" });
|
|
3667
|
+
return { success: !1, data: null, error: T };
|
|
3667
3668
|
} finally {
|
|
3668
3669
|
p.value = !1;
|
|
3669
3670
|
}
|
|
3670
3671
|
}
|
|
3671
|
-
async function
|
|
3672
|
-
const { url:
|
|
3673
|
-
return
|
|
3674
|
-
submitFn: () =>
|
|
3675
|
-
method:
|
|
3676
|
-
node:
|
|
3677
|
-
isEditMode:
|
|
3672
|
+
async function _(u) {
|
|
3673
|
+
const { url: h, payload: x, method: y = "post", node: w, isEditMode: T } = u, F = ve();
|
|
3674
|
+
return k({
|
|
3675
|
+
submitFn: () => F[y](h, x),
|
|
3676
|
+
method: T ? "update" : "create",
|
|
3677
|
+
node: w,
|
|
3678
|
+
isEditMode: T
|
|
3678
3679
|
});
|
|
3679
3680
|
}
|
|
3681
|
+
async function b(u) {
|
|
3682
|
+
const { payload: h, node: x, resourceId: y, isEditMode: w } = u, T = w ? `/${s}/${y}` : `/${s}`;
|
|
3683
|
+
return _({ url: T, payload: h, method: w ? "put" : "post", node: x, isEditMode: w });
|
|
3684
|
+
}
|
|
3680
3685
|
return {
|
|
3681
3686
|
submitting: p,
|
|
3682
|
-
submit:
|
|
3683
|
-
submitToApi:
|
|
3687
|
+
submit: k,
|
|
3688
|
+
submitToApi: _,
|
|
3689
|
+
...s ? { submitCrud: b } : {}
|
|
3684
3690
|
};
|
|
3685
3691
|
}
|
|
3686
|
-
function ml(e = {}) {
|
|
3687
|
-
const {
|
|
3692
|
+
function ml(e, s = {}) {
|
|
3693
|
+
const { queryParams: t = "", fetchFn: a = null, fetchOnCreate: l = !1 } = s, n = ee(), o = D(null), i = D(null), r = L(() => n.params.id ?? null), c = L(() => r.value !== null);
|
|
3694
|
+
async function d() {
|
|
3695
|
+
if (!(!l && !c.value)) {
|
|
3696
|
+
i.value = null;
|
|
3697
|
+
try {
|
|
3698
|
+
if (a) {
|
|
3699
|
+
const p = await a({
|
|
3700
|
+
axios: ve(),
|
|
3701
|
+
resourceId: r.value,
|
|
3702
|
+
isEditMode: c.value,
|
|
3703
|
+
route: n
|
|
3704
|
+
});
|
|
3705
|
+
p !== void 0 && (o.value = p);
|
|
3706
|
+
} else {
|
|
3707
|
+
const p = ve();
|
|
3708
|
+
let k = `/${e}/${r.value}`;
|
|
3709
|
+
t && (k += `?${t}`);
|
|
3710
|
+
const _ = await p.get(k);
|
|
3711
|
+
o.value = _.data;
|
|
3712
|
+
}
|
|
3713
|
+
} catch (p) {
|
|
3714
|
+
i.value = p.response?.data?.message || p.message || "Failed to load data.";
|
|
3715
|
+
}
|
|
3716
|
+
}
|
|
3717
|
+
}
|
|
3718
|
+
function f() {
|
|
3719
|
+
c.value && d();
|
|
3720
|
+
}
|
|
3721
|
+
return pe(() => {
|
|
3722
|
+
(l || c.value) && d();
|
|
3723
|
+
}), { data: o, error: i, resourceId: r, isEditMode: c, fetch: d, handleSuccess: f };
|
|
3724
|
+
}
|
|
3725
|
+
function gl(e, s = {}) {
|
|
3726
|
+
const {
|
|
3727
|
+
endpoint: t,
|
|
3728
|
+
successMessage: a,
|
|
3729
|
+
errorMessage: l,
|
|
3730
|
+
onSuccess: n,
|
|
3731
|
+
onError: o
|
|
3732
|
+
} = s;
|
|
3733
|
+
async function i(r) {
|
|
3734
|
+
try {
|
|
3735
|
+
await ve().delete(`/${t}/${r.id}`);
|
|
3736
|
+
} catch (c) {
|
|
3737
|
+
if (o && o(c, r))
|
|
3738
|
+
return;
|
|
3739
|
+
B.show({
|
|
3740
|
+
type: "danger",
|
|
3741
|
+
message: l || c.response?.data?.message || "Failed to delete."
|
|
3742
|
+
}), console.error(c);
|
|
3743
|
+
return;
|
|
3744
|
+
}
|
|
3745
|
+
B.show({
|
|
3746
|
+
type: "success",
|
|
3747
|
+
message: a || "Deleted successfully."
|
|
3748
|
+
}), n && n(r), e?.value?.refresh && e.value.refresh();
|
|
3749
|
+
}
|
|
3750
|
+
return { handleDelete: i };
|
|
3751
|
+
}
|
|
3752
|
+
function hl(e = {}) {
|
|
3753
|
+
const { items: s = [], defaultId: t = null } = e, a = Y(), l = ee(), n = D(s.map(o));
|
|
3688
3754
|
function o(u) {
|
|
3689
3755
|
return {
|
|
3690
3756
|
id: u.id,
|
|
@@ -3720,11 +3786,11 @@ function ml(e = {}) {
|
|
|
3720
3786
|
}
|
|
3721
3787
|
return !1;
|
|
3722
3788
|
}
|
|
3723
|
-
const
|
|
3789
|
+
const f = L(() => {
|
|
3724
3790
|
const u = r.value.find((h) => d(h));
|
|
3725
3791
|
return u || (t ? r.value.find((h) => h.id === t) || r.value[0] : r.value[0] || null);
|
|
3726
|
-
}),
|
|
3727
|
-
async function
|
|
3792
|
+
}), p = L(() => f.value?.id || null);
|
|
3793
|
+
async function k(u) {
|
|
3728
3794
|
const h = typeof u == "string" ? n.value.find((x) => x.id === u) : u;
|
|
3729
3795
|
if (!h)
|
|
3730
3796
|
return console.warn(`[useSubNavigation] Item not found: ${u}`), !1;
|
|
@@ -3735,12 +3801,12 @@ function ml(e = {}) {
|
|
|
3735
3801
|
return await a.push(x), !0;
|
|
3736
3802
|
}
|
|
3737
3803
|
if (h.overlay) {
|
|
3738
|
-
const { component: x, props: y = {}, eventHandlers:
|
|
3739
|
-
return ae[
|
|
3804
|
+
const { component: x, props: y = {}, eventHandlers: w = {}, position: T = "right", size: F } = h.overlay;
|
|
3805
|
+
return ae[T === "left" ? "showLeft" : "showRight"](ce(x), y, w, { size: F }), !0;
|
|
3740
3806
|
}
|
|
3741
3807
|
if (h.modal) {
|
|
3742
|
-
const { component: x, props: y = {}, eventHandlers:
|
|
3743
|
-
return J.show(ce(x), y,
|
|
3808
|
+
const { component: x, props: y = {}, eventHandlers: w = {} } = h.modal;
|
|
3809
|
+
return J.show(ce(x), y, w), !0;
|
|
3744
3810
|
}
|
|
3745
3811
|
if (h.action) {
|
|
3746
3812
|
const x = h.action(h);
|
|
@@ -3758,9 +3824,9 @@ function ml(e = {}) {
|
|
|
3758
3824
|
return {
|
|
3759
3825
|
items: n,
|
|
3760
3826
|
visibleItems: r,
|
|
3761
|
-
activeItem:
|
|
3762
|
-
activeId:
|
|
3763
|
-
navigateTo:
|
|
3827
|
+
activeItem: f,
|
|
3828
|
+
activeId: p,
|
|
3829
|
+
navigateTo: k,
|
|
3764
3830
|
isActive: d,
|
|
3765
3831
|
isDisabled: c,
|
|
3766
3832
|
setItems: _,
|
|
@@ -3785,14 +3851,14 @@ function cr() {
|
|
|
3785
3851
|
for (const e of ie.values())
|
|
3786
3852
|
e.isDirty = !1;
|
|
3787
3853
|
}
|
|
3788
|
-
function
|
|
3854
|
+
function yl(e = {}) {
|
|
3789
3855
|
const {
|
|
3790
3856
|
message: s = "You have unsaved changes. Leave anyway?",
|
|
3791
3857
|
title: t = "Unsaved Changes",
|
|
3792
3858
|
confirmText: a = "Leave",
|
|
3793
3859
|
cancelText: l = "Stay",
|
|
3794
3860
|
useRouteGuard: n = !0
|
|
3795
|
-
} = e, o = `form-${++nr}`, i =
|
|
3861
|
+
} = e, o = `form-${++nr}`, i = D(!1);
|
|
3796
3862
|
ie.set(o, {
|
|
3797
3863
|
isDirty: !1,
|
|
3798
3864
|
message: s
|
|
@@ -3815,27 +3881,36 @@ function gl(e = {}) {
|
|
|
3815
3881
|
});
|
|
3816
3882
|
return u && c(), u;
|
|
3817
3883
|
};
|
|
3818
|
-
let
|
|
3819
|
-
const
|
|
3884
|
+
let f = !1;
|
|
3885
|
+
const p = (b) => {
|
|
3820
3886
|
if (i.value)
|
|
3821
3887
|
return b.preventDefault(), b.returnValue = "", "";
|
|
3822
|
-
},
|
|
3823
|
-
|
|
3888
|
+
}, k = () => {
|
|
3889
|
+
f || (window.addEventListener("beforeunload", p), f = !0);
|
|
3824
3890
|
}, _ = () => {
|
|
3825
|
-
|
|
3891
|
+
f && (window.removeEventListener("beforeunload", p), f = !1);
|
|
3826
3892
|
};
|
|
3827
|
-
return n &&
|
|
3893
|
+
return n && is(async () => await d()), ze(() => {
|
|
3828
3894
|
ie.delete(o), _();
|
|
3829
3895
|
}), {
|
|
3830
3896
|
isDirty: i,
|
|
3831
3897
|
setDirty: r,
|
|
3832
3898
|
setClean: c,
|
|
3833
3899
|
checkDirty: d,
|
|
3834
|
-
enableBrowserWarning:
|
|
3900
|
+
enableBrowserWarning: k,
|
|
3835
3901
|
disableBrowserWarning: _
|
|
3836
3902
|
};
|
|
3837
3903
|
}
|
|
3838
|
-
const
|
|
3904
|
+
const vl = [
|
|
3905
|
+
{ label: "Australian Capital Territory", value: "ACT" },
|
|
3906
|
+
{ label: "New South Wales", value: "NSW" },
|
|
3907
|
+
{ label: "Northern Territory", value: "NT" },
|
|
3908
|
+
{ label: "Queensland", value: "QLD" },
|
|
3909
|
+
{ label: "South Australia", value: "SA" },
|
|
3910
|
+
{ label: "Tasmania", value: "TAS" },
|
|
3911
|
+
{ label: "Victoria", value: "VIC" },
|
|
3912
|
+
{ label: "Western Australia", value: "WA" }
|
|
3913
|
+
], ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex flex-1 flex-col" }, pr = {
|
|
3839
3914
|
class: "flex flex-1 flex-col gap-y-7",
|
|
3840
3915
|
role: "list"
|
|
3841
3916
|
}, fr = { class: "flex flex-1 flex-col" }, mr = {
|
|
@@ -3850,7 +3925,7 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3850
3925
|
}, br = ["href", "onClick"], xr = {
|
|
3851
3926
|
key: 1,
|
|
3852
3927
|
class: "text-[13px]"
|
|
3853
|
-
},
|
|
3928
|
+
}, wr = { class: "mt-auto" }, kr = { class: "p-[10px] flex-shrink-0" }, _r = { class: "flex flex-1 items-center gap-x-6" }, Sr = { class: "relative flex flex-1 items-center gap-4" }, Cr = { class: "cursor-pointer" }, Tr = ["src"], $r = { class: "ml-auto" }, Lr = { class: "mr-[10px] pb-[10px] flex-1 flex flex-col" }, bl = {
|
|
3854
3929
|
__name: "SparkDefaultContainer",
|
|
3855
3930
|
props: {
|
|
3856
3931
|
appStore: {
|
|
@@ -3868,16 +3943,16 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3868
3943
|
},
|
|
3869
3944
|
emits: ["overlayClose"],
|
|
3870
3945
|
setup(e, { emit: s }) {
|
|
3871
|
-
const t = e, a = s, l =
|
|
3946
|
+
const t = e, a = s, l = je(), n = ee(), o = (b) => b.href ? !!(b.href === n.name || b.href === n.path || n.path.startsWith(b.href + "/")) : !1, i = pt(), r = ct(), c = L(() => r.getAppIcon(t.appStore.state.app)), d = L(() => n.meta.hideBrandSelector === !0 ? !1 : t.appStore.state.showBrandSelector), f = () => {
|
|
3872
3947
|
const b = {};
|
|
3873
|
-
l["app-selector-bottom"] ? b.bottomSlot = () =>
|
|
3948
|
+
l["app-selector-bottom"] ? b.bottomSlot = () => Le("div", {}, l["app-selector-bottom"]()) : t.appSelectorSlots.bottomSlot && (b.bottomSlot = t.appSelectorSlots.bottomSlot), l["app-selector-footer"] ? b.footerSlot = () => Le("div", {}, l["app-selector-footer"]()) : t.appSelectorSlots.footerSlot && (b.footerSlot = t.appSelectorSlots.footerSlot), ae.showRight(js, b, {
|
|
3874
3949
|
select: (u) => {
|
|
3875
3950
|
ae.closeRight();
|
|
3876
3951
|
}
|
|
3877
3952
|
});
|
|
3878
|
-
},
|
|
3953
|
+
}, p = () => {
|
|
3879
3954
|
ae.showLeft(
|
|
3880
|
-
|
|
3955
|
+
ua,
|
|
3881
3956
|
{},
|
|
3882
3957
|
{
|
|
3883
3958
|
select: (b) => {
|
|
@@ -3885,12 +3960,12 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3885
3960
|
}
|
|
3886
3961
|
}
|
|
3887
3962
|
);
|
|
3888
|
-
},
|
|
3963
|
+
}, k = L(() => t.mainNavStore.state.hidden ? ["w-0 overflow-hidden"] : [t.mainNavStore.state.collapsed ? "w-[80px]" : "w-[240px]"]), _ = L(() => t.mainNavStore.state.hidden ? ["pl-2.5"] : [t.mainNavStore.state.collapsed ? "pl-[80px]" : "pl-[240px]"]);
|
|
3889
3964
|
return (b, u) => {
|
|
3890
|
-
const h =
|
|
3965
|
+
const h = A("font-awesome-icon"), x = A("router-view");
|
|
3891
3966
|
return m(), v(E, null, [
|
|
3892
3967
|
g("div", {
|
|
3893
|
-
class: V([
|
|
3968
|
+
class: V([k.value, "fixed inset-y-0 flex transition-all z-100"])
|
|
3894
3969
|
}, [
|
|
3895
3970
|
g("div", ur, [
|
|
3896
3971
|
g("nav", dr, [
|
|
@@ -3902,18 +3977,18 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3902
3977
|
class: "grid w-[40px] h-[40px] place-items-center rounded-md bg-primary-600 text-white text-[13px] cursor-pointer",
|
|
3903
3978
|
onClick: u[0] || (u[0] = O((y) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"]))
|
|
3904
3979
|
}, [
|
|
3905
|
-
|
|
3906
|
-
icon:
|
|
3980
|
+
S(h, {
|
|
3981
|
+
icon: C(R)[c.value],
|
|
3907
3982
|
class: "size-5"
|
|
3908
3983
|
}, null, 8, ["icon"])
|
|
3909
3984
|
]),
|
|
3910
|
-
e.mainNavStore.state.collapsed ?
|
|
3985
|
+
e.mainNavStore.state.collapsed ? $("", !0) : (m(), v("a", {
|
|
3911
3986
|
key: 0,
|
|
3912
3987
|
onClick: u[1] || (u[1] = O((y) => e.mainNavStore.goto(e.appStore.state.homeRoute), ["prevent"])),
|
|
3913
3988
|
class: "font-medium text-gray-800 ml-[10px] cursor-pointer"
|
|
3914
3989
|
}, M(e.appStore.state.app), 1))
|
|
3915
3990
|
]),
|
|
3916
|
-
(m(!0), v(E, null,
|
|
3991
|
+
(m(!0), v(E, null, N(e.mainNavStore.state.menu, (y) => (m(), v("li", {
|
|
3917
3992
|
key: y.name,
|
|
3918
3993
|
class: V({
|
|
3919
3994
|
"mt-[10px]": y.children,
|
|
@@ -3926,16 +4001,16 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3926
4001
|
"hover:bg-gray-100": y?.href
|
|
3927
4002
|
}, "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"]),
|
|
3928
4003
|
href: y?.href,
|
|
3929
|
-
onClick: O((
|
|
4004
|
+
onClick: O((w) => e.mainNavStore.goto(y.href), ["prevent"])
|
|
3930
4005
|
}, [
|
|
3931
4006
|
y.icon ? (m(), H(h, {
|
|
3932
4007
|
key: 0,
|
|
3933
|
-
icon:
|
|
4008
|
+
icon: C(R)[y.icon],
|
|
3934
4009
|
class: V([[(o(y), "text-gray-400")], "size-4"])
|
|
3935
|
-
}, null, 8, ["icon", "class"])) :
|
|
4010
|
+
}, null, 8, ["icon", "class"])) : $("", !0),
|
|
3936
4011
|
e.mainNavStore.state.collapsed ? y?.children ? (m(), v("div", yr, [...u[6] || (u[6] = [
|
|
3937
4012
|
g("div", { class: "w-[10px] h-px bg-gray-400" }, null, -1)
|
|
3938
|
-
])])) :
|
|
4013
|
+
])])) : $("", !0) : (m(), v("span", {
|
|
3939
4014
|
key: 1,
|
|
3940
4015
|
class: V({
|
|
3941
4016
|
"text-[11px]": y?.children,
|
|
@@ -3946,35 +4021,35 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3946
4021
|
}, M(y.name), 3))
|
|
3947
4022
|
], 10, hr),
|
|
3948
4023
|
y.children ? (m(), v("ul", vr, [
|
|
3949
|
-
(m(!0), v(E, null,
|
|
3950
|
-
key:
|
|
4024
|
+
(m(!0), v(E, null, N(y.children, (w) => (m(), v("li", {
|
|
4025
|
+
key: w.name
|
|
3951
4026
|
}, [
|
|
3952
4027
|
g("a", {
|
|
3953
|
-
class: V([[o(
|
|
3954
|
-
href:
|
|
3955
|
-
onClick: O((
|
|
4028
|
+
class: V([[o(w) ? "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"]),
|
|
4029
|
+
href: w.href,
|
|
4030
|
+
onClick: O((T) => e.mainNavStore.goto(w.href), ["prevent"])
|
|
3956
4031
|
}, [
|
|
3957
|
-
|
|
4032
|
+
w.icon ? (m(), H(h, {
|
|
3958
4033
|
key: 0,
|
|
3959
|
-
icon:
|
|
3960
|
-
class: V([[(o(
|
|
3961
|
-
}, null, 8, ["icon", "class"])) :
|
|
3962
|
-
e.mainNavStore.state.collapsed ?
|
|
4034
|
+
icon: C(R)[w.icon],
|
|
4035
|
+
class: V([[(o(w), "text-gray-400")], "size-4"])
|
|
4036
|
+
}, null, 8, ["icon", "class"])) : $("", !0),
|
|
4037
|
+
e.mainNavStore.state.collapsed ? $("", !0) : (m(), v("span", xr, M(w.name), 1))
|
|
3963
4038
|
], 10, br)
|
|
3964
4039
|
]))), 128))
|
|
3965
|
-
])) :
|
|
4040
|
+
])) : $("", !0)
|
|
3966
4041
|
], 2))), 128))
|
|
3967
4042
|
])
|
|
3968
4043
|
]),
|
|
3969
|
-
g("li",
|
|
3970
|
-
|
|
4044
|
+
g("li", wr, [
|
|
4045
|
+
z(b.$slots, "sidebar-footer"),
|
|
3971
4046
|
g("a", {
|
|
3972
4047
|
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",
|
|
3973
4048
|
href: "#",
|
|
3974
4049
|
onClick: u[2] || (u[2] = O((y) => e.mainNavStore.toggleCollapsed(), ["prevent"]))
|
|
3975
4050
|
}, [
|
|
3976
|
-
|
|
3977
|
-
icon:
|
|
4051
|
+
S(h, {
|
|
4052
|
+
icon: C(R)[e.mainNavStore.state.collapsed ? "farArrowRightToLine" : "farArrowLeftToLine"],
|
|
3978
4053
|
class: "class-5"
|
|
3979
4054
|
}, null, 8, ["icon"])
|
|
3980
4055
|
])
|
|
@@ -3986,83 +4061,83 @@ const ur = { class: "flex grow m-2.5 p-[10px] rounded-lg" }, dr = { class: "flex
|
|
|
3986
4061
|
g("div", {
|
|
3987
4062
|
class: V([_.value, "h-full transition-all flex flex-col"])
|
|
3988
4063
|
}, [
|
|
3989
|
-
g("div",
|
|
4064
|
+
g("div", kr, [
|
|
3990
4065
|
g("div", _r, [
|
|
3991
|
-
g("div",
|
|
3992
|
-
|
|
3993
|
-
g("div",
|
|
3994
|
-
|
|
3995
|
-
icon:
|
|
4066
|
+
g("div", Sr, [
|
|
4067
|
+
z(b.$slots, "header-left", {}, () => [
|
|
4068
|
+
g("div", Cr, [
|
|
4069
|
+
S(h, {
|
|
4070
|
+
icon: C(R).farBarsSort,
|
|
3996
4071
|
class: "size-5",
|
|
3997
4072
|
onClick: u[3] || (u[3] = (y) => e.mainNavStore.toggleHidden())
|
|
3998
4073
|
}, null, 8, ["icon"])
|
|
3999
4074
|
])
|
|
4000
4075
|
]),
|
|
4001
|
-
|
|
4076
|
+
z(b.$slots, "header-center", {}, () => [
|
|
4002
4077
|
d.value ? (m(), v("div", {
|
|
4003
4078
|
key: 0,
|
|
4004
4079
|
class: "absolute left-1/2 -translate-x-1/2 cursor-pointer h-9 flex items-center",
|
|
4005
|
-
onClick:
|
|
4080
|
+
onClick: p
|
|
4006
4081
|
}, [
|
|
4007
|
-
|
|
4082
|
+
C(i).currentBrand ? (m(), v("img", {
|
|
4008
4083
|
key: 0,
|
|
4009
|
-
src:
|
|
4084
|
+
src: C(i).currentBrand.logo,
|
|
4010
4085
|
alt: "",
|
|
4011
4086
|
class: "h-[30px] w-auto"
|
|
4012
|
-
}, null, 8, Tr)) :
|
|
4013
|
-
])) :
|
|
4087
|
+
}, null, 8, Tr)) : $("", !0)
|
|
4088
|
+
])) : $("", !0)
|
|
4014
4089
|
]),
|
|
4015
4090
|
g("div", $r, [
|
|
4016
|
-
|
|
4091
|
+
z(b.$slots, "header-right", {}, () => [
|
|
4017
4092
|
e.appStore.state.showAppSelector ? (m(), v("button", {
|
|
4018
4093
|
key: 0,
|
|
4019
4094
|
class: "rounded-sm bg-white w-[42px] h-[42px] ring-1 ring-inset ring-gray-300",
|
|
4020
4095
|
type: "button",
|
|
4021
|
-
onClick:
|
|
4096
|
+
onClick: f
|
|
4022
4097
|
}, [
|
|
4023
|
-
|
|
4024
|
-
icon:
|
|
4098
|
+
S(h, {
|
|
4099
|
+
icon: C(R).farGripDotsVertical,
|
|
4025
4100
|
class: "size-4 text-gray-400"
|
|
4026
4101
|
}, null, 8, ["icon"])
|
|
4027
|
-
])) :
|
|
4102
|
+
])) : $("", !0)
|
|
4028
4103
|
])
|
|
4029
4104
|
])
|
|
4030
4105
|
])
|
|
4031
4106
|
])
|
|
4032
4107
|
]),
|
|
4033
4108
|
g("main", Lr, [
|
|
4034
|
-
|
|
4109
|
+
S(x)
|
|
4035
4110
|
])
|
|
4036
4111
|
], 2),
|
|
4037
|
-
C(
|
|
4112
|
+
S(C(Ve), {
|
|
4038
4113
|
position: "left",
|
|
4039
|
-
"overlay-instance":
|
|
4114
|
+
"overlay-instance": C(ae).left,
|
|
4040
4115
|
onClose: u[4] || (u[4] = (y) => a("overlayClose", "left"))
|
|
4041
4116
|
}, null, 8, ["overlay-instance"]),
|
|
4042
|
-
C(
|
|
4117
|
+
S(C(Ve), {
|
|
4043
4118
|
position: "right",
|
|
4044
|
-
"overlay-instance":
|
|
4119
|
+
"overlay-instance": C(ae).right,
|
|
4045
4120
|
onClose: u[5] || (u[5] = (y) => a("overlayClose", "right"))
|
|
4046
4121
|
}, null, 8, ["overlay-instance"]),
|
|
4047
|
-
C(
|
|
4122
|
+
S(C(Aa))
|
|
4048
4123
|
], 64);
|
|
4049
4124
|
};
|
|
4050
4125
|
}
|
|
4051
4126
|
}, Pr = {}, Mr = { class: "h-full" };
|
|
4052
4127
|
function Vr(e, s) {
|
|
4053
|
-
const t =
|
|
4128
|
+
const t = A("router-view");
|
|
4054
4129
|
return m(), v("main", Mr, [
|
|
4055
|
-
|
|
4130
|
+
S(t)
|
|
4056
4131
|
]);
|
|
4057
4132
|
}
|
|
4058
|
-
const
|
|
4133
|
+
const xl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid place-content-center relative" }, Fr = { class: "absolute top-8 left-8" }, Dr = ["src"], Rr = {
|
|
4059
4134
|
key: 1,
|
|
4060
4135
|
width: "59",
|
|
4061
4136
|
height: "23",
|
|
4062
4137
|
viewBox: "0 0 59 23",
|
|
4063
4138
|
fill: "none",
|
|
4064
4139
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4065
|
-
},
|
|
4140
|
+
}, Ar = { class: "max-w-sm grid gap-y-1 -mt-8" }, Er = { class: "mb-7" }, Ir = { class: "text-gray-600" }, Or = { class: "grid grid-flow-col justify-between mt-1 mb-4" }, Br = {
|
|
4066
4141
|
key: 0,
|
|
4067
4142
|
class: "text-red-600 text-sm mb-2"
|
|
4068
4143
|
}, jr = { key: 0 }, zr = { key: 1 }, Nr = {
|
|
@@ -4082,7 +4157,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4082
4157
|
}
|
|
4083
4158
|
},
|
|
4084
4159
|
setup(e) {
|
|
4085
|
-
const s =
|
|
4160
|
+
const s = Y(), t = ee(), a = ut(), l = Q(), n = e, o = D(!1), i = D(""), r = async (c) => {
|
|
4086
4161
|
o.value = !0, i.value = "";
|
|
4087
4162
|
try {
|
|
4088
4163
|
await l.login(c);
|
|
@@ -4102,7 +4177,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4102
4177
|
}
|
|
4103
4178
|
};
|
|
4104
4179
|
return (c, d) => {
|
|
4105
|
-
const
|
|
4180
|
+
const f = A("FormKit"), p = A("router-link");
|
|
4106
4181
|
return m(), v("div", Hr, [
|
|
4107
4182
|
g("div", Fr, [
|
|
4108
4183
|
n.logo ? (m(), v("img", {
|
|
@@ -4129,49 +4204,49 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4129
4204
|
}, null, -1)
|
|
4130
4205
|
])]))
|
|
4131
4206
|
]),
|
|
4132
|
-
g("div",
|
|
4133
|
-
g("div",
|
|
4207
|
+
g("div", Ar, [
|
|
4208
|
+
g("div", Er, [
|
|
4134
4209
|
d[1] || (d[1] = g("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Log in", -1)),
|
|
4135
|
-
g("p",
|
|
4210
|
+
g("p", Ir, " Welcome back" + M(C(a).state.app ? ` to ${C(a).state.app}` : "") + "! Please enter your details. ", 1)
|
|
4136
4211
|
]),
|
|
4137
|
-
|
|
4212
|
+
S(f, {
|
|
4138
4213
|
type: "form",
|
|
4139
4214
|
onSubmit: r,
|
|
4140
4215
|
actions: !1
|
|
4141
4216
|
}, {
|
|
4142
4217
|
default: P(() => [
|
|
4143
|
-
|
|
4218
|
+
S(f, {
|
|
4144
4219
|
label: "Email",
|
|
4145
4220
|
name: "email",
|
|
4146
4221
|
placeholder: "Enter your email",
|
|
4147
4222
|
type: "email",
|
|
4148
4223
|
validation: "required|email",
|
|
4149
4224
|
"outer-class": "max-w-full",
|
|
4150
|
-
value:
|
|
4225
|
+
value: C(l).state.devCredentials.username
|
|
4151
4226
|
}, null, 8, ["value"]),
|
|
4152
|
-
|
|
4227
|
+
S(f, {
|
|
4153
4228
|
label: "Password",
|
|
4154
4229
|
name: "password",
|
|
4155
4230
|
placeholder: "••••••••",
|
|
4156
4231
|
type: "password",
|
|
4157
4232
|
validation: "required",
|
|
4158
4233
|
"outer-class": "max-w-full",
|
|
4159
|
-
value:
|
|
4234
|
+
value: C(l).state.devCredentials.password
|
|
4160
4235
|
}, null, 8, ["value"]),
|
|
4161
|
-
g("div",
|
|
4236
|
+
g("div", Or, [
|
|
4162
4237
|
d[3] || (d[3] = g("span", null, null, -1)),
|
|
4163
|
-
|
|
4238
|
+
S(p, {
|
|
4164
4239
|
to: n.forgotPasswordRoute,
|
|
4165
4240
|
class: "text-sm text-primary-600 font-semibold"
|
|
4166
4241
|
}, {
|
|
4167
4242
|
default: P(() => [...d[2] || (d[2] = [
|
|
4168
|
-
|
|
4243
|
+
I(" Forgot password ", -1)
|
|
4169
4244
|
])]),
|
|
4170
4245
|
_: 1
|
|
4171
4246
|
}, 8, ["to"])
|
|
4172
4247
|
]),
|
|
4173
|
-
i.value ? (m(), v("div", Br, M(i.value), 1)) :
|
|
4174
|
-
C(
|
|
4248
|
+
i.value ? (m(), v("div", Br, M(i.value), 1)) : $("", !0),
|
|
4249
|
+
S(C(q), {
|
|
4175
4250
|
type: "submit",
|
|
4176
4251
|
size: "xl",
|
|
4177
4252
|
disabled: o.value,
|
|
@@ -4198,14 +4273,14 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4198
4273
|
}
|
|
4199
4274
|
},
|
|
4200
4275
|
setup(e) {
|
|
4201
|
-
const s =
|
|
4202
|
-
return
|
|
4276
|
+
const s = Y(), t = ee(), a = Q(), l = e;
|
|
4277
|
+
return pe(async () => {
|
|
4203
4278
|
await a.logout();
|
|
4204
4279
|
const n = t.query.redirect;
|
|
4205
4280
|
n && n.startsWith("http") ? window.location.href = n : await s.push(n || l.defaultRedirect);
|
|
4206
4281
|
}), (n, o) => null;
|
|
4207
4282
|
}
|
|
4208
|
-
}, qr = { class: "h-full grid place-content-center relative" }, Zr = { class: "absolute top-8 left-8" },
|
|
4283
|
+
}, qr = { class: "h-full grid place-content-center relative" }, Zr = { class: "absolute top-8 left-8" }, Wr = ["src"], Kr = {
|
|
4209
4284
|
key: 1,
|
|
4210
4285
|
width: "59",
|
|
4211
4286
|
height: "23",
|
|
@@ -4231,7 +4306,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4231
4306
|
}
|
|
4232
4307
|
},
|
|
4233
4308
|
setup(e) {
|
|
4234
|
-
const s = Q(), t = e, a =
|
|
4309
|
+
const s = Q(), t = e, a = D(!1), l = D(""), n = D(""), o = async ({ email: i }) => {
|
|
4235
4310
|
a.value = !0, l.value = "", n.value = "";
|
|
4236
4311
|
try {
|
|
4237
4312
|
await le.post(s.state.endpoints.passwordEmail, { email: i }), n.value = "Password reset link sent! Check your email.";
|
|
@@ -4242,7 +4317,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4242
4317
|
}
|
|
4243
4318
|
};
|
|
4244
4319
|
return (i, r) => {
|
|
4245
|
-
const c =
|
|
4320
|
+
const c = A("FormKit"), d = A("router-link");
|
|
4246
4321
|
return m(), v("div", qr, [
|
|
4247
4322
|
g("div", Zr, [
|
|
4248
4323
|
t.logo ? (m(), v("img", {
|
|
@@ -4250,7 +4325,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4250
4325
|
src: t.logo,
|
|
4251
4326
|
alt: "Logo",
|
|
4252
4327
|
class: "h-[23px] w-auto"
|
|
4253
|
-
}, null, 8,
|
|
4328
|
+
}, null, 8, Wr)) : (m(), v("svg", Kr, [...r[0] || (r[0] = [
|
|
4254
4329
|
g("path", {
|
|
4255
4330
|
d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
|
|
4256
4331
|
fill: "#1C64F2"
|
|
@@ -4274,13 +4349,13 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4274
4349
|
g("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Reset password"),
|
|
4275
4350
|
g("p", { class: "text-gray-600" }, " Enter your email and we'll send you a link to reset your password. ")
|
|
4276
4351
|
], -1)),
|
|
4277
|
-
|
|
4352
|
+
S(c, {
|
|
4278
4353
|
type: "form",
|
|
4279
4354
|
onSubmit: o,
|
|
4280
4355
|
actions: !1
|
|
4281
4356
|
}, {
|
|
4282
4357
|
default: P(() => [
|
|
4283
|
-
|
|
4358
|
+
S(c, {
|
|
4284
4359
|
label: "Email",
|
|
4285
4360
|
name: "email",
|
|
4286
4361
|
placeholder: "Enter your email",
|
|
@@ -4288,9 +4363,9 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4288
4363
|
validation: "required|email",
|
|
4289
4364
|
"outer-class": "max-w-full"
|
|
4290
4365
|
}),
|
|
4291
|
-
l.value ? (m(), v("div", Yr, M(l.value), 1)) :
|
|
4292
|
-
n.value ? (m(), v("div", Xr, M(n.value), 1)) :
|
|
4293
|
-
C(
|
|
4366
|
+
l.value ? (m(), v("div", Yr, M(l.value), 1)) : $("", !0),
|
|
4367
|
+
n.value ? (m(), v("div", Xr, M(n.value), 1)) : $("", !0),
|
|
4368
|
+
S(C(q), {
|
|
4294
4369
|
type: "submit",
|
|
4295
4370
|
size: "xl",
|
|
4296
4371
|
disabled: a.value,
|
|
@@ -4301,12 +4376,12 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4301
4376
|
]),
|
|
4302
4377
|
_: 1
|
|
4303
4378
|
}, 8, ["disabled"]),
|
|
4304
|
-
|
|
4379
|
+
S(d, {
|
|
4305
4380
|
to: t.loginRoute,
|
|
4306
4381
|
class: "text-sm text-center text-primary-600 font-semibold block"
|
|
4307
4382
|
}, {
|
|
4308
4383
|
default: P(() => [...r[1] || (r[1] = [
|
|
4309
|
-
|
|
4384
|
+
I(" Back to login ", -1)
|
|
4310
4385
|
])]),
|
|
4311
4386
|
_: 1
|
|
4312
4387
|
}, 8, ["to"])
|
|
@@ -4340,7 +4415,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4340
4415
|
}
|
|
4341
4416
|
},
|
|
4342
4417
|
setup(e) {
|
|
4343
|
-
const s =
|
|
4418
|
+
const s = Y(), t = ee(), a = Q(), l = e, n = D(!1), o = D(""), i = async ({ password: r, password_confirmation: c }) => {
|
|
4344
4419
|
n.value = !0, o.value = "";
|
|
4345
4420
|
try {
|
|
4346
4421
|
await le.post(a.state.endpoints.passwordReset, {
|
|
@@ -4356,7 +4431,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4356
4431
|
}
|
|
4357
4432
|
};
|
|
4358
4433
|
return (r, c) => {
|
|
4359
|
-
const d =
|
|
4434
|
+
const d = A("FormKit");
|
|
4360
4435
|
return m(), v("div", tn, [
|
|
4361
4436
|
g("div", sn, [
|
|
4362
4437
|
l.logo ? (m(), v("img", {
|
|
@@ -4388,13 +4463,13 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4388
4463
|
g("h1", { class: "text-4xl text-gray-900 semibold tracking-tight mb-3" }, "Set new password"),
|
|
4389
4464
|
g("p", { class: "text-gray-600" }, " Enter your new password below. ")
|
|
4390
4465
|
], -1)),
|
|
4391
|
-
|
|
4466
|
+
S(d, {
|
|
4392
4467
|
type: "form",
|
|
4393
4468
|
onSubmit: i,
|
|
4394
4469
|
actions: !1
|
|
4395
4470
|
}, {
|
|
4396
4471
|
default: P(() => [
|
|
4397
|
-
|
|
4472
|
+
S(d, {
|
|
4398
4473
|
label: "New Password",
|
|
4399
4474
|
name: "password",
|
|
4400
4475
|
placeholder: "••••••••",
|
|
@@ -4402,7 +4477,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4402
4477
|
validation: "required|length:8",
|
|
4403
4478
|
"outer-class": "max-w-full"
|
|
4404
4479
|
}),
|
|
4405
|
-
|
|
4480
|
+
S(d, {
|
|
4406
4481
|
label: "Confirm Password",
|
|
4407
4482
|
name: "password_confirmation",
|
|
4408
4483
|
placeholder: "••••••••",
|
|
@@ -4410,8 +4485,8 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4410
4485
|
validation: "required|confirm:password",
|
|
4411
4486
|
"outer-class": "max-w-full"
|
|
4412
4487
|
}),
|
|
4413
|
-
o.value ? (m(), v("div", nn, M(o.value), 1)) :
|
|
4414
|
-
C(
|
|
4488
|
+
o.value ? (m(), v("div", nn, M(o.value), 1)) : $("", !0),
|
|
4489
|
+
S(C(q), {
|
|
4415
4490
|
type: "submit",
|
|
4416
4491
|
size: "xl",
|
|
4417
4492
|
disabled: n.value,
|
|
@@ -4449,7 +4524,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4449
4524
|
}
|
|
4450
4525
|
},
|
|
4451
4526
|
setup(e) {
|
|
4452
|
-
const s =
|
|
4527
|
+
const s = Y(), t = e, a = () => {
|
|
4453
4528
|
s.push(t.homeRoute);
|
|
4454
4529
|
};
|
|
4455
4530
|
return (l, n) => (m(), v("div", dn, [
|
|
@@ -4483,18 +4558,18 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4483
4558
|
g("div", { class: "text-primary-600 text-7xl font-bold mb-4" }, "403"),
|
|
4484
4559
|
g("h1", { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, " Access Forbidden "),
|
|
4485
4560
|
g("p", { class: "text-gray-600" }, [
|
|
4486
|
-
|
|
4561
|
+
I(" You don't have permission to access this resource."),
|
|
4487
4562
|
g("br"),
|
|
4488
|
-
|
|
4563
|
+
I(" If you believe this is an error, please contact your administrator. ")
|
|
4489
4564
|
])
|
|
4490
4565
|
], -1)),
|
|
4491
4566
|
g("div", hn, [
|
|
4492
|
-
C(
|
|
4567
|
+
S(C(q), {
|
|
4493
4568
|
onClick: a,
|
|
4494
4569
|
size: "lg"
|
|
4495
4570
|
}, {
|
|
4496
4571
|
default: P(() => [...n[1] || (n[1] = [
|
|
4497
|
-
|
|
4572
|
+
I(" Go to Home ", -1)
|
|
4498
4573
|
])]),
|
|
4499
4574
|
_: 1
|
|
4500
4575
|
})
|
|
@@ -4502,14 +4577,14 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4502
4577
|
])
|
|
4503
4578
|
]));
|
|
4504
4579
|
}
|
|
4505
|
-
}, vn = { class: "h-full grid place-content-center relative" }, bn = { class: "absolute top-8 left-8" }, xn = ["src"],
|
|
4580
|
+
}, vn = { class: "h-full grid place-content-center relative" }, bn = { class: "absolute top-8 left-8" }, xn = ["src"], wn = {
|
|
4506
4581
|
key: 1,
|
|
4507
4582
|
width: "59",
|
|
4508
4583
|
height: "23",
|
|
4509
4584
|
viewBox: "0 0 59 23",
|
|
4510
4585
|
fill: "none",
|
|
4511
4586
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4512
|
-
},
|
|
4587
|
+
}, kn = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, _n = { class: "flex gap-4 justify-center" }, Sn = {
|
|
4513
4588
|
__name: "SparkError404View",
|
|
4514
4589
|
props: {
|
|
4515
4590
|
logo: {
|
|
@@ -4522,7 +4597,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4522
4597
|
}
|
|
4523
4598
|
},
|
|
4524
4599
|
setup(e) {
|
|
4525
|
-
const s =
|
|
4600
|
+
const s = Y(), t = e, a = () => {
|
|
4526
4601
|
s.push(t.homeRoute);
|
|
4527
4602
|
};
|
|
4528
4603
|
return (l, n) => (m(), v("div", vn, [
|
|
@@ -4532,7 +4607,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4532
4607
|
src: t.logo,
|
|
4533
4608
|
alt: "Logo",
|
|
4534
4609
|
class: "h-[23px] w-auto"
|
|
4535
|
-
}, null, 8, xn)) : (m(), v("svg",
|
|
4610
|
+
}, null, 8, xn)) : (m(), v("svg", wn, [...n[0] || (n[0] = [
|
|
4536
4611
|
g("path", {
|
|
4537
4612
|
d: "M49.2029 17.1264V8.03835H44.0829V5.22235H58.0989V8.03835H52.9629V17.1264H49.2029Z",
|
|
4538
4613
|
fill: "#1C64F2"
|
|
@@ -4551,19 +4626,19 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4551
4626
|
}, null, -1)
|
|
4552
4627
|
])]))
|
|
4553
4628
|
]),
|
|
4554
|
-
g("div",
|
|
4629
|
+
g("div", kn, [
|
|
4555
4630
|
n[2] || (n[2] = g("div", null, [
|
|
4556
4631
|
g("div", { class: "text-primary-600 text-7xl font-bold mb-4" }, "404"),
|
|
4557
4632
|
g("h1", { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, " Page Not Found "),
|
|
4558
4633
|
g("p", { class: "text-gray-600" }, " The page you're looking for doesn't exist or has been moved. ")
|
|
4559
4634
|
], -1)),
|
|
4560
4635
|
g("div", _n, [
|
|
4561
|
-
C(
|
|
4636
|
+
S(C(q), {
|
|
4562
4637
|
onClick: a,
|
|
4563
4638
|
size: "lg"
|
|
4564
4639
|
}, {
|
|
4565
4640
|
default: P(() => [...n[1] || (n[1] = [
|
|
4566
|
-
|
|
4641
|
+
I(" Go to Home ", -1)
|
|
4567
4642
|
])]),
|
|
4568
4643
|
_: 1
|
|
4569
4644
|
})
|
|
@@ -4571,14 +4646,14 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4571
4646
|
])
|
|
4572
4647
|
]));
|
|
4573
4648
|
}
|
|
4574
|
-
},
|
|
4649
|
+
}, Cn = { class: "h-full grid place-content-center relative" }, Tn = { class: "absolute top-8 left-8" }, $n = ["src"], Ln = {
|
|
4575
4650
|
key: 1,
|
|
4576
4651
|
width: "59",
|
|
4577
4652
|
height: "23",
|
|
4578
4653
|
viewBox: "0 0 59 23",
|
|
4579
4654
|
fill: "none",
|
|
4580
4655
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4581
|
-
}, Pn = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, Mn = { class: "text-primary-600 text-7xl font-bold mb-4" }, Vn = { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, Hn = { class: "text-gray-600" }, Fn = { class: "flex gap-4 justify-center" },
|
|
4656
|
+
}, Pn = { class: "max-w-lg grid gap-y-6 text-center -mt-8" }, Mn = { class: "text-primary-600 text-7xl font-bold mb-4" }, Vn = { class: "text-3xl text-gray-900 font-semibold tracking-tight mb-3" }, Hn = { class: "text-gray-600" }, Fn = { class: "flex gap-4 justify-center" }, wl = {
|
|
4582
4657
|
__name: "SparkErrorGeneralView",
|
|
4583
4658
|
props: {
|
|
4584
4659
|
logo: {
|
|
@@ -4603,10 +4678,10 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4603
4678
|
}
|
|
4604
4679
|
},
|
|
4605
4680
|
setup(e) {
|
|
4606
|
-
const s =
|
|
4681
|
+
const s = Y(), t = e, a = () => {
|
|
4607
4682
|
s.push(t.homeRoute);
|
|
4608
4683
|
};
|
|
4609
|
-
return (l, n) => (m(), v("div",
|
|
4684
|
+
return (l, n) => (m(), v("div", Cn, [
|
|
4610
4685
|
g("div", Tn, [
|
|
4611
4686
|
t.logo ? (m(), v("img", {
|
|
4612
4687
|
key: 0,
|
|
@@ -4639,12 +4714,12 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4639
4714
|
g("p", Hn, M(t.message || "An unexpected error occurred. Please try again later."), 1)
|
|
4640
4715
|
]),
|
|
4641
4716
|
g("div", Fn, [
|
|
4642
|
-
C(
|
|
4717
|
+
S(C(q), {
|
|
4643
4718
|
onClick: a,
|
|
4644
4719
|
size: "lg"
|
|
4645
4720
|
}, {
|
|
4646
4721
|
default: P(() => [...n[1] || (n[1] = [
|
|
4647
|
-
|
|
4722
|
+
I(" Go to Home ", -1)
|
|
4648
4723
|
])]),
|
|
4649
4724
|
_: 1
|
|
4650
4725
|
})
|
|
@@ -4653,7 +4728,7 @@ const yl = /* @__PURE__ */ oe(Pr, [["render", Vr]]), Hr = { class: "h-full grid
|
|
|
4653
4728
|
]));
|
|
4654
4729
|
}
|
|
4655
4730
|
};
|
|
4656
|
-
function
|
|
4731
|
+
function kl(e = {}) {
|
|
4657
4732
|
const {
|
|
4658
4733
|
loginPath: s = "/login",
|
|
4659
4734
|
logoutPath: t = "/logout",
|
|
@@ -4693,7 +4768,7 @@ function bl(e = {}) {
|
|
|
4693
4768
|
}
|
|
4694
4769
|
];
|
|
4695
4770
|
}
|
|
4696
|
-
function
|
|
4771
|
+
function _l(e, s = {}) {
|
|
4697
4772
|
const { defaultAuthenticatedRoute: t = "/dashboard" } = s;
|
|
4698
4773
|
e.beforeEach(async (a, l, n) => {
|
|
4699
4774
|
const o = Q();
|
|
@@ -4738,7 +4813,7 @@ function Dn(e, s, t, a) {
|
|
|
4738
4813
|
s();
|
|
4739
4814
|
}
|
|
4740
4815
|
}
|
|
4741
|
-
function
|
|
4816
|
+
function Sl(e = {}) {
|
|
4742
4817
|
const {
|
|
4743
4818
|
forbiddenPath: s = "/error/403",
|
|
4744
4819
|
logo: t = "",
|
|
@@ -4752,7 +4827,7 @@ function kl(e = {}) {
|
|
|
4752
4827
|
meta: { auth: !1 }
|
|
4753
4828
|
};
|
|
4754
4829
|
}
|
|
4755
|
-
function
|
|
4830
|
+
function Cl(e = {}) {
|
|
4756
4831
|
const {
|
|
4757
4832
|
logo: s = "",
|
|
4758
4833
|
homeRoute: t = "/dashboard"
|
|
@@ -4760,12 +4835,12 @@ function wl(e = {}) {
|
|
|
4760
4835
|
return {
|
|
4761
4836
|
path: "/:pathMatch(.*)*",
|
|
4762
4837
|
name: "error-404",
|
|
4763
|
-
component:
|
|
4838
|
+
component: Sn,
|
|
4764
4839
|
props: { logo: s, homeRoute: t },
|
|
4765
4840
|
meta: { auth: !1 }
|
|
4766
4841
|
};
|
|
4767
4842
|
}
|
|
4768
|
-
function
|
|
4843
|
+
function Tl(e, s) {
|
|
4769
4844
|
e.beforeResolve(async (t) => {
|
|
4770
4845
|
if (t.meta.auth !== !1) {
|
|
4771
4846
|
const a = Q();
|
|
@@ -4773,7 +4848,7 @@ function _l(e, s) {
|
|
|
4773
4848
|
}
|
|
4774
4849
|
});
|
|
4775
4850
|
}
|
|
4776
|
-
function
|
|
4851
|
+
function $l(e, s = {}) {
|
|
4777
4852
|
const {
|
|
4778
4853
|
title: t = "Unsaved Changes",
|
|
4779
4854
|
message: a = "You have unsaved changes. Leave anyway?",
|
|
@@ -4795,19 +4870,19 @@ function Cl(e, s = {}) {
|
|
|
4795
4870
|
}) ? (cr(), r()) : r(!1);
|
|
4796
4871
|
});
|
|
4797
4872
|
}
|
|
4798
|
-
const
|
|
4799
|
-
const e =
|
|
4873
|
+
const Ll = fe("sparkNav", () => {
|
|
4874
|
+
const e = G({
|
|
4800
4875
|
menu: [],
|
|
4801
4876
|
collapsed: !1,
|
|
4802
4877
|
hidden: !1
|
|
4803
|
-
}), s =
|
|
4878
|
+
}), s = Y(), t = ee(), a = (c = []) => {
|
|
4804
4879
|
e.menu = c, r();
|
|
4805
4880
|
}, l = (c, d) => {
|
|
4806
|
-
for (const
|
|
4807
|
-
if (
|
|
4808
|
-
if (
|
|
4809
|
-
const
|
|
4810
|
-
if (
|
|
4881
|
+
for (const f of c) {
|
|
4882
|
+
if (f.href === d) return f;
|
|
4883
|
+
if (f.children) {
|
|
4884
|
+
const p = l(f.children, d);
|
|
4885
|
+
if (p) return p;
|
|
4811
4886
|
}
|
|
4812
4887
|
}
|
|
4813
4888
|
return null;
|
|
@@ -4827,15 +4902,15 @@ const Sl = pe("sparkNav", () => {
|
|
|
4827
4902
|
}, r = () => {
|
|
4828
4903
|
const c = t.name || t.path.replace("/", "");
|
|
4829
4904
|
if (c) {
|
|
4830
|
-
const d = (
|
|
4831
|
-
|
|
4832
|
-
|
|
4905
|
+
const d = (f) => {
|
|
4906
|
+
f.forEach((p) => {
|
|
4907
|
+
p.current = p.href === c, p.children && d(p.children);
|
|
4833
4908
|
});
|
|
4834
4909
|
};
|
|
4835
4910
|
d(e.menu);
|
|
4836
4911
|
}
|
|
4837
4912
|
};
|
|
4838
|
-
return
|
|
4913
|
+
return U(
|
|
4839
4914
|
() => t.path,
|
|
4840
4915
|
() => {
|
|
4841
4916
|
r();
|
|
@@ -4851,80 +4926,83 @@ const Sl = pe("sparkNav", () => {
|
|
|
4851
4926
|
};
|
|
4852
4927
|
});
|
|
4853
4928
|
export {
|
|
4854
|
-
|
|
4929
|
+
vl as AUSTRALIAN_STATES,
|
|
4930
|
+
R as Icons,
|
|
4855
4931
|
re as SparkAlert,
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
|
|
4859
|
-
|
|
4932
|
+
js as SparkAppSelector,
|
|
4933
|
+
ua as SparkBrandSelector,
|
|
4934
|
+
q as SparkButton,
|
|
4935
|
+
ft as SparkButtonGroup,
|
|
4860
4936
|
nl as SparkCard,
|
|
4861
|
-
|
|
4937
|
+
bl as SparkDefaultContainer,
|
|
4862
4938
|
yn as SparkError403View,
|
|
4863
|
-
|
|
4864
|
-
|
|
4939
|
+
Sn as SparkError404View,
|
|
4940
|
+
wl as SparkErrorGeneralView,
|
|
4865
4941
|
ll as SparkFileDragUpload,
|
|
4866
4942
|
en as SparkForgotPasswordView,
|
|
4867
4943
|
il as SparkImageUpload,
|
|
4868
4944
|
Nr as SparkLoginView,
|
|
4869
4945
|
Ur as SparkLogoutView,
|
|
4870
|
-
|
|
4871
|
-
|
|
4946
|
+
Aa as SparkModalContainer,
|
|
4947
|
+
Ha as SparkModalDialog,
|
|
4872
4948
|
ol as SparkNotificationOutlet,
|
|
4873
|
-
|
|
4874
|
-
|
|
4949
|
+
Ve as SparkOverlay,
|
|
4950
|
+
xl as SparkPublicContainer,
|
|
4875
4951
|
un as SparkResetPasswordView,
|
|
4876
4952
|
cl as SparkSubNav,
|
|
4877
4953
|
ul as SparkTable,
|
|
4878
|
-
|
|
4879
|
-
|
|
4880
|
-
|
|
4954
|
+
jo as SparkTableDatePicker,
|
|
4955
|
+
Io as SparkTableFilterButtons,
|
|
4956
|
+
Do as SparkTableFilterSelect,
|
|
4881
4957
|
Co as SparkTablePaginationPaging,
|
|
4882
|
-
|
|
4883
|
-
|
|
4884
|
-
|
|
4885
|
-
|
|
4958
|
+
Lo as SparkTablePaginationPerPage,
|
|
4959
|
+
qo as SparkTableReset,
|
|
4960
|
+
Vo as SparkTableSearch,
|
|
4961
|
+
Ae as SparkTableToolbar,
|
|
4886
4962
|
rl as SparkToastContainer,
|
|
4887
4963
|
sl as addIcons,
|
|
4888
4964
|
cr as clearAllDirtyForms,
|
|
4889
|
-
|
|
4890
|
-
|
|
4891
|
-
|
|
4892
|
-
|
|
4965
|
+
Sl as create403Route,
|
|
4966
|
+
Cl as create404Route,
|
|
4967
|
+
kl as createAuthRoutes,
|
|
4968
|
+
ar as createAxiosInstance,
|
|
4893
4969
|
dl as createBootstrapService,
|
|
4894
|
-
|
|
4895
|
-
|
|
4970
|
+
Na as customiseHeader,
|
|
4971
|
+
er as deleteCookie,
|
|
4896
4972
|
el as formKitGenesisOverride,
|
|
4897
4973
|
tl as formKitIconLoader,
|
|
4898
4974
|
Qn as formKitIcons,
|
|
4899
|
-
|
|
4900
|
-
|
|
4901
|
-
|
|
4975
|
+
no as formatTemporal,
|
|
4976
|
+
ve as getAxiosInstance,
|
|
4977
|
+
Jo as getCookie,
|
|
4902
4978
|
ir as getDirtyFormMessage,
|
|
4903
|
-
|
|
4979
|
+
mt as getDomain,
|
|
4904
4980
|
Oe as getFormLevelMessage,
|
|
4905
4981
|
lr as hasAnyDirtyForm,
|
|
4906
4982
|
rr as isValidationError,
|
|
4907
|
-
|
|
4983
|
+
lo as parseDatetime,
|
|
4908
4984
|
or as parseLaravelErrors,
|
|
4909
4985
|
Oa as renderHeaderTitle,
|
|
4910
|
-
|
|
4911
|
-
|
|
4986
|
+
Qo as setCookie,
|
|
4987
|
+
_l as setupAuthGuards,
|
|
4912
4988
|
pl as setupAxios,
|
|
4913
|
-
|
|
4914
|
-
|
|
4989
|
+
Tl as setupBootstrapGuard,
|
|
4990
|
+
$l as setupDirtyFormGuard,
|
|
4915
4991
|
al as setupFontAwesome,
|
|
4916
4992
|
J as sparkModalService,
|
|
4917
|
-
|
|
4993
|
+
B as sparkNotificationService,
|
|
4918
4994
|
ae as sparkOverlayService,
|
|
4919
|
-
|
|
4920
|
-
|
|
4995
|
+
po as updateRow,
|
|
4996
|
+
ml as useCrudResource,
|
|
4997
|
+
yl as useFormDirtyGuard,
|
|
4921
4998
|
fl as useFormSubmission,
|
|
4922
|
-
|
|
4923
|
-
|
|
4999
|
+
ct as useSparkAppSelectorStore,
|
|
5000
|
+
ut as useSparkAppStore,
|
|
4924
5001
|
Q as useSparkAuthStore,
|
|
4925
|
-
|
|
4926
|
-
|
|
4927
|
-
|
|
4928
|
-
|
|
4929
|
-
|
|
5002
|
+
pt as useSparkBrandFilterStore,
|
|
5003
|
+
Ll as useSparkNavStore,
|
|
5004
|
+
Ie as useSparkOverlay,
|
|
5005
|
+
fo as useSparkTableRouteSync,
|
|
5006
|
+
hl as useSubNavigation,
|
|
5007
|
+
gl as useTableDelete
|
|
4930
5008
|
};
|