vlite3 1.5.0 → 1.5.2
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/Button.vue.js +2 -2
- package/components/Button.vue2.js +10 -10
- package/components/CategoryManager/CategoryManager.vue2.js +3 -3
- package/components/Chart/GanttChart.vue.d.ts +92 -2
- package/components/Chart/GanttChart.vue.js +2 -2
- package/components/Chart/GanttChart.vue2.js +1028 -878
- package/components/Chart/GanttChartDateUtils.js +28 -24
- package/components/Chart/index.d.ts +1 -1
- package/components/Chart/types.d.ts +88 -1
- package/components/CommandPalette/CommandPaletteContent.vue2.js +1 -1
- package/components/CommandPalette/{CommandPaletteItem.vue.js → CommandPaletteItem.vue2.js} +1 -1
- package/components/DataTable/DataTable.vue.js +1 -1
- package/components/Dropdown/DropdownMenu.vue.js +1 -1
- package/components/Form/{AccordionView.vue.js → AccordionView.vue2.js} +1 -1
- package/components/Form/index.vue2.js +1 -1
- package/components/Kanban/Kanban.vue.d.ts +6 -5
- package/components/Kanban/Kanban.vue.js +1 -1
- package/components/Kanban/Kanban.vue2.js +139 -118
- package/components/Kanban/groupKanbanData.d.ts +36 -0
- package/components/Kanban/groupKanbanData.js +72 -0
- package/components/Kanban/index.d.ts +1 -0
- package/components/Kanban/types.d.ts +17 -0
- package/components/NavbarCommandPalette.vue.js +1 -1
- package/components/PanZoomViewport/PanZoomViewport.vue.d.ts +1 -1
- package/components/RichTextEditor/RichTextEditor.vue.js +4 -4
- package/components/RichTextEditor/RichTextLinkPopover.vue3.js +2 -2
- package/components/RichTextEditor/RichTextToolbar.vue3.js +2 -2
- package/components/Screen/Screen.vue.js +80 -82
- package/components/Screen/ScreenFilter.vue.js +3 -3
- package/components/Screen/components/ScreenAddAction.vue.js +32 -32
- package/components/Screen/components/ScreenHeaderTitle.vue.js +11 -11
- package/components/Screen/components/ScreenToolbar.vue.d.ts +9 -0
- package/components/Screen/components/ScreenToolbar.vue.js +85 -52
- package/components/ToastNotification.vue.js +2 -2
- package/components/ToastNotification.vue2.js +38 -36
- package/index.js +426 -421
- package/package.json +1 -1
- package/style.css +10 -1
- /package/components/Dropdown/{DropdownMenu.vue2.js → DropdownMenu.vue3.js} +0 -0
- /package/components/RichTextEditor/{RichTextLinkPopover.vue2.js → RichTextLinkPopover.vue.js} +0 -0
- /package/components/RichTextEditor/{RichTextToolbar.vue2.js → RichTextToolbar.vue.js} +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { KanbanColumn } from './types';
|
|
2
|
+
/** Sentinel column id used when a group value is null/blank and no `emptyColumnId` is provided. */
|
|
3
|
+
export declare const KANBAN_EMPTY_GROUP_KEY = "__kanban_empty__";
|
|
4
|
+
/** Sentinel column id used when a group value is unmatched and orphans are collapsed. */
|
|
5
|
+
export declare const KANBAN_UNMAPPED_GROUP_KEY = "__kanban_unmapped__";
|
|
6
|
+
export interface GroupKanbanRawDataOptions {
|
|
7
|
+
/** Column id that receives null / blank group values. */
|
|
8
|
+
emptyColumnId?: string | number;
|
|
9
|
+
/** Column id that receives values that do not match any configured column. */
|
|
10
|
+
unmappedColumnId?: string | number;
|
|
11
|
+
/**
|
|
12
|
+
* When true (default), append columns for orphan group keys so cards never
|
|
13
|
+
* disappear from the board when `unmappedColumnId` is not provided.
|
|
14
|
+
*/
|
|
15
|
+
includeOrphanColumns?: boolean;
|
|
16
|
+
emptyColumnTitle?: string;
|
|
17
|
+
unmappedColumnTitle?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface GroupKanbanRawDataResult {
|
|
20
|
+
grouped: Record<string, any[]>;
|
|
21
|
+
columns: KanbanColumn[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* One consistent resolver for column ids and item group values.
|
|
25
|
+
* Trims strings and maps null/undefined to `''`.
|
|
26
|
+
*/
|
|
27
|
+
export declare function resolveKanbanGroupKey(value: unknown): string;
|
|
28
|
+
/**
|
|
29
|
+
* Group a flat `rawData` array into column buckets.
|
|
30
|
+
*
|
|
31
|
+
* - Column ids and item values are matched via {@link resolveKanbanGroupKey}
|
|
32
|
+
* (trim + case-insensitive).
|
|
33
|
+
* - Empty values land in `emptyColumnId` (or an auto empty column).
|
|
34
|
+
* - Unmatched values land in `unmappedColumnId`, or become orphan columns.
|
|
35
|
+
*/
|
|
36
|
+
export declare function groupKanbanRawData(rawData: any[] | null | undefined, columns: KanbanColumn[] | null | undefined, groupKey: string, positionKey: string, options?: GroupKanbanRawDataOptions): GroupKanbanRawDataResult;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
const A = "__kanban_empty__", w = "__kanban_unmapped__";
|
|
2
|
+
function I(s) {
|
|
3
|
+
return s == null ? "" : String(s).trim();
|
|
4
|
+
}
|
|
5
|
+
const i = (s) => I(s).toLowerCase();
|
|
6
|
+
function K(s, _, S, g, u = {}) {
|
|
7
|
+
const m = Array.isArray(_) ? _ : [], p = u.includeOrphanColumns !== !1, o = u.emptyColumnId != null ? u.emptyColumnId : p ? A : void 0, c = u.unmappedColumnId, d = /* @__PURE__ */ new Map();
|
|
8
|
+
for (const e of m) {
|
|
9
|
+
const t = i(e.id);
|
|
10
|
+
d.has(t) || d.set(t, e.id);
|
|
11
|
+
}
|
|
12
|
+
const r = {};
|
|
13
|
+
for (const e of m)
|
|
14
|
+
r[String(e.id)] = [];
|
|
15
|
+
const y = /* @__PURE__ */ new Set();
|
|
16
|
+
let C = !1, h = !1;
|
|
17
|
+
for (const e of s || []) {
|
|
18
|
+
const t = I(e?.[S]);
|
|
19
|
+
let n;
|
|
20
|
+
if (t) {
|
|
21
|
+
const f = d.get(t.toLowerCase());
|
|
22
|
+
if (f !== void 0)
|
|
23
|
+
n = f;
|
|
24
|
+
else if (c != null)
|
|
25
|
+
n = c, d.has(i(n)) || (h = !0);
|
|
26
|
+
else if (p)
|
|
27
|
+
n = t, y.add(n);
|
|
28
|
+
else
|
|
29
|
+
continue;
|
|
30
|
+
} else {
|
|
31
|
+
if (o == null) continue;
|
|
32
|
+
n = o, d.has(i(n)) || (C = !0);
|
|
33
|
+
}
|
|
34
|
+
const a = String(n);
|
|
35
|
+
r[a] || (r[a] = []), r[a].push({ ...e });
|
|
36
|
+
}
|
|
37
|
+
for (const e of Object.keys(r))
|
|
38
|
+
r[e].sort((t, n) => {
|
|
39
|
+
const a = (Number(t?.[g]) || 0) - (Number(n?.[g]) || 0);
|
|
40
|
+
if (a !== 0) return a;
|
|
41
|
+
const f = new Date(n?.createdAt || 0).getTime() - new Date(t?.createdAt || 0).getTime();
|
|
42
|
+
return f !== 0 ? f : String(n?.id || "").localeCompare(String(t?.id || ""));
|
|
43
|
+
});
|
|
44
|
+
const l = [...m];
|
|
45
|
+
if (C && o != null && l.push({
|
|
46
|
+
id: o,
|
|
47
|
+
title: u.emptyColumnTitle || "Unmapped"
|
|
48
|
+
}), h && c != null && l.push({
|
|
49
|
+
id: c,
|
|
50
|
+
title: u.unmappedColumnTitle || "Unmapped"
|
|
51
|
+
}), p && c == null)
|
|
52
|
+
for (const e of y)
|
|
53
|
+
l.some(
|
|
54
|
+
(n) => i(n.id) === i(e)
|
|
55
|
+
) || l.push({
|
|
56
|
+
id: e,
|
|
57
|
+
title: String(e)
|
|
58
|
+
});
|
|
59
|
+
if (o === A && !r[String(o)]?.length && !m.some((e) => i(e.id) === i(o))) {
|
|
60
|
+
const e = l.findIndex(
|
|
61
|
+
(t) => i(t.id) === i(o)
|
|
62
|
+
);
|
|
63
|
+
e >= 0 && l.splice(e, 1), delete r[String(o)];
|
|
64
|
+
}
|
|
65
|
+
return { grouped: r, columns: l };
|
|
66
|
+
}
|
|
67
|
+
export {
|
|
68
|
+
A as KANBAN_EMPTY_GROUP_KEY,
|
|
69
|
+
w as KANBAN_UNMAPPED_GROUP_KEY,
|
|
70
|
+
K as groupKanbanRawData,
|
|
71
|
+
I as resolveKanbanGroupKey
|
|
72
|
+
};
|
|
@@ -77,6 +77,23 @@ export interface KanbanProps {
|
|
|
77
77
|
rawData?: any[];
|
|
78
78
|
groupKey?: string;
|
|
79
79
|
positionKey?: string;
|
|
80
|
+
/**
|
|
81
|
+
* Column id that receives items whose group value is null / blank.
|
|
82
|
+
* When omitted, an auto "Unmapped" empty column is used (if orphans are enabled).
|
|
83
|
+
*/
|
|
84
|
+
emptyColumnId?: string | number;
|
|
85
|
+
/**
|
|
86
|
+
* Column id that receives items whose group value does not match any column.
|
|
87
|
+
* Prefer providing this (plus a matching column) for a single Unmapped lane.
|
|
88
|
+
*/
|
|
89
|
+
unmappedColumnId?: string | number;
|
|
90
|
+
/**
|
|
91
|
+
* When true (default), append columns for unmatched group values so cards
|
|
92
|
+
* never silently disappear after a `groupKey` / `columns` change.
|
|
93
|
+
*/
|
|
94
|
+
includeOrphanColumns?: boolean;
|
|
95
|
+
emptyColumnTitle?: string;
|
|
96
|
+
unmappedColumnTitle?: string;
|
|
80
97
|
boardClass?: string;
|
|
81
98
|
headerClass?: string;
|
|
82
99
|
bodyClass?: string;
|
|
@@ -3,7 +3,7 @@ import L from "./Icon.vue.js";
|
|
|
3
3
|
import v from "./Modal.vue.js";
|
|
4
4
|
import N from "./CommandPalette/CommandPaletteContent.vue.js";
|
|
5
5
|
import { $t as U } from "../utils/i18n.js";
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
const V = { class: "block truncate -text-fs-1.5" }, S = { class: "ms-auto inline-flex items-center gap-0.5 px-1.5 py-0.5 rounded text-[10px] font-mono font-medium border border-border/80 bg-background text-muted-foreground ms-1" }, A = /* @__PURE__ */ x({
|
|
8
8
|
__name: "NavbarCommandPalette",
|
|
9
9
|
props: {
|
|
@@ -151,10 +151,10 @@ declare const __VLS_component: import('vue').DefineComponent<PanZoomViewportProp
|
|
|
151
151
|
disabled: boolean;
|
|
152
152
|
modelValue: PanZoomViewportTransform;
|
|
153
153
|
contentClass: string;
|
|
154
|
+
zoomStep: number;
|
|
154
155
|
minScale: number;
|
|
155
156
|
maxScale: number;
|
|
156
157
|
keyboard: boolean;
|
|
157
|
-
zoomStep: number;
|
|
158
158
|
wheelZoomSpeed: number;
|
|
159
159
|
keyboardPanStep: number;
|
|
160
160
|
fitPadding: number;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { defineComponent as te, ref as v, shallowRef as ne, watch as oe, computed as h, onMounted as le, onUnmounted as ae, openBlock as C, createElementBlock as L, normalizeClass as re, toDisplayString as I, createCommentVNode as U, createElementVNode as w, createVNode as q, unref as a, normalizeStyle as ie } from "vue";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import se from "./RichTextToolbar.
|
|
4
|
-
/* empty css
|
|
5
|
-
import de from "./RichTextLinkPopover.
|
|
6
|
-
/* empty css
|
|
3
|
+
import se from "./RichTextToolbar.vue.js";
|
|
4
|
+
/* empty css */
|
|
5
|
+
import de from "./RichTextLinkPopover.vue.js";
|
|
6
|
+
/* empty css */
|
|
7
7
|
import { useRichTextImageUpload as ue } from "./composables/useRichTextImageUpload.js";
|
|
8
8
|
import { useRichTextLinks as ce } from "./composables/useRichTextLinks.js";
|
|
9
9
|
const fe = ["aria-labelledby", "aria-describedby"], me = ["id", "for"], ve = { class: "rte-wrapper" }, ye = { class: "rte-body-wrap" }, ge = ["id", "contenteditable", "aria-label", "aria-readonly", "aria-disabled", "aria-invalid"], be = ["id"], Se = /* @__PURE__ */ te({
|
|
@@ -1,4 +1,4 @@
|
|
|
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 P, Fragment as U, createElementVNode as j, createVNode 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 P, Fragment as U, createElementVNode as j, createVNode as x, createSlots as ne, withCtx as b, renderSlot as o, normalizeProps as u, guardReactiveProps as w, mergeProps as g, createBlock as M, createCommentVNode as R, unref as z, resolveDynamicComponent as Ue, toDisplayString as je } from "vue";
|
|
2
2
|
import Me from "../ConfirmationModal.vue.js";
|
|
3
3
|
import Ne from "../Pagination/Pagination.vue.js";
|
|
4
4
|
import He from "../ImportData/ImportData.vue.js";
|
|
@@ -6,10 +6,10 @@ import { usePersistentState as Ke } from "../../utils/usePersistentState.js";
|
|
|
6
6
|
import { useVLiteConfig as Le } from "../../core/config.js";
|
|
7
7
|
import { $t as f } from "../../utils/i18n.js";
|
|
8
8
|
import { SCREEN_CONTEXT_KEY as Oe } from "../DataTable/types.js";
|
|
9
|
-
import
|
|
9
|
+
import oe from "./components/ScreenHeaderTitle.vue.js";
|
|
10
10
|
import ze from "./components/ScreenEmptyState.vue.js";
|
|
11
11
|
import Xe from "./components/ScreenExportModal.vue.js";
|
|
12
|
-
import
|
|
12
|
+
import se from "./components/ScreenQuickFilters.vue.js";
|
|
13
13
|
import re from "./components/ScreenToolbar.vue.js";
|
|
14
14
|
import Ye from "../Stats/Stats.vue.js";
|
|
15
15
|
/* empty css */
|
|
@@ -94,7 +94,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
94
94
|
},
|
|
95
95
|
emits: ["add", "delete", "activeView"],
|
|
96
96
|
setup(t, { emit: de }) {
|
|
97
|
-
const a = t, I = Le(), q = de,
|
|
97
|
+
const a = t, I = Le(), q = de, y = 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(() => {
|
|
@@ -113,22 +113,22 @@ const Ge = { key: 0 }, Je = {
|
|
|
113
113
|
component: typeof i.component == "object" && i.component !== null ? T(i.component) : i.component
|
|
114
114
|
}));
|
|
115
115
|
const e = [];
|
|
116
|
-
return (a.table ||
|
|
116
|
+
return (a.table || y.table) && e.push({
|
|
117
117
|
key: "table",
|
|
118
118
|
component: a.table ? T(a.table) : null,
|
|
119
119
|
icon: "lucide:list",
|
|
120
120
|
label: ue.value
|
|
121
|
-
}), (a.list ||
|
|
121
|
+
}), (a.list || y.list || y.grid) && e.push({
|
|
122
122
|
key: "list",
|
|
123
123
|
component: a.list ? T(a.list) : null,
|
|
124
124
|
icon: "lucide:layout-grid",
|
|
125
125
|
label: ve.value
|
|
126
|
-
}), (a.kanban ||
|
|
126
|
+
}), (a.kanban || y.kanban) && e.push({
|
|
127
127
|
key: "kanban",
|
|
128
128
|
component: a.kanban ? T(a.kanban) : null,
|
|
129
129
|
icon: "lucide:kanban",
|
|
130
130
|
label: fe.value
|
|
131
|
-
}), (a.calendar ||
|
|
131
|
+
}), (a.calendar || y.calendar) && e.push({
|
|
132
132
|
key: "calendar",
|
|
133
133
|
component: a.calendar ? T(a.calendar) : null,
|
|
134
134
|
icon: "lucide:calendar",
|
|
@@ -140,7 +140,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
140
140
|
Ae(() => {
|
|
141
141
|
V.value.length > 0 && !he.value.includes(c.value) && (c.value = Y.value), q("activeView", c.value);
|
|
142
142
|
});
|
|
143
|
-
const F = n(() => c.value === "table" &&
|
|
143
|
+
const F = n(() => c.value === "table" && y.table ? "table" : c.value === "list" && y.list ? "list" : c.value === "list" && y.grid ? "grid" : c.value === "kanban" && y.kanban ? "kanban" : c.value === "calendar" && y.calendar ? "calendar" : null), k = h(""), m = h({}), $ = h({ field: "", order: "" }), S = h(a.pageInfo?.currentPage || 1), E = h(a.pageInfo?.itemsPerPage || a.paginationProps?.itemsPerPage || 10), s = h([]), Q = h([]), B = h(!1), v = h(
|
|
144
144
|
a.defaultQuickFilter !== void 0 ? a.defaultQuickFilter : a.quickFilters && a.quickFilters.length > 0 ? a.quickFilters[0].value : ""
|
|
145
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
146
|
v.value = e, S.value = 1, D();
|
|
@@ -154,7 +154,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
154
154
|
activeSort: $.value,
|
|
155
155
|
page: S.value,
|
|
156
156
|
limit: E.value,
|
|
157
|
-
selectedRows:
|
|
157
|
+
selectedRows: s.value,
|
|
158
158
|
isFiltered: _.value,
|
|
159
159
|
hasData: ee.value,
|
|
160
160
|
loading: a.loading
|
|
@@ -164,13 +164,13 @@ const Ge = { key: 0 }, Je = {
|
|
|
164
164
|
$.value = { field: e.sort.field, order: e.sort.order }, D();
|
|
165
165
|
}
|
|
166
166
|
};
|
|
167
|
-
L(Oe, we), L("screen-selected-rows",
|
|
168
|
-
const
|
|
167
|
+
L(Oe, we), L("screen-selected-rows", s), L("screen-request-delete", (e) => C(e));
|
|
168
|
+
const C = (e) => {
|
|
169
169
|
Q.value = e, B.value = !0;
|
|
170
|
-
},
|
|
171
|
-
q("delete", Q.value), B.value = !1,
|
|
172
|
-
},
|
|
173
|
-
q("delete", e),
|
|
170
|
+
}, ge = () => {
|
|
171
|
+
q("delete", Q.value), B.value = !1, s.value = [];
|
|
172
|
+
}, ye = (e) => {
|
|
173
|
+
q("delete", e), s.value = [];
|
|
174
174
|
};
|
|
175
175
|
O(
|
|
176
176
|
() => a.pageInfo?.currentPage,
|
|
@@ -212,10 +212,10 @@ const Ge = { key: 0 }, Je = {
|
|
|
212
212
|
}), le = n(() => {
|
|
213
213
|
const e = f("vlite.screen.searchPlaceholder");
|
|
214
214
|
return e !== "vlite.screen.searchPlaceholder" ? e : "Search...";
|
|
215
|
-
}),
|
|
215
|
+
}), Ce = n(() => {
|
|
216
216
|
const e = f("vlite.screen.confirmDeleteTitle");
|
|
217
217
|
return e !== "vlite.screen.confirmDeleteTitle" ? e : "Confirm Deletion";
|
|
218
|
-
}),
|
|
218
|
+
}), xe = n(() => {
|
|
219
219
|
const e = f("vlite.screen.confirmDeleteDesc", { count: Q.value.length });
|
|
220
220
|
return e !== "vlite.screen.confirmDeleteDesc" ? e : `Are you sure you want to delete the selected ${Q.value.length > 1 ? "items" : "item"}?`;
|
|
221
221
|
}), Ve = n(() => {
|
|
@@ -269,7 +269,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
269
269
|
class: P(["flex flex-col w-full space-y-8", t.containerClass])
|
|
270
270
|
}, [
|
|
271
271
|
t.variant === "two" ? (d(), p(U, { key: 0 }, [
|
|
272
|
-
t.customHeader ?
|
|
272
|
+
t.customHeader ? o(e.$slots, "custom-header", u(g({ key: 1 }, r.value))) : (d(), p("div", {
|
|
273
273
|
key: 0,
|
|
274
274
|
class: P([t.headerClass, "flex flex-col space-y-6"])
|
|
275
275
|
}, [
|
|
@@ -279,7 +279,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
279
279
|
t.topHeaderClass
|
|
280
280
|
])
|
|
281
281
|
}, [
|
|
282
|
-
|
|
282
|
+
x(oe, {
|
|
283
283
|
title: t.title,
|
|
284
284
|
"title-i18n": t.titleI18n,
|
|
285
285
|
"title-class": t.titleClass,
|
|
@@ -292,21 +292,21 @@ const Ge = { key: 0 }, Je = {
|
|
|
292
292
|
e.$slots.title ? {
|
|
293
293
|
name: "title",
|
|
294
294
|
fn: b(() => [
|
|
295
|
-
|
|
295
|
+
o(e.$slots, "title", u(w(r.value)))
|
|
296
296
|
]),
|
|
297
297
|
key: "0"
|
|
298
298
|
} : void 0,
|
|
299
299
|
e.$slots.description ? {
|
|
300
300
|
name: "description",
|
|
301
301
|
fn: b(() => [
|
|
302
|
-
|
|
302
|
+
o(e.$slots, "description", u(w(r.value)))
|
|
303
303
|
]),
|
|
304
304
|
key: "1"
|
|
305
305
|
} : void 0
|
|
306
306
|
]), 1032, ["title", "title-i18n", "title-class", "description", "description-i18n", "description-class", "info", "info-i18n"]),
|
|
307
307
|
t.stats && t.stats.length > 0 ? (d(), p("div", Ge, [
|
|
308
|
-
|
|
309
|
-
])) :
|
|
308
|
+
x(Ye, g({ items: t.stats }, t.statsProps), null, 16, ["items"])
|
|
309
|
+
])) : o(e.$slots, "header-stats", { key: 1 })
|
|
310
310
|
], 2),
|
|
311
311
|
j("div", {
|
|
312
312
|
class: P([
|
|
@@ -320,7 +320,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
320
320
|
t.filtersContainerClass
|
|
321
321
|
])
|
|
322
322
|
}, [
|
|
323
|
-
W.value ? (d(), M(
|
|
323
|
+
W.value ? (d(), M(se, {
|
|
324
324
|
key: 0,
|
|
325
325
|
modelValue: v.value,
|
|
326
326
|
"onUpdate:modelValue": i[0] || (i[0] = (l) => v.value = l),
|
|
@@ -329,12 +329,10 @@ const Ge = { key: 0 }, Je = {
|
|
|
329
329
|
onChange: Z
|
|
330
330
|
}, null, 8, ["modelValue", "options", "variant"])) : R("", !0)
|
|
331
331
|
], 2),
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
]),
|
|
337
|
-
"selected-rows": o.value,
|
|
332
|
+
x(re, {
|
|
333
|
+
inline: "",
|
|
334
|
+
class: P(["w-full lg:w-auto", t.actionsContainerClass]),
|
|
335
|
+
"selected-rows": s.value,
|
|
338
336
|
"hide-selectable": t.hideSelectable,
|
|
339
337
|
"hide-delete-btn": t.hideDeleteBtn,
|
|
340
338
|
"txt-delete-selected": te.value,
|
|
@@ -359,7 +357,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
359
357
|
"export-props": t.exportProps,
|
|
360
358
|
"import-props": t.importProps,
|
|
361
359
|
"screen-state": r.value,
|
|
362
|
-
onDelete:
|
|
360
|
+
onDelete: C,
|
|
363
361
|
"onUpdate:activeView": J,
|
|
364
362
|
"onUpdate:searchQuery": i[1] || (i[1] = (l) => k.value = l),
|
|
365
363
|
"onUpdate:activeFilters": i[2] || (i[2] = (l) => m.value = l),
|
|
@@ -368,25 +366,26 @@ const Ge = { key: 0 }, Je = {
|
|
|
368
366
|
onSelectDropdown: ie
|
|
369
367
|
}, {
|
|
370
368
|
"before-search": b((l) => [
|
|
371
|
-
|
|
369
|
+
o(e.$slots, "before-search", u(w(l)))
|
|
372
370
|
]),
|
|
373
371
|
actions: b((l) => [
|
|
374
|
-
|
|
372
|
+
o(e.$slots, "actions", u(w(l)))
|
|
375
373
|
]),
|
|
376
374
|
"after-add": b((l) => [
|
|
377
|
-
|
|
375
|
+
o(e.$slots, "after-add", u(w(l)))
|
|
378
376
|
]),
|
|
379
377
|
_: 3
|
|
380
378
|
}, 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"])
|
|
381
379
|
], 2)
|
|
382
380
|
], 2)),
|
|
383
|
-
|
|
381
|
+
o(e.$slots, "sub-header", u(w(r.value)))
|
|
384
382
|
], 64)) : (d(), p(U, { key: 1 }, [
|
|
385
|
-
t.customHeader ?
|
|
383
|
+
t.customHeader ? o(e.$slots, "custom-header", u(g({ key: 1 }, r.value))) : (d(), p("div", {
|
|
386
384
|
key: 0,
|
|
387
|
-
class: P([t.headerClass, "
|
|
385
|
+
class: P([t.headerClass, "grid grid-cols-1 min-[900px]:grid-cols-[1fr_auto] min-[1250px]:grid-cols-[1fr_auto_auto] items-start gap-x-4 gap-y-3 w-full"])
|
|
388
386
|
}, [
|
|
389
|
-
|
|
387
|
+
x(oe, {
|
|
388
|
+
class: "order-1 min-w-0",
|
|
390
389
|
title: t.title,
|
|
391
390
|
"title-i18n": t.titleI18n,
|
|
392
391
|
"title-class": t.titleClass,
|
|
@@ -399,21 +398,20 @@ const Ge = { key: 0 }, Je = {
|
|
|
399
398
|
e.$slots.title ? {
|
|
400
399
|
name: "title",
|
|
401
400
|
fn: b(() => [
|
|
402
|
-
|
|
401
|
+
o(e.$slots, "title", u(w(r.value)))
|
|
403
402
|
]),
|
|
404
403
|
key: "0"
|
|
405
404
|
} : void 0,
|
|
406
405
|
e.$slots.description ? {
|
|
407
406
|
name: "description",
|
|
408
407
|
fn: b(() => [
|
|
409
|
-
|
|
408
|
+
o(e.$slots, "description", u(w(r.value)))
|
|
410
409
|
]),
|
|
411
410
|
key: "1"
|
|
412
411
|
} : void 0
|
|
413
412
|
]), 1032, ["title", "title-i18n", "title-class", "description", "description-i18n", "description-class", "info", "info-i18n"]),
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
"selected-rows": o.value,
|
|
413
|
+
x(re, {
|
|
414
|
+
"selected-rows": s.value,
|
|
417
415
|
"hide-selectable": t.hideSelectable,
|
|
418
416
|
"hide-delete-btn": t.hideDeleteBtn,
|
|
419
417
|
"txt-delete-selected": te.value,
|
|
@@ -438,7 +436,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
438
436
|
"export-props": t.exportProps,
|
|
439
437
|
"import-props": t.importProps,
|
|
440
438
|
"screen-state": r.value,
|
|
441
|
-
onDelete:
|
|
439
|
+
onDelete: C,
|
|
442
440
|
"onUpdate:activeView": J,
|
|
443
441
|
"onUpdate:searchQuery": i[4] || (i[4] = (l) => k.value = l),
|
|
444
442
|
"onUpdate:activeFilters": i[5] || (i[5] = (l) => m.value = l),
|
|
@@ -447,20 +445,20 @@ const Ge = { key: 0 }, Je = {
|
|
|
447
445
|
onSelectDropdown: ie
|
|
448
446
|
}, {
|
|
449
447
|
"before-search": b((l) => [
|
|
450
|
-
|
|
448
|
+
o(e.$slots, "before-search", u(w(l)))
|
|
451
449
|
]),
|
|
452
450
|
actions: b((l) => [
|
|
453
|
-
|
|
451
|
+
o(e.$slots, "actions", u(w(l)))
|
|
454
452
|
]),
|
|
455
453
|
"after-add": b((l) => [
|
|
456
|
-
|
|
454
|
+
o(e.$slots, "after-add", u(w(l)))
|
|
457
455
|
]),
|
|
458
456
|
_: 3
|
|
459
457
|
}, 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"])
|
|
460
458
|
], 2)),
|
|
461
|
-
|
|
459
|
+
o(e.$slots, "sub-header", u(w(r.value))),
|
|
462
460
|
W.value ? (d(), p("div", Je, [
|
|
463
|
-
|
|
461
|
+
x(se, {
|
|
464
462
|
modelValue: v.value,
|
|
465
463
|
"onUpdate:modelValue": i[7] || (i[7] = (l) => v.value = l),
|
|
466
464
|
options: t.quickFilters,
|
|
@@ -473,7 +471,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
473
471
|
class: P(["flex-1 w-full relative", t.mainContainerClass])
|
|
474
472
|
}, [
|
|
475
473
|
!ee.value && !t.loading && !pe.value ? (d(), p(U, { key: 0 }, [
|
|
476
|
-
e.$slots.empty ?
|
|
474
|
+
e.$slots.empty ? o(e.$slots, "empty", u(g({ key: 0 }, r.value))) : (d(), M(ze, {
|
|
477
475
|
key: 1,
|
|
478
476
|
"empty-title": t.emptyTitle,
|
|
479
477
|
"empty-title-i18n": t.emptyTitleI18n,
|
|
@@ -486,55 +484,55 @@ const Ge = { key: 0 }, Je = {
|
|
|
486
484
|
"add-btn": t.addBtn
|
|
487
485
|
}, null, 8, ["empty-title", "empty-title-i18n", "empty-description", "empty-description-i18n", "empty-icon", "is-filtered", "can-add", "add-component", "add-btn"]))
|
|
488
486
|
], 64)) : (d(), p(U, { key: 1 }, [
|
|
489
|
-
F.value === "table" ?
|
|
487
|
+
F.value === "table" ? o(e.$slots, "table", g({
|
|
490
488
|
key: 0,
|
|
491
489
|
data: t.data,
|
|
492
490
|
loading: t.loading,
|
|
493
|
-
selectedRows:
|
|
494
|
-
delete:
|
|
495
|
-
updateSelectedRows: (l) =>
|
|
496
|
-
}, r.value)) : F.value === "list" ?
|
|
491
|
+
selectedRows: s.value,
|
|
492
|
+
delete: C,
|
|
493
|
+
updateSelectedRows: (l) => s.value = l
|
|
494
|
+
}, r.value)) : F.value === "list" ? o(e.$slots, "list", g({
|
|
497
495
|
key: 1,
|
|
498
496
|
data: t.data,
|
|
499
497
|
loading: t.loading,
|
|
500
|
-
selectedRows:
|
|
501
|
-
delete:
|
|
502
|
-
updateSelectedRows: (l) =>
|
|
503
|
-
}, r.value)) : F.value === "grid" ?
|
|
498
|
+
selectedRows: s.value,
|
|
499
|
+
delete: C,
|
|
500
|
+
updateSelectedRows: (l) => s.value = l
|
|
501
|
+
}, r.value)) : F.value === "grid" ? o(e.$slots, "grid", g({
|
|
504
502
|
key: 2,
|
|
505
503
|
data: t.data,
|
|
506
504
|
loading: t.loading,
|
|
507
|
-
selectedRows:
|
|
508
|
-
delete:
|
|
509
|
-
updateSelectedRows: (l) =>
|
|
510
|
-
}, r.value)) : F.value === "kanban" ?
|
|
505
|
+
selectedRows: s.value,
|
|
506
|
+
delete: C,
|
|
507
|
+
updateSelectedRows: (l) => s.value = l
|
|
508
|
+
}, r.value)) : F.value === "kanban" ? o(e.$slots, "kanban", g({
|
|
511
509
|
key: 3,
|
|
512
510
|
data: t.data,
|
|
513
511
|
loading: t.loading,
|
|
514
|
-
selectedRows:
|
|
515
|
-
delete:
|
|
516
|
-
updateSelectedRows: (l) =>
|
|
517
|
-
}, r.value)) : F.value === "calendar" ?
|
|
512
|
+
selectedRows: s.value,
|
|
513
|
+
delete: C,
|
|
514
|
+
updateSelectedRows: (l) => s.value = l
|
|
515
|
+
}, r.value)) : F.value === "calendar" ? o(e.$slots, "calendar", g({
|
|
518
516
|
key: 4,
|
|
519
517
|
data: t.data,
|
|
520
518
|
loading: t.loading,
|
|
521
|
-
selectedRows:
|
|
522
|
-
delete:
|
|
523
|
-
updateSelectedRows: (l) =>
|
|
524
|
-
}, r.value)) : G.value ? (d(), M(Ue(G.value),
|
|
519
|
+
selectedRows: s.value,
|
|
520
|
+
delete: C,
|
|
521
|
+
updateSelectedRows: (l) => s.value = l
|
|
522
|
+
}, r.value)) : G.value ? (d(), M(Ue(G.value), g({
|
|
525
523
|
key: 5,
|
|
526
524
|
data: t.data,
|
|
527
525
|
loading: t.loading,
|
|
528
526
|
refetch: t.refetch,
|
|
529
|
-
selectedRows:
|
|
530
|
-
"onUpdate:selectedRows": i[8] || (i[8] = (l) =>
|
|
531
|
-
delete:
|
|
532
|
-
onDelete:
|
|
527
|
+
selectedRows: s.value,
|
|
528
|
+
"onUpdate:selectedRows": i[8] || (i[8] = (l) => s.value = l),
|
|
529
|
+
delete: C,
|
|
530
|
+
onDelete: ye
|
|
533
531
|
}, t.viewProps), null, 16, ["data", "loading", "refetch", "selectedRows"])) : (d(), p("div", We, je(Pe.value), 1))
|
|
534
532
|
], 64))
|
|
535
533
|
], 2),
|
|
536
534
|
t.pagination && t.pageInfo && t.pageInfo.totalPages > 1 ? (d(), p("div", Ze, [
|
|
537
|
-
|
|
535
|
+
x(z(Ne), g({
|
|
538
536
|
"current-page": t.pageInfo.currentPage,
|
|
539
537
|
"total-pages": t.pageInfo.totalPages,
|
|
540
538
|
"total-items": t.pageInfo.totalItems
|
|
@@ -543,15 +541,15 @@ const Ge = { key: 0 }, Je = {
|
|
|
543
541
|
"onUpdate:itemsPerPage": be
|
|
544
542
|
}), null, 16, ["current-page", "total-pages", "total-items"])
|
|
545
543
|
])) : R("", !0),
|
|
546
|
-
|
|
544
|
+
x(Me, {
|
|
547
545
|
show: B.value,
|
|
548
546
|
"onUpdate:show": i[9] || (i[9] = (l) => B.value = l),
|
|
549
|
-
title:
|
|
550
|
-
description:
|
|
547
|
+
title: Ce.value,
|
|
548
|
+
description: xe.value,
|
|
551
549
|
"confirm-text": Ve.value,
|
|
552
550
|
"cancel-text": De.value,
|
|
553
551
|
variant: "danger",
|
|
554
|
-
onConfirm:
|
|
552
|
+
onConfirm: ge,
|
|
555
553
|
onCancel: i[10] || (i[10] = (l) => B.value = !1)
|
|
556
554
|
}, null, 8, ["show", "title", "description", "confirm-text", "cancel-text"]),
|
|
557
555
|
A.value ? (d(), M(Xe, {
|
|
@@ -565,7 +563,7 @@ const Ge = { key: 0 }, Je = {
|
|
|
565
563
|
"on-export": qe
|
|
566
564
|
}, null, 8, ["show", "data", "fields", "mode", "export-props"])) : R("", !0),
|
|
567
565
|
H.value ? (d(), p("div", _e, [
|
|
568
|
-
|
|
566
|
+
x(He, g({
|
|
569
567
|
show: K.value,
|
|
570
568
|
"onUpdate:show": i[12] || (i[12] = (l) => K.value = l),
|
|
571
569
|
ref_key: "importDataRef",
|
|
@@ -21,11 +21,11 @@ import "@vueuse/core";
|
|
|
21
21
|
import "iconify-icon-picker";
|
|
22
22
|
import "iconify-icon-picker/style.css";
|
|
23
23
|
/* empty css */
|
|
24
|
-
/* empty css
|
|
24
|
+
/* empty css */
|
|
25
25
|
/* empty css */
|
|
26
26
|
/* empty css */
|
|
27
|
-
/* empty css
|
|
28
|
-
/* empty css
|
|
27
|
+
/* empty css */
|
|
28
|
+
/* empty css */
|
|
29
29
|
import "../../core/config.js";
|
|
30
30
|
/* empty css */
|
|
31
31
|
/* empty css */
|