vlite3 1.3.4 → 1.3.6
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/components/Dropdown/Dropdown.vue.js +17 -16
- package/components/Dropdown/DropdownMenu.vue.js +2 -2
- package/components/Dropdown/DropdownMenu.vue2.js +56 -56
- package/components/FileTree/FileTree.vue.d.ts +1 -0
- package/components/FileTree/FileTree.vue.js +3 -3
- package/components/FileTree/FileTree.vue2.js +33 -31
- package/components/FileTree/FileTreeNode.vue.d.ts +2 -0
- package/components/FileTree/FileTreeNode.vue.js +72 -70
- package/components/FileTree/types.d.ts +1 -0
- package/components/Form/Form.vue.d.ts +2 -0
- package/components/Form/Form.vue.js +1 -1
- package/components/Form/Form.vue2.js +258 -229
- package/components/Form/FormFields.vue.d.ts +18 -1
- package/components/Form/FormFields.vue.js +1 -1
- package/components/Form/FormFields.vue2.js +108 -96
- package/components/Form/types.d.ts +2 -0
- package/components/ImportData/ImportData.vue.js +3 -2
- package/components/Input.vue.js +1 -1
- package/components/Modal.vue.js +1 -1
- package/components/Modal.vue2.js +1 -1
- package/components/NavbarCommandPalette.vue.d.ts +1 -1
- package/components/Screen/Screen.vue.d.ts +2 -0
- package/components/Screen/Screen.vue.js +180 -176
- package/components/Stats/Stats.vue.d.ts +1 -1
- package/components/Stats/Stats.vue.js +50 -22
- package/components/StatusChip/status-map.js +1 -0
- package/components/ThemeToggle.vue.d.ts +1 -1
- package/components/ThemeToggle.vue.js +2 -2
- package/components/Timeline/TimelineItem.vue.js +74 -91
- package/composables/useTheme.d.ts +1 -1
- package/composables/useTheme.js +15 -15
- package/package.json +2 -2
- package/style.css +12 -3
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import { usePersistentState as
|
|
6
|
-
import { useVLiteConfig as
|
|
1
|
+
import { defineComponent as Ee, useSlots as Qe, computed as n, markRaw as T, onMounted as Ae, ref as h, provide as L, watch as O, openBlock as d, createElementBlock as p, normalizeClass as S, Fragment as U, createElementVNode as j, createVNode as C, createSlots as ne, withCtx as b, renderSlot as s, normalizeProps as u, guardReactiveProps as w, mergeProps as y, createBlock as M, createCommentVNode as R, unref as z, resolveDynamicComponent as Ue, toDisplayString as je } from "vue";
|
|
2
|
+
import Me from "../ConfirmationModal.vue.js";
|
|
3
|
+
import Ne from "../Pagination/Pagination.vue.js";
|
|
4
|
+
import He from "../ImportData/ImportData.vue.js";
|
|
5
|
+
import { usePersistentState as Ke } from "../../utils/usePersistentState.js";
|
|
6
|
+
import { useVLiteConfig as Le } from "../../core/config.js";
|
|
7
7
|
import { $t as f } from "../../utils/i18n.js";
|
|
8
|
-
import { SCREEN_CONTEXT_KEY as
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
8
|
+
import { SCREEN_CONTEXT_KEY as Oe } from "../DataTable/types.js";
|
|
9
|
+
import se from "./components/ScreenHeaderTitle.vue.js";
|
|
10
|
+
import ze from "./components/ScreenEmptyState.vue.js";
|
|
11
|
+
import Xe from "./components/ScreenExportModal.vue.js";
|
|
12
|
+
import oe from "./components/ScreenQuickFilters.vue.js";
|
|
13
|
+
import re from "./components/ScreenToolbar.vue.js";
|
|
14
|
+
import Ye from "../Stats/Stats.vue.js";
|
|
15
15
|
/* empty css */
|
|
16
|
-
const
|
|
16
|
+
const Ge = { key: 0 }, Je = {
|
|
17
17
|
key: 2,
|
|
18
18
|
class: "-mt-1.5 w-full min-w-0 overflow-hidden mb-3.5"
|
|
19
|
-
},
|
|
19
|
+
}, We = {
|
|
20
20
|
key: 6,
|
|
21
21
|
class: "p-8 text-center text-muted-foreground border border-dashed border-border rounded-lg"
|
|
22
|
-
},
|
|
22
|
+
}, Ze = {
|
|
23
23
|
key: 2,
|
|
24
24
|
class: "-mt-2"
|
|
25
|
-
},
|
|
25
|
+
}, _e = { key: 4 }, ht = /* @__PURE__ */ Ee({
|
|
26
26
|
__name: "Screen",
|
|
27
27
|
props: {
|
|
28
28
|
name: { default: "" },
|
|
@@ -92,21 +92,21 @@ const ze = { key: 0 }, Xe = {
|
|
|
92
92
|
quickFilterVariant: { default: "line" },
|
|
93
93
|
skipEmptyViews: { default: () => [] }
|
|
94
94
|
},
|
|
95
|
-
emits: ["add", "delete"],
|
|
96
|
-
setup(t, { emit:
|
|
97
|
-
const a = t, I =
|
|
95
|
+
emits: ["add", "delete", "activeView"],
|
|
96
|
+
setup(t, { emit: de }) {
|
|
97
|
+
const a = t, I = Le(), q = de, g = Qe(), ce = n(() => a.name || a.title || "default-screen"), ue = n(() => {
|
|
98
98
|
const e = f("vlite.screen.tableView");
|
|
99
99
|
return e !== "vlite.screen.tableView" ? e : "Table View";
|
|
100
|
-
}),
|
|
100
|
+
}), ve = n(() => {
|
|
101
101
|
const e = f("vlite.screen.listView");
|
|
102
102
|
return e !== "vlite.screen.listView" ? e : "List View";
|
|
103
|
-
}),
|
|
103
|
+
}), fe = n(() => {
|
|
104
104
|
const e = f("vlite.screen.kanbanView");
|
|
105
105
|
return e !== "vlite.screen.kanbanView" ? e : "Kanban View";
|
|
106
|
-
}),
|
|
106
|
+
}), me = n(() => {
|
|
107
107
|
const e = f("vlite.screen.calendarView");
|
|
108
108
|
return e !== "vlite.screen.calendarView" ? e : "Calendar View";
|
|
109
|
-
}),
|
|
109
|
+
}), V = n(() => {
|
|
110
110
|
if (a.views && a.views.length > 0)
|
|
111
111
|
return a.views.map((i) => ({
|
|
112
112
|
...i,
|
|
@@ -117,131 +117,135 @@ const ze = { key: 0 }, Xe = {
|
|
|
117
117
|
key: "table",
|
|
118
118
|
component: a.table ? T(a.table) : null,
|
|
119
119
|
icon: "lucide:list",
|
|
120
|
-
label:
|
|
120
|
+
label: ue.value
|
|
121
121
|
}), (a.list || g.list || g.grid) && e.push({
|
|
122
122
|
key: "list",
|
|
123
123
|
component: a.list ? T(a.list) : null,
|
|
124
124
|
icon: "lucide:layout-grid",
|
|
125
|
-
label:
|
|
125
|
+
label: ve.value
|
|
126
126
|
}), (a.kanban || g.kanban) && e.push({
|
|
127
127
|
key: "kanban",
|
|
128
128
|
component: a.kanban ? T(a.kanban) : null,
|
|
129
129
|
icon: "lucide:kanban",
|
|
130
|
-
label:
|
|
130
|
+
label: fe.value
|
|
131
131
|
}), (a.calendar || g.calendar) && e.push({
|
|
132
132
|
key: "calendar",
|
|
133
133
|
component: a.calendar ? T(a.calendar) : null,
|
|
134
134
|
icon: "lucide:calendar",
|
|
135
|
-
label:
|
|
135
|
+
label: me.value
|
|
136
136
|
}), e;
|
|
137
|
+
}), he = n(() => V.value.map((e) => e.key)), X = n(() => V.value.length > 1), Y = n(() => V.value.length > 0 ? V.value[0].key : "table"), c = Ke(`view-mode-${ce.value}`, Y.value), G = n(() => V.value.find((i) => i.key === c.value)?.component ?? null), J = (e) => {
|
|
138
|
+
c.value = e, q("activeView", e);
|
|
139
|
+
};
|
|
140
|
+
Ae(() => {
|
|
141
|
+
V.value.length > 0 && !he.value.includes(c.value) && (c.value = Y.value), q("activeView", c.value);
|
|
137
142
|
});
|
|
138
|
-
n(() =>
|
|
139
|
-
const X = n(() => S.value.length > 1), fe = n(() => S.value.length > 0 ? S.value[0].key : "table"), u = Ne(`view-mode-${re.value}`, fe.value), Y = n(() => S.value.find((i) => i.key === u.value)?.component ?? null), F = n(() => u.value === "table" && g.table ? "table" : u.value === "list" && g.list ? "list" : u.value === "list" && g.grid ? "grid" : u.value === "kanban" && g.kanban ? "kanban" : u.value === "calendar" && g.calendar ? "calendar" : null), k = p(""), m = p({}), $ = p({ field: "", order: "" }), P = p(a.pageInfo?.currentPage || 1), q = p(a.pageInfo?.itemsPerPage || a.paginationProps?.itemsPerPage || 10), o = p([]), E = p([]), B = p(!1), v = p(
|
|
143
|
+
const F = n(() => c.value === "table" && g.table ? "table" : c.value === "list" && g.list ? "list" : c.value === "list" && g.grid ? "grid" : c.value === "kanban" && g.kanban ? "kanban" : c.value === "calendar" && g.calendar ? "calendar" : null), k = h(""), m = h({}), $ = h({ field: "", order: "" }), P = h(a.pageInfo?.currentPage || 1), E = h(a.pageInfo?.itemsPerPage || a.paginationProps?.itemsPerPage || 10), o = h([]), Q = h([]), B = h(!1), v = h(
|
|
140
144
|
a.defaultQuickFilter !== void 0 ? a.defaultQuickFilter : a.quickFilters && a.quickFilters.length > 0 ? a.quickFilters[0].value : ""
|
|
141
|
-
),
|
|
142
|
-
v.value = e, P.value = 1,
|
|
143
|
-
},
|
|
145
|
+
), W = n(() => !a.quickFilters || a.quickFilters.length === 0 ? !1 : a.skipQuickFilterViews && a.skipQuickFilterViews.length > 0 ? !a.skipQuickFilterViews.includes(c.value) : !0), Z = (e) => {
|
|
146
|
+
v.value = e, P.value = 1, D();
|
|
147
|
+
}, _ = n(() => k.value && k.value.trim() !== "" || v.value !== "" && v.value !== null && v.value !== void 0 ? !0 : m.value ? Object.keys(m.value).some(
|
|
144
148
|
(e) => m.value[e] !== "" && m.value[e] !== null && m.value[e] !== void 0
|
|
145
|
-
) : !1),
|
|
146
|
-
activeView:
|
|
149
|
+
) : !1), ee = n(() => a.data && a.data.length > 0), pe = n(() => !a.skipEmptyViews || a.skipEmptyViews.length === 0 ? !1 : a.skipEmptyViews.includes(c.value)), r = n(() => ({
|
|
150
|
+
activeView: c.value,
|
|
147
151
|
searchQuery: k.value,
|
|
148
152
|
activeFilters: m.value,
|
|
149
153
|
activeQuickFilter: v.value,
|
|
150
154
|
activeSort: $.value,
|
|
151
155
|
page: P.value,
|
|
152
|
-
limit:
|
|
156
|
+
limit: E.value,
|
|
153
157
|
selectedRows: o.value,
|
|
154
|
-
isFiltered:
|
|
155
|
-
hasData:
|
|
158
|
+
isFiltered: _.value,
|
|
159
|
+
hasData: ee.value,
|
|
156
160
|
loading: a.loading
|
|
157
|
-
})),
|
|
161
|
+
})), we = {
|
|
158
162
|
forceSelectable: !a.hideSelectable,
|
|
159
163
|
onTableChange: (e) => {
|
|
160
|
-
$.value = { field: e.sort.field, order: e.sort.order },
|
|
164
|
+
$.value = { field: e.sort.field, order: e.sort.order }, D();
|
|
161
165
|
}
|
|
162
166
|
};
|
|
163
|
-
|
|
167
|
+
L(Oe, we), L("screen-selected-rows", o), L("screen-request-delete", (e) => x(e));
|
|
164
168
|
const x = (e) => {
|
|
165
|
-
|
|
166
|
-
},
|
|
167
|
-
|
|
168
|
-
},
|
|
169
|
-
|
|
169
|
+
Q.value = e, B.value = !0;
|
|
170
|
+
}, ye = () => {
|
|
171
|
+
q("delete", Q.value), B.value = !1, o.value = [];
|
|
172
|
+
}, ge = (e) => {
|
|
173
|
+
q("delete", e), o.value = [];
|
|
170
174
|
};
|
|
171
|
-
|
|
175
|
+
O(
|
|
172
176
|
() => a.pageInfo?.currentPage,
|
|
173
177
|
(e) => {
|
|
174
178
|
e && (P.value = e);
|
|
175
179
|
}
|
|
176
|
-
),
|
|
180
|
+
), O(
|
|
177
181
|
() => a.pageInfo?.itemsPerPage,
|
|
178
182
|
(e) => {
|
|
179
|
-
e && (
|
|
183
|
+
e && (E.value = e);
|
|
180
184
|
}
|
|
181
185
|
);
|
|
182
186
|
let N = null;
|
|
183
|
-
|
|
187
|
+
O(k, () => {
|
|
184
188
|
N && clearTimeout(N), N = setTimeout(() => {
|
|
185
|
-
P.value = 1,
|
|
189
|
+
P.value = 1, D();
|
|
186
190
|
}, 300);
|
|
187
191
|
});
|
|
188
|
-
const
|
|
189
|
-
P.value = e,
|
|
190
|
-
},
|
|
191
|
-
|
|
192
|
-
},
|
|
192
|
+
const ke = (e) => {
|
|
193
|
+
P.value = e, D();
|
|
194
|
+
}, be = (e) => {
|
|
195
|
+
E.value = e, P.value = 1, D();
|
|
196
|
+
}, D = () => {
|
|
193
197
|
if (!a.refetch) return;
|
|
194
198
|
const e = { ...m.value };
|
|
195
199
|
v.value !== "" && v.value !== null && v.value !== void 0 && (e[a.quickFilterKey] = v.value);
|
|
196
200
|
const i = $.value.field && $.value.order ? { field: $.value.field, order: $.value.order } : void 0, l = {
|
|
197
|
-
pagination: { page: P.value, limit:
|
|
201
|
+
pagination: { page: P.value, limit: E.value },
|
|
198
202
|
search: k.value,
|
|
199
203
|
filter: e
|
|
200
204
|
};
|
|
201
205
|
i && (l.sort = i), a.refetch(l);
|
|
202
|
-
},
|
|
206
|
+
}, te = n(() => {
|
|
203
207
|
const e = f("vlite.screen.deleteSelected");
|
|
204
208
|
return e !== "vlite.screen.deleteSelected" ? e : "Delete Selected";
|
|
205
|
-
}),
|
|
209
|
+
}), ae = n(() => {
|
|
206
210
|
const e = f("vlite.screen.refresh");
|
|
207
211
|
return e !== "vlite.screen.refresh" ? e : "Refresh";
|
|
208
|
-
}),
|
|
212
|
+
}), le = n(() => {
|
|
209
213
|
const e = f("vlite.screen.searchPlaceholder");
|
|
210
214
|
return e !== "vlite.screen.searchPlaceholder" ? e : "Search...";
|
|
211
|
-
}),
|
|
215
|
+
}), xe = n(() => {
|
|
212
216
|
const e = f("vlite.screen.confirmDeleteTitle");
|
|
213
217
|
return e !== "vlite.screen.confirmDeleteTitle" ? e : "Confirm Deletion";
|
|
214
|
-
}),
|
|
215
|
-
const e = f("vlite.screen.confirmDeleteDesc", { count:
|
|
216
|
-
return e !== "vlite.screen.confirmDeleteDesc" ? e : `Are you sure you want to delete the selected ${
|
|
217
|
-
}),
|
|
218
|
+
}), Ce = n(() => {
|
|
219
|
+
const e = f("vlite.screen.confirmDeleteDesc", { count: Q.value.length });
|
|
220
|
+
return e !== "vlite.screen.confirmDeleteDesc" ? e : `Are you sure you want to delete the selected ${Q.value.length > 1 ? "items" : "item"}?`;
|
|
221
|
+
}), Ve = n(() => {
|
|
218
222
|
const e = f("vlite.screen.confirmDeleteBtn");
|
|
219
223
|
return e !== "vlite.screen.confirmDeleteBtn" ? e : "Delete";
|
|
220
|
-
}),
|
|
224
|
+
}), De = n(() => {
|
|
221
225
|
const e = f("vlite.screen.cancelBtn");
|
|
222
226
|
return e !== "vlite.screen.cancelBtn" ? e : "Cancel";
|
|
223
|
-
}),
|
|
227
|
+
}), Se = n(() => {
|
|
224
228
|
const e = f("vlite.screen.missingView");
|
|
225
229
|
return e !== "vlite.screen.missingView" ? e : "Please provide a `:list`, `:table`, or `:views` component/slot.";
|
|
226
230
|
}), H = n(
|
|
227
231
|
() => a.exportSchema && a.exportSchema.length > 0 && a.exportProps !== !1 || a.importSchema && a.importSchema.length > 0 && a.importProps !== !1
|
|
228
|
-
),
|
|
232
|
+
), Pe = n(() => {
|
|
229
233
|
const e = f("vlite.screen.importData");
|
|
230
234
|
return e !== "vlite.screen.importData" ? e : "Import Data";
|
|
231
|
-
}),
|
|
232
|
-
e.value === "export" ?
|
|
233
|
-
},
|
|
235
|
+
}), $e = h(null), A = h(!1), K = h(!1), ie = (e) => {
|
|
236
|
+
e.value === "export" ? A.value = !0 : e.value === "import" && (K.value = !0);
|
|
237
|
+
}, Ie = n(
|
|
234
238
|
() => (a.exportSchema || []).map((e) => ({
|
|
235
239
|
field: e.name || e.field,
|
|
236
240
|
title: e.label || e.title || e.name || e.field
|
|
237
241
|
}))
|
|
238
|
-
),
|
|
242
|
+
), Fe = n(
|
|
239
243
|
() => (a.importSchema || []).map((e) => ({
|
|
240
244
|
field: e.name || e.field,
|
|
241
245
|
title: e.label || e.title || e.name || e.field,
|
|
242
246
|
required: e.required || !1
|
|
243
247
|
}))
|
|
244
|
-
),
|
|
248
|
+
), Be = async (e) => I?.services?.importApi && a.importType ? await I.services.importApi(a.importType, e) : (console.warn(
|
|
245
249
|
"VLite Screen: No importApi configured or no importType provided for generic import."
|
|
246
250
|
), {
|
|
247
251
|
processed: e.data.length,
|
|
@@ -250,9 +254,9 @@ const ze = { key: 0 }, Xe = {
|
|
|
250
254
|
skipped: 0,
|
|
251
255
|
failed: 0,
|
|
252
256
|
errors: []
|
|
253
|
-
}),
|
|
257
|
+
}), Te = () => D(), Re = n(
|
|
254
258
|
() => a.exportMode || I?.exportData?.mode || "frontend"
|
|
255
|
-
),
|
|
259
|
+
), qe = async (e) => {
|
|
256
260
|
I?.services?.exportApi && a.exportType ? await I.services.exportApi(a.exportType, {
|
|
257
261
|
format: e,
|
|
258
262
|
search: k.value,
|
|
@@ -261,21 +265,21 @@ const ze = { key: 0 }, Xe = {
|
|
|
261
265
|
"VLite Screen: No exportApi configured or no exportType provided for generic backend export."
|
|
262
266
|
);
|
|
263
267
|
};
|
|
264
|
-
return (e, i) => (d(),
|
|
265
|
-
class:
|
|
268
|
+
return (e, i) => (d(), p("div", {
|
|
269
|
+
class: S(["flex flex-col w-full space-y-8", t.containerClass])
|
|
266
270
|
}, [
|
|
267
|
-
t.variant === "two" ? (d(),
|
|
268
|
-
t.customHeader ? s(e.$slots, "custom-header",
|
|
271
|
+
t.variant === "two" ? (d(), p(U, { key: 0 }, [
|
|
272
|
+
t.customHeader ? s(e.$slots, "custom-header", u(y({ key: 1 }, r.value))) : (d(), p("div", {
|
|
269
273
|
key: 0,
|
|
270
|
-
class:
|
|
274
|
+
class: S([t.headerClass, "flex flex-col space-y-6"])
|
|
271
275
|
}, [
|
|
272
|
-
|
|
273
|
-
class:
|
|
276
|
+
j("div", {
|
|
277
|
+
class: S([
|
|
274
278
|
"flex flex-col md:flex-row justify-between items-start md:items-center gap-4",
|
|
275
279
|
t.topHeaderClass
|
|
276
280
|
])
|
|
277
281
|
}, [
|
|
278
|
-
C(
|
|
282
|
+
C(se, {
|
|
279
283
|
title: t.title,
|
|
280
284
|
"title-i18n": t.titleI18n,
|
|
281
285
|
"title-class": t.titleClass,
|
|
@@ -284,68 +288,68 @@ const ze = { key: 0 }, Xe = {
|
|
|
284
288
|
"description-class": t.descriptionClass,
|
|
285
289
|
info: t.info,
|
|
286
290
|
"info-i18n": t.infoI18n
|
|
287
|
-
},
|
|
291
|
+
}, ne({ _: 2 }, [
|
|
288
292
|
e.$slots.title ? {
|
|
289
293
|
name: "title",
|
|
290
294
|
fn: b(() => [
|
|
291
|
-
s(e.$slots, "title",
|
|
295
|
+
s(e.$slots, "title", u(w(r.value)))
|
|
292
296
|
]),
|
|
293
297
|
key: "0"
|
|
294
298
|
} : void 0,
|
|
295
299
|
e.$slots.description ? {
|
|
296
300
|
name: "description",
|
|
297
301
|
fn: b(() => [
|
|
298
|
-
s(e.$slots, "description",
|
|
302
|
+
s(e.$slots, "description", u(w(r.value)))
|
|
299
303
|
]),
|
|
300
304
|
key: "1"
|
|
301
305
|
} : void 0
|
|
302
306
|
]), 1032, ["title", "title-i18n", "title-class", "description", "description-i18n", "description-class", "info", "info-i18n"]),
|
|
303
|
-
t.stats && t.stats.length > 0 ? (d(),
|
|
304
|
-
C(
|
|
307
|
+
t.stats && t.stats.length > 0 ? (d(), p("div", Ge, [
|
|
308
|
+
C(Ye, y({ items: t.stats }, t.statsProps), null, 16, ["items"])
|
|
305
309
|
])) : s(e.$slots, "header-stats", { key: 1 })
|
|
306
310
|
], 2),
|
|
307
|
-
|
|
308
|
-
class:
|
|
311
|
+
j("div", {
|
|
312
|
+
class: S([
|
|
309
313
|
"flex flex-col lg:flex-row lg:items-center justify-between gap-4",
|
|
310
314
|
t.bottomHeaderClass
|
|
311
315
|
])
|
|
312
316
|
}, [
|
|
313
|
-
|
|
314
|
-
class:
|
|
317
|
+
j("div", {
|
|
318
|
+
class: S([
|
|
315
319
|
"flex-1 w-full min-w-0 flex items-center justify-start overflow-hidden pt-1.5",
|
|
316
320
|
t.filtersContainerClass
|
|
317
321
|
])
|
|
318
322
|
}, [
|
|
319
|
-
|
|
323
|
+
W.value ? (d(), M(oe, {
|
|
320
324
|
key: 0,
|
|
321
325
|
modelValue: v.value,
|
|
322
326
|
"onUpdate:modelValue": i[0] || (i[0] = (l) => v.value = l),
|
|
323
327
|
options: t.quickFilters,
|
|
324
328
|
variant: t.quickFilterVariant,
|
|
325
|
-
onChange:
|
|
329
|
+
onChange: Z
|
|
326
330
|
}, null, 8, ["modelValue", "options", "variant"])) : R("", !0)
|
|
327
331
|
], 2),
|
|
328
|
-
C(
|
|
329
|
-
class:
|
|
332
|
+
C(re, {
|
|
333
|
+
class: S([
|
|
330
334
|
"flex items-center gap-2.5 max-sm:w-full sm:w-auto justify-end",
|
|
331
335
|
t.actionsContainerClass
|
|
332
336
|
]),
|
|
333
337
|
"selected-rows": o.value,
|
|
334
338
|
"hide-selectable": t.hideSelectable,
|
|
335
339
|
"hide-delete-btn": t.hideDeleteBtn,
|
|
336
|
-
"txt-delete-selected":
|
|
340
|
+
"txt-delete-selected": te.value,
|
|
337
341
|
"has-multiple-views": X.value,
|
|
338
|
-
"active-view":
|
|
339
|
-
"resolved-views":
|
|
342
|
+
"active-view": z(c),
|
|
343
|
+
"resolved-views": V.value,
|
|
340
344
|
"show-refresh": t.showRefresh,
|
|
341
345
|
loading: t.loading,
|
|
342
|
-
"txt-refresh":
|
|
346
|
+
"txt-refresh": ae.value,
|
|
343
347
|
"filter-schema": t.filterSchema,
|
|
344
348
|
"filter-type": t.filterType,
|
|
345
349
|
"active-filters": m.value,
|
|
346
350
|
"can-search": t.canSearch,
|
|
347
351
|
"search-query": k.value,
|
|
348
|
-
"txt-search":
|
|
352
|
+
"txt-search": le.value,
|
|
349
353
|
"can-add": t.canAdd,
|
|
350
354
|
"add-component": t.addComponent,
|
|
351
355
|
"add-btn": t.addBtn,
|
|
@@ -356,33 +360,33 @@ const ze = { key: 0 }, Xe = {
|
|
|
356
360
|
"import-props": t.importProps,
|
|
357
361
|
"screen-state": r.value,
|
|
358
362
|
onDelete: x,
|
|
359
|
-
"onUpdate:activeView":
|
|
360
|
-
"onUpdate:searchQuery": i[
|
|
361
|
-
"onUpdate:activeFilters": i[
|
|
362
|
-
onRefresh:
|
|
363
|
-
onAdd: i[
|
|
364
|
-
onSelectDropdown:
|
|
363
|
+
"onUpdate:activeView": J,
|
|
364
|
+
"onUpdate:searchQuery": i[1] || (i[1] = (l) => k.value = l),
|
|
365
|
+
"onUpdate:activeFilters": i[2] || (i[2] = (l) => m.value = l),
|
|
366
|
+
onRefresh: D,
|
|
367
|
+
onAdd: i[3] || (i[3] = (l) => e.$emit("add")),
|
|
368
|
+
onSelectDropdown: ie
|
|
365
369
|
}, {
|
|
366
370
|
"before-search": b((l) => [
|
|
367
|
-
s(e.$slots, "before-search",
|
|
371
|
+
s(e.$slots, "before-search", u(w(l)))
|
|
368
372
|
]),
|
|
369
373
|
actions: b((l) => [
|
|
370
|
-
s(e.$slots, "actions",
|
|
374
|
+
s(e.$slots, "actions", u(w(l)))
|
|
371
375
|
]),
|
|
372
376
|
"after-add": b((l) => [
|
|
373
|
-
s(e.$slots, "after-add",
|
|
377
|
+
s(e.$slots, "after-add", u(w(l)))
|
|
374
378
|
]),
|
|
375
379
|
_: 3
|
|
376
380
|
}, 8, ["class", "selected-rows", "hide-selectable", "hide-delete-btn", "txt-delete-selected", "has-multiple-views", "active-view", "resolved-views", "show-refresh", "loading", "txt-refresh", "filter-schema", "filter-type", "active-filters", "can-search", "search-query", "txt-search", "can-add", "add-component", "add-btn", "data", "refetch", "has-export-or-import", "export-props", "import-props", "screen-state"])
|
|
377
381
|
], 2)
|
|
378
382
|
], 2)),
|
|
379
|
-
s(e.$slots, "sub-header",
|
|
380
|
-
], 64)) : (d(),
|
|
381
|
-
t.customHeader ? s(e.$slots, "custom-header",
|
|
383
|
+
s(e.$slots, "sub-header", u(w(r.value)))
|
|
384
|
+
], 64)) : (d(), p(U, { key: 1 }, [
|
|
385
|
+
t.customHeader ? s(e.$slots, "custom-header", u(y({ key: 1 }, r.value))) : (d(), p("div", {
|
|
382
386
|
key: 0,
|
|
383
|
-
class:
|
|
387
|
+
class: S([t.headerClass, "flex flex-col md:flex-row sm:items-start md:items-center justify-between gap-4"])
|
|
384
388
|
}, [
|
|
385
|
-
C(
|
|
389
|
+
C(se, {
|
|
386
390
|
title: t.title,
|
|
387
391
|
"title-i18n": t.titleI18n,
|
|
388
392
|
"title-class": t.titleClass,
|
|
@@ -391,40 +395,40 @@ const ze = { key: 0 }, Xe = {
|
|
|
391
395
|
"description-class": t.descriptionClass,
|
|
392
396
|
info: t.info,
|
|
393
397
|
"info-i18n": t.infoI18n
|
|
394
|
-
},
|
|
398
|
+
}, ne({ _: 2 }, [
|
|
395
399
|
e.$slots.title ? {
|
|
396
400
|
name: "title",
|
|
397
401
|
fn: b(() => [
|
|
398
|
-
s(e.$slots, "title",
|
|
402
|
+
s(e.$slots, "title", u(w(r.value)))
|
|
399
403
|
]),
|
|
400
404
|
key: "0"
|
|
401
405
|
} : void 0,
|
|
402
406
|
e.$slots.description ? {
|
|
403
407
|
name: "description",
|
|
404
408
|
fn: b(() => [
|
|
405
|
-
s(e.$slots, "description",
|
|
409
|
+
s(e.$slots, "description", u(w(r.value)))
|
|
406
410
|
]),
|
|
407
411
|
key: "1"
|
|
408
412
|
} : void 0
|
|
409
413
|
]), 1032, ["title", "title-i18n", "title-class", "description", "description-i18n", "description-class", "info", "info-i18n"]),
|
|
410
|
-
C(
|
|
414
|
+
C(re, {
|
|
411
415
|
class: "flex flex-col sm:flex-row items-start sm:items-center gap-2.5 w-full justify-end",
|
|
412
416
|
"selected-rows": o.value,
|
|
413
417
|
"hide-selectable": t.hideSelectable,
|
|
414
418
|
"hide-delete-btn": t.hideDeleteBtn,
|
|
415
|
-
"txt-delete-selected":
|
|
419
|
+
"txt-delete-selected": te.value,
|
|
416
420
|
"has-multiple-views": X.value,
|
|
417
|
-
"active-view":
|
|
418
|
-
"resolved-views":
|
|
421
|
+
"active-view": z(c),
|
|
422
|
+
"resolved-views": V.value,
|
|
419
423
|
"show-refresh": t.showRefresh,
|
|
420
424
|
loading: t.loading,
|
|
421
|
-
"txt-refresh":
|
|
425
|
+
"txt-refresh": ae.value,
|
|
422
426
|
"filter-schema": t.filterSchema,
|
|
423
427
|
"filter-type": t.filterType,
|
|
424
428
|
"active-filters": m.value,
|
|
425
429
|
"can-search": t.canSearch,
|
|
426
430
|
"search-query": k.value,
|
|
427
|
-
"txt-search":
|
|
431
|
+
"txt-search": le.value,
|
|
428
432
|
"can-add": t.canAdd,
|
|
429
433
|
"add-component": t.addComponent,
|
|
430
434
|
"add-btn": t.addBtn,
|
|
@@ -435,53 +439,53 @@ const ze = { key: 0 }, Xe = {
|
|
|
435
439
|
"import-props": t.importProps,
|
|
436
440
|
"screen-state": r.value,
|
|
437
441
|
onDelete: x,
|
|
438
|
-
"onUpdate:activeView":
|
|
439
|
-
"onUpdate:searchQuery": i[
|
|
440
|
-
"onUpdate:activeFilters": i[
|
|
441
|
-
onRefresh:
|
|
442
|
-
onAdd: i[
|
|
443
|
-
onSelectDropdown:
|
|
442
|
+
"onUpdate:activeView": J,
|
|
443
|
+
"onUpdate:searchQuery": i[4] || (i[4] = (l) => k.value = l),
|
|
444
|
+
"onUpdate:activeFilters": i[5] || (i[5] = (l) => m.value = l),
|
|
445
|
+
onRefresh: D,
|
|
446
|
+
onAdd: i[6] || (i[6] = (l) => e.$emit("add")),
|
|
447
|
+
onSelectDropdown: ie
|
|
444
448
|
}, {
|
|
445
449
|
"before-search": b((l) => [
|
|
446
|
-
s(e.$slots, "before-search",
|
|
450
|
+
s(e.$slots, "before-search", u(w(l)))
|
|
447
451
|
]),
|
|
448
452
|
actions: b((l) => [
|
|
449
|
-
s(e.$slots, "actions",
|
|
453
|
+
s(e.$slots, "actions", u(w(l)))
|
|
450
454
|
]),
|
|
451
455
|
"after-add": b((l) => [
|
|
452
|
-
s(e.$slots, "after-add",
|
|
456
|
+
s(e.$slots, "after-add", u(w(l)))
|
|
453
457
|
]),
|
|
454
458
|
_: 3
|
|
455
459
|
}, 8, ["selected-rows", "hide-selectable", "hide-delete-btn", "txt-delete-selected", "has-multiple-views", "active-view", "resolved-views", "show-refresh", "loading", "txt-refresh", "filter-schema", "filter-type", "active-filters", "can-search", "search-query", "txt-search", "can-add", "add-component", "add-btn", "data", "refetch", "has-export-or-import", "export-props", "import-props", "screen-state"])
|
|
456
460
|
], 2)),
|
|
457
|
-
s(e.$slots, "sub-header",
|
|
458
|
-
|
|
459
|
-
C(
|
|
461
|
+
s(e.$slots, "sub-header", u(w(r.value))),
|
|
462
|
+
W.value ? (d(), p("div", Je, [
|
|
463
|
+
C(oe, {
|
|
460
464
|
modelValue: v.value,
|
|
461
|
-
"onUpdate:modelValue": i[
|
|
465
|
+
"onUpdate:modelValue": i[7] || (i[7] = (l) => v.value = l),
|
|
462
466
|
options: t.quickFilters,
|
|
463
467
|
variant: t.quickFilterVariant,
|
|
464
|
-
onChange:
|
|
468
|
+
onChange: Z
|
|
465
469
|
}, null, 8, ["modelValue", "options", "variant"])
|
|
466
470
|
])) : R("", !0)
|
|
467
471
|
], 64)),
|
|
468
|
-
|
|
469
|
-
class:
|
|
472
|
+
j("div", {
|
|
473
|
+
class: S(["flex-1 w-full relative", t.mainContainerClass])
|
|
470
474
|
}, [
|
|
471
|
-
!
|
|
472
|
-
e.$slots.empty ? s(e.$slots, "empty",
|
|
475
|
+
!ee.value && !t.loading && !pe.value ? (d(), p(U, { key: 0 }, [
|
|
476
|
+
e.$slots.empty ? s(e.$slots, "empty", u(y({ key: 0 }, r.value))) : (d(), M(ze, {
|
|
473
477
|
key: 1,
|
|
474
478
|
"empty-title": t.emptyTitle,
|
|
475
479
|
"empty-title-i18n": t.emptyTitleI18n,
|
|
476
480
|
"empty-description": t.emptyDescription,
|
|
477
481
|
"empty-description-i18n": t.emptyDescriptionI18n,
|
|
478
482
|
"empty-icon": t.emptyIcon,
|
|
479
|
-
"is-filtered":
|
|
483
|
+
"is-filtered": _.value,
|
|
480
484
|
"can-add": t.canAdd,
|
|
481
485
|
"add-component": t.addComponent,
|
|
482
486
|
"add-btn": t.addBtn
|
|
483
487
|
}, null, 8, ["empty-title", "empty-title-i18n", "empty-description", "empty-description-i18n", "empty-icon", "is-filtered", "can-add", "add-component", "add-btn"]))
|
|
484
|
-
], 64)) : (d(),
|
|
488
|
+
], 64)) : (d(), p(U, { key: 1 }, [
|
|
485
489
|
F.value === "table" ? s(e.$slots, "table", y({
|
|
486
490
|
key: 0,
|
|
487
491
|
data: t.data,
|
|
@@ -517,60 +521,60 @@ const ze = { key: 0 }, Xe = {
|
|
|
517
521
|
selectedRows: o.value,
|
|
518
522
|
delete: x,
|
|
519
523
|
updateSelectedRows: (l) => o.value = l
|
|
520
|
-
}, r.value)) :
|
|
524
|
+
}, r.value)) : G.value ? (d(), M(Ue(G.value), y({
|
|
521
525
|
key: 5,
|
|
522
526
|
data: t.data,
|
|
523
527
|
loading: t.loading,
|
|
524
528
|
refetch: t.refetch,
|
|
525
529
|
selectedRows: o.value,
|
|
526
|
-
"onUpdate:selectedRows": i[
|
|
530
|
+
"onUpdate:selectedRows": i[8] || (i[8] = (l) => o.value = l),
|
|
527
531
|
delete: x,
|
|
528
|
-
onDelete:
|
|
529
|
-
}, t.viewProps), null, 16, ["data", "loading", "refetch", "selectedRows"])) : (d(),
|
|
532
|
+
onDelete: ge
|
|
533
|
+
}, t.viewProps), null, 16, ["data", "loading", "refetch", "selectedRows"])) : (d(), p("div", We, je(Se.value), 1))
|
|
530
534
|
], 64))
|
|
531
535
|
], 2),
|
|
532
|
-
t.pagination && t.pageInfo && t.pageInfo.totalPages > 1 ? (d(),
|
|
533
|
-
C(
|
|
536
|
+
t.pagination && t.pageInfo && t.pageInfo.totalPages > 1 ? (d(), p("div", Ze, [
|
|
537
|
+
C(z(Ne), y({
|
|
534
538
|
"current-page": t.pageInfo.currentPage,
|
|
535
539
|
"total-pages": t.pageInfo.totalPages,
|
|
536
540
|
"total-items": t.pageInfo.totalItems
|
|
537
541
|
}, t.paginationProps, {
|
|
538
|
-
onChange:
|
|
539
|
-
"onUpdate:itemsPerPage":
|
|
542
|
+
onChange: ke,
|
|
543
|
+
"onUpdate:itemsPerPage": be
|
|
540
544
|
}), null, 16, ["current-page", "total-pages", "total-items"])
|
|
541
545
|
])) : R("", !0),
|
|
542
|
-
C(
|
|
546
|
+
C(Me, {
|
|
543
547
|
show: B.value,
|
|
544
|
-
"onUpdate:show": i[
|
|
545
|
-
title:
|
|
546
|
-
description:
|
|
547
|
-
"confirm-text":
|
|
548
|
-
"cancel-text":
|
|
548
|
+
"onUpdate:show": i[9] || (i[9] = (l) => B.value = l),
|
|
549
|
+
title: xe.value,
|
|
550
|
+
description: Ce.value,
|
|
551
|
+
"confirm-text": Ve.value,
|
|
552
|
+
"cancel-text": De.value,
|
|
549
553
|
variant: "danger",
|
|
550
|
-
onConfirm:
|
|
551
|
-
onCancel: i[
|
|
554
|
+
onConfirm: ye,
|
|
555
|
+
onCancel: i[10] || (i[10] = (l) => B.value = !1)
|
|
552
556
|
}, null, 8, ["show", "title", "description", "confirm-text", "cancel-text"]),
|
|
553
|
-
|
|
557
|
+
A.value ? (d(), M(Xe, {
|
|
554
558
|
key: 3,
|
|
555
|
-
show:
|
|
556
|
-
"onUpdate:show": i[
|
|
559
|
+
show: A.value,
|
|
560
|
+
"onUpdate:show": i[11] || (i[11] = (l) => A.value = l),
|
|
557
561
|
data: t.data || [],
|
|
558
|
-
fields:
|
|
559
|
-
mode:
|
|
562
|
+
fields: Ie.value,
|
|
563
|
+
mode: Re.value,
|
|
560
564
|
"export-props": t.exportProps,
|
|
561
|
-
"on-export":
|
|
565
|
+
"on-export": qe
|
|
562
566
|
}, null, 8, ["show", "data", "fields", "mode", "export-props"])) : R("", !0),
|
|
563
|
-
H.value ? (d(),
|
|
564
|
-
C(
|
|
565
|
-
show:
|
|
566
|
-
"onUpdate:show": i[
|
|
567
|
+
H.value ? (d(), p("div", _e, [
|
|
568
|
+
C(He, y({
|
|
569
|
+
show: K.value,
|
|
570
|
+
"onUpdate:show": i[12] || (i[12] = (l) => K.value = l),
|
|
567
571
|
ref_key: "importDataRef",
|
|
568
|
-
ref:
|
|
569
|
-
fields:
|
|
570
|
-
processBatch:
|
|
571
|
-
onComplete:
|
|
572
|
+
ref: $e,
|
|
573
|
+
fields: Fe.value,
|
|
574
|
+
processBatch: Be,
|
|
575
|
+
onComplete: Te
|
|
572
576
|
}, typeof t.importProps == "object" ? t.importProps : {}, {
|
|
573
|
-
title:
|
|
577
|
+
title: Pe.value,
|
|
574
578
|
class: "hidden!"
|
|
575
579
|
}), null, 16, ["show", "fields", "title"])
|
|
576
580
|
])) : R("", !0)
|
|
@@ -578,5 +582,5 @@ const ze = { key: 0 }, Xe = {
|
|
|
578
582
|
}
|
|
579
583
|
});
|
|
580
584
|
export {
|
|
581
|
-
|
|
585
|
+
ht as default
|
|
582
586
|
};
|