vlite3 1.2.10 → 1.2.12
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/CategoryManager/CategoryManager.vue.js +1 -1
- package/components/ColorPicker/ColorIro.vue3.js +2 -2
- package/components/ColorPicker/ColorPicker.vue.js +2 -2
- package/components/Dropdown/Dropdown.vue.d.ts +2 -0
- package/components/Dropdown/Dropdown.vue.js +17 -15
- package/components/Form/Form.vue.d.ts +1 -0
- package/components/Form/Form.vue.js +1 -1
- package/components/Form/Form.vue2.js +29 -28
- package/components/Form/FormFields.vue.js +2 -2
- package/components/Form/FormFields.vue2.js +1 -1
- package/components/ImportData/ImportStep2.vue.js +6 -6
- package/components/Kanban/Kanban.vue.js +1 -1
- package/components/Kanban/Kanban.vue2.js +1 -1
- package/components/Kanban/KanbanBoard.vue.js +1 -1
- package/components/Kanban/KanbanBoard.vue2.js +17 -17
- package/components/Label.vue.js +4 -4
- package/components/Modal.vue.js +1 -1
- package/components/Modal.vue2.js +1 -1
- package/components/PermissionMatrix/PermissionEditorMatrix.vue.js +1 -1
- package/components/PermissionMatrix/PermissionMatrix.vue.js +1 -1
- package/components/PermissionMatrix/PermissionMatrix.vue2.js +1 -1
- package/components/Screen/ScreenFilter.vue.js +34 -31
- package/components/SidePanel.vue.js +1 -1
- package/components/Workbook/Sheet.vue.js +66 -64
- package/components/Workbook/Workbook.vue.js +2 -2
- package/components/Workbook/Workbook.vue2.js +81 -77
- package/package.json +13 -1
- package/style.css +75 -70
- package/test/VliteScreen.d.ts +120 -0
- package/test/VliteScreen.js +328 -0
- package/test/createDataFactory.d.ts +24 -0
- package/test/createDataFactory.js +59 -0
- package/test/extractSchemaFields.d.ts +14 -0
- package/test/extractSchemaFields.js +11 -0
- package/test/index.d.ts +39 -0
- package/test/index.js +10 -0
- package/test/renderVlite.d.ts +30 -0
- package/test/renderVlite.js +12 -0
- package/test/types.d.ts +39 -0
- /package/components/ColorPicker/{ColorIro.vue.js → ColorIro.vue2.js} +0 -0
|
@@ -6,8 +6,8 @@ import O from "../Input.vue.js";
|
|
|
6
6
|
import "../../core/config.js";
|
|
7
7
|
/* empty css */
|
|
8
8
|
import y from "../Button.vue.js";
|
|
9
|
-
import E from "./ColorIro.
|
|
10
|
-
/* empty css
|
|
9
|
+
import E from "./ColorIro.vue2.js";
|
|
10
|
+
/* empty css */
|
|
11
11
|
import { useEyeDropper as P } from "@vueuse/core";
|
|
12
12
|
const I = {
|
|
13
13
|
key: 0,
|
|
@@ -18,6 +18,7 @@ type __VLS_Props = {
|
|
|
18
18
|
selectedIndex?: number | null;
|
|
19
19
|
maxHeight?: string;
|
|
20
20
|
width?: string;
|
|
21
|
+
minWidth?: string;
|
|
21
22
|
ignoreClickOutside?: string[];
|
|
22
23
|
menuId?: string;
|
|
23
24
|
nestedPosition?: TooltTipPlacement;
|
|
@@ -110,6 +111,7 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
110
111
|
offset: [number, number];
|
|
111
112
|
isOpen: boolean;
|
|
112
113
|
teleport: boolean;
|
|
114
|
+
minWidth: string;
|
|
113
115
|
showSelectedLabel: boolean;
|
|
114
116
|
showSelectedIcon: boolean;
|
|
115
117
|
doubleConfirmation: boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as le, ref as i, computed as f, inject as ne, onMounted as oe, onUnmounted as ae, watch as M, provide as L, reactive as ie, toRefs as se, openBlock as V, createElementBlock as re, normalizeStyle as de, createVNode as P, unref as u, withCtx as m, createBlock as ue, normalizeClass as ce, createSlots as fe, renderSlot as v, normalizeProps as R, guardReactiveProps as
|
|
1
|
+
import { defineComponent as le, ref as i, computed as f, inject as ne, onMounted as oe, onUnmounted as ae, watch as M, provide as L, reactive as ie, toRefs as se, openBlock as V, createElementBlock as re, normalizeStyle as de, createVNode as P, unref as u, withCtx as m, createBlock as ue, normalizeClass as ce, createSlots as fe, renderSlot as v, normalizeProps as R, guardReactiveProps as W, createCommentVNode as me } from "vue";
|
|
2
2
|
import ve from "v-tooltip-lite";
|
|
3
3
|
import "v-tooltip-lite/style.css";
|
|
4
4
|
import he from "./DropdownMenu.vue.js";
|
|
@@ -7,7 +7,7 @@ import ge from "../ConfirmationModal.vue.js";
|
|
|
7
7
|
import { useDropdownIds as be } from "./composables/useDropdownIds.js";
|
|
8
8
|
import { useDropdownSelection as Ce } from "./composables/useDropdownSelection.js";
|
|
9
9
|
import { useDropdownHydration as pe } from "./composables/useDropdownHydration.js";
|
|
10
|
-
const
|
|
10
|
+
const xe = /* @__PURE__ */ le({
|
|
11
11
|
__name: "Dropdown",
|
|
12
12
|
props: {
|
|
13
13
|
selected: {},
|
|
@@ -27,6 +27,7 @@ const Ne = /* @__PURE__ */ le({
|
|
|
27
27
|
selectedIndex: { default: null },
|
|
28
28
|
maxHeight: { default: "300px" },
|
|
29
29
|
width: {},
|
|
30
|
+
minWidth: { default: "130px" },
|
|
30
31
|
ignoreClickOutside: {},
|
|
31
32
|
menuId: {},
|
|
32
33
|
nestedPosition: {},
|
|
@@ -51,14 +52,14 @@ const Ne = /* @__PURE__ */ le({
|
|
|
51
52
|
variant: { default: "default" }
|
|
52
53
|
},
|
|
53
54
|
emits: ["onSelect", "update:modelValue", "onOpen", "onClose", "update:isOpen", "load-more", "search"],
|
|
54
|
-
setup(t, { emit:
|
|
55
|
-
const l = t, h =
|
|
55
|
+
setup(t, { emit: z }) {
|
|
56
|
+
const l = t, h = z, b = i(!1), y = i(null), r = i({
|
|
56
57
|
title: "Confirm Selection",
|
|
57
58
|
description: "Are you sure you want to select this option?",
|
|
58
59
|
confirmText: "Confirm",
|
|
59
60
|
cancelText: "Cancel",
|
|
60
61
|
variant: "primary"
|
|
61
|
-
}),
|
|
62
|
+
}), j = f(() => l.position ? l.position : l.direction === "rtl" ? "bottom-end" : "bottom-start"), U = f(() => l.nestedPosition ? l.nestedPosition : l.direction === "rtl" ? "left-start" : "right-start"), C = i(l.isOpen || !1), p = i(0), q = `dropdown-${Math.random().toString(36).substring(2, 9)}`, w = f(() => l.menuId || q), g = i([]), s = ne("dropdown-context", null), F = (e) => {
|
|
62
63
|
g.value.includes(e) || g.value.push(e), s?.registerChildId?.(e);
|
|
63
64
|
}, G = (e) => {
|
|
64
65
|
g.value = g.value.filter((o) => o !== e), s?.unregisterChildId?.(e);
|
|
@@ -76,14 +77,14 @@ const Ne = /* @__PURE__ */ le({
|
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
79
|
);
|
|
79
|
-
const
|
|
80
|
+
const x = (e) => {
|
|
80
81
|
if (l.disabled || l.readonly) {
|
|
81
82
|
C.value = !1, h("update:isOpen", !1);
|
|
82
83
|
return;
|
|
83
84
|
}
|
|
84
85
|
C.value = e, h("update:isOpen", e), h(e ? "onOpen" : "onClose"), s?.onChildToggle?.(e);
|
|
85
86
|
}, O = () => {
|
|
86
|
-
|
|
87
|
+
x(!1);
|
|
87
88
|
}, J = (e) => {
|
|
88
89
|
e ? p.value++ : p.value = Math.max(0, p.value - 1);
|
|
89
90
|
};
|
|
@@ -95,7 +96,7 @@ const Ne = /* @__PURE__ */ le({
|
|
|
95
96
|
registerChildId: F,
|
|
96
97
|
unregisterChildId: G
|
|
97
98
|
}), L("modal-context", null);
|
|
98
|
-
const $ = f(() => l.options ? l.options.map((e) => typeof e == "string" || typeof e == "number" ? { label: String(e), value: String(e) } : e) : []), S = i([]),
|
|
99
|
+
const $ = f(() => l.options ? l.options.map((e) => typeof e == "string" || typeof e == "number" ? { label: String(e), value: String(e) } : e) : []), S = i([]), N = i(!1), I = i(!1);
|
|
99
100
|
M(
|
|
100
101
|
$,
|
|
101
102
|
(e) => {
|
|
@@ -107,7 +108,7 @@ const Ne = /* @__PURE__ */ le({
|
|
|
107
108
|
}), S.value = o;
|
|
108
109
|
} else
|
|
109
110
|
S.value = e;
|
|
110
|
-
!
|
|
111
|
+
!N.value && e.length > 0 && (N.value = !0, setTimeout(() => {
|
|
111
112
|
I.value = !0, E(B.value);
|
|
112
113
|
}, 10));
|
|
113
114
|
}
|
|
@@ -186,7 +187,7 @@ const Ne = /* @__PURE__ */ le({
|
|
|
186
187
|
arrow: !1,
|
|
187
188
|
teleport: t.teleport,
|
|
188
189
|
offset: t.offset,
|
|
189
|
-
placement:
|
|
190
|
+
placement: j.value,
|
|
190
191
|
isOpen: C.value,
|
|
191
192
|
keepAlive: p.value > 0,
|
|
192
193
|
menuId: w.value,
|
|
@@ -195,16 +196,17 @@ const Ne = /* @__PURE__ */ le({
|
|
|
195
196
|
className: "dropdown " + (t.className || "") + (t.variant === "transparent" ? " unstyled-dropdown" : "") + (t.variant === "secondary" ? " dropdown-secondary" : ""),
|
|
196
197
|
onOnShow: o[2] || (o[2] = (n) => e.$emit("onOpen")),
|
|
197
198
|
onOnHide: o[3] || (o[3] = (n) => e.$emit("onClose")),
|
|
198
|
-
"onUpdate:isOpen":
|
|
199
|
+
"onUpdate:isOpen": x,
|
|
199
200
|
triggerClass: "w-full",
|
|
200
201
|
styles: {
|
|
201
202
|
padding: "0",
|
|
202
203
|
...t.width ? { width: t.width, maxWidth: t.width } : {},
|
|
204
|
+
...t.minWidth ? { minWidth: t.minWidth } : {},
|
|
203
205
|
...t.variant === "transparent" ? { background: "transparent", border: "none", boxShadow: "none" } : {}
|
|
204
206
|
}
|
|
205
207
|
}, {
|
|
206
208
|
trigger: m(({ isOpen: n }) => [
|
|
207
|
-
v(e.$slots, "trigger", R(
|
|
209
|
+
v(e.$slots, "trigger", R(W({
|
|
208
210
|
selectedLabel: u(A),
|
|
209
211
|
selectedIcon: t.showSelectedIcon ? u(H) : void 0,
|
|
210
212
|
isOpen: n
|
|
@@ -232,7 +234,7 @@ const Ne = /* @__PURE__ */ le({
|
|
|
232
234
|
selected: u(B),
|
|
233
235
|
selectedIndex: t.selectedIndex,
|
|
234
236
|
maxHeight: t.maxHeight,
|
|
235
|
-
nestedPosition:
|
|
237
|
+
nestedPosition: U.value,
|
|
236
238
|
nestedOffset: t.nestedOffset,
|
|
237
239
|
selectable: t.selectable,
|
|
238
240
|
direction: t.direction,
|
|
@@ -260,7 +262,7 @@ const Ne = /* @__PURE__ */ le({
|
|
|
260
262
|
e.$slots.item ? {
|
|
261
263
|
name: "item",
|
|
262
264
|
fn: m((n) => [
|
|
263
|
-
v(e.$slots, "item", R(
|
|
265
|
+
v(e.$slots, "item", R(W(n)))
|
|
264
266
|
]),
|
|
265
267
|
key: "1"
|
|
266
268
|
} : void 0,
|
|
@@ -296,5 +298,5 @@ const Ne = /* @__PURE__ */ le({
|
|
|
296
298
|
}
|
|
297
299
|
});
|
|
298
300
|
export {
|
|
299
|
-
|
|
301
|
+
xe as default
|
|
300
302
|
};
|
|
@@ -69,6 +69,7 @@ declare const __VLS_component: import('vue').DefineComponent<Props, {
|
|
|
69
69
|
resetForm: () => void;
|
|
70
70
|
setFieldError: (name: string, error: string) => void;
|
|
71
71
|
clearErrors: () => void;
|
|
72
|
+
setFieldValue: (name: string, value: any, data?: any) => Promise<void>;
|
|
72
73
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
73
74
|
onSubmit: (payload: IFormSubmitPayload, close: () => void) => any;
|
|
74
75
|
onCancel: () => any;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./Form.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import r from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const p = /* @__PURE__ */ r(o, [["__scopeId", "data-v-
|
|
4
|
+
const p = /* @__PURE__ */ r(o, [["__scopeId", "data-v-fdd38572"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
|
7
7
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as we, inject as Ae, computed as r, onMounted as
|
|
1
|
+
import { defineComponent as we, inject as Ae, computed as r, onMounted as le, onUnmounted as O, ref as E, watch as ie, openBlock as s, createElementBlock as d, withKeys as se, withModifiers as J, normalizeClass as m, createElementVNode as f, createVNode as T, mergeProps as K, toDisplayString as z, unref as t, renderSlot as ne, createCommentVNode as c, createBlock as C, Fragment as Te, renderList as Re } from "vue";
|
|
2
2
|
import { useForm as Pe } from "./composables/useForm.js";
|
|
3
3
|
import Q from "./FormFields.vue.js";
|
|
4
4
|
import Ue from "./FormField.vue.js";
|
|
@@ -62,18 +62,18 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
62
62
|
backButtonPath: {}
|
|
63
63
|
},
|
|
64
64
|
emits: ["onSubmit", "onCancel", "onStepChange", "onAddonAction", "onBack"],
|
|
65
|
-
setup(e, { expose:
|
|
66
|
-
const l = e, b =
|
|
65
|
+
setup(e, { expose: oe, emit: re }) {
|
|
66
|
+
const l = e, b = re, v = Ae("modal-context", null), ue = Ne(), B = r(() => ue?.components?.form || {}), L = r(() => l.variant ?? B.value.variant ?? "outline"), N = r(() => l.size ?? B.value.size ?? "md"), D = r(() => l.rounded ?? B.value.rounded ?? "md"), M = r(
|
|
67
67
|
() => l.showRequiredAsterisk ?? B.value.showRequiredAsterisk ?? !0
|
|
68
|
-
),
|
|
69
|
-
|
|
68
|
+
), de = r(() => l.showCancel || !!v), F = r(() => !!v), P = r(() => l.stickyFooter || F.value);
|
|
69
|
+
le(() => {
|
|
70
70
|
l.footer && F.value && v?.registerFormFooter?.(!0);
|
|
71
71
|
}), O(() => {
|
|
72
72
|
F.value && v?.registerFormFooter?.(!1);
|
|
73
73
|
});
|
|
74
|
-
const
|
|
74
|
+
const ce = E(null), G = E(null), W = E(!1);
|
|
75
75
|
let j = null;
|
|
76
|
-
|
|
76
|
+
le(() => {
|
|
77
77
|
G.value && (j = new IntersectionObserver(
|
|
78
78
|
([a]) => {
|
|
79
79
|
W.value = !a.isIntersecting;
|
|
@@ -98,9 +98,9 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
98
98
|
errors: y,
|
|
99
99
|
isSubmitting: x,
|
|
100
100
|
fieldLoading: q,
|
|
101
|
-
handleFieldChange:
|
|
101
|
+
handleFieldChange: Z,
|
|
102
102
|
validateField: me,
|
|
103
|
-
validateAll:
|
|
103
|
+
validateAll: _,
|
|
104
104
|
isFieldVisible: U,
|
|
105
105
|
isFieldDisabled: V,
|
|
106
106
|
isFieldReadonly: H,
|
|
@@ -120,7 +120,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
120
120
|
}));
|
|
121
121
|
}
|
|
122
122
|
});
|
|
123
|
-
|
|
123
|
+
ie(
|
|
124
124
|
() => l.loading || x.value,
|
|
125
125
|
(a) => {
|
|
126
126
|
v?.setSubmitting && v.setSubmitting(a);
|
|
@@ -128,14 +128,14 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
128
128
|
{ immediate: !0 }
|
|
129
129
|
), O(() => {
|
|
130
130
|
v?.setSubmitting && v.setSubmitting(!1);
|
|
131
|
-
}),
|
|
131
|
+
}), ie(
|
|
132
132
|
[() => l.schema, () => l.values, () => l.schemaLoading],
|
|
133
133
|
([a, i, o]) => {
|
|
134
134
|
o || fe(a, i);
|
|
135
135
|
}
|
|
136
136
|
);
|
|
137
137
|
const $ = (a, i) => {
|
|
138
|
-
|
|
138
|
+
Z(a, i.value, i.data);
|
|
139
139
|
}, ye = async () => {
|
|
140
140
|
if (!u.value) return !0;
|
|
141
141
|
const a = Y.value;
|
|
@@ -145,19 +145,19 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
145
145
|
await me(o) && (i = !1);
|
|
146
146
|
}
|
|
147
147
|
return i;
|
|
148
|
-
}, xe = r(() => u.value ? n.value < S.value.length - 1 : !1),
|
|
148
|
+
}, xe = r(() => u.value ? n.value < S.value.length - 1 : !1), ee = r(() => u.value ? n.value > 0 : !1), I = r(() => u.value ? n.value === S.value.length - 1 : !0), te = async () => {
|
|
149
149
|
!xe.value || !await ye() || (n.value++, b("onStepChange", n.value));
|
|
150
150
|
}, ke = () => {
|
|
151
|
-
|
|
151
|
+
ee.value && (n.value--, b("onStepChange", n.value));
|
|
152
152
|
}, pe = (a, i) => {
|
|
153
153
|
i <= n.value && (n.value = i, b("onStepChange", n.value));
|
|
154
154
|
}, k = async () => {
|
|
155
155
|
if (u.value) {
|
|
156
156
|
if (!I.value && !l.isUpdate) {
|
|
157
|
-
await
|
|
157
|
+
await te();
|
|
158
158
|
return;
|
|
159
159
|
}
|
|
160
|
-
if (!await
|
|
160
|
+
if (!await _()) {
|
|
161
161
|
const i = S.value.findIndex(
|
|
162
162
|
(o) => o.some((p) => !!y.value[p.name])
|
|
163
163
|
);
|
|
@@ -173,18 +173,19 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
173
173
|
if (a.key !== "Enter") return;
|
|
174
174
|
const o = a.target.tagName.toLowerCase();
|
|
175
175
|
o !== "textarea" && o !== "button" && (a.preventDefault(), k());
|
|
176
|
-
},
|
|
176
|
+
}, ae = (a) => {
|
|
177
177
|
(a.metaKey || a.ctrlKey) && a.key === "s" && (a.preventDefault(), k());
|
|
178
178
|
};
|
|
179
|
-
|
|
179
|
+
oe({
|
|
180
180
|
formValues: h,
|
|
181
181
|
errors: y,
|
|
182
182
|
isSubmitting: x,
|
|
183
183
|
handleSubmit: k,
|
|
184
|
-
validateAll:
|
|
184
|
+
validateAll: _,
|
|
185
185
|
resetForm: ge,
|
|
186
186
|
setFieldError: he,
|
|
187
|
-
clearErrors: be
|
|
187
|
+
clearErrors: be,
|
|
188
|
+
setFieldValue: Z
|
|
188
189
|
});
|
|
189
190
|
const Ce = () => {
|
|
190
191
|
b("onCancel"), v && v?.close?.();
|
|
@@ -194,8 +195,8 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
194
195
|
onSubmit: J(k, ["prevent"]),
|
|
195
196
|
onKeydown: [
|
|
196
197
|
Se,
|
|
197
|
-
|
|
198
|
-
|
|
198
|
+
se(J(ae, ["meta", "prevent"]), ["s"]),
|
|
199
|
+
se(J(ae, ["ctrl", "prevent"]), ["s"])
|
|
199
200
|
]
|
|
200
201
|
}, [
|
|
201
202
|
e.isPage ? (s(), d("div", {
|
|
@@ -215,7 +216,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
215
216
|
}, z(e.pageTitleI18n ? t(Le)(e.pageTitleI18n) : e.pageTitle), 3)
|
|
216
217
|
]),
|
|
217
218
|
f("div", $e, [
|
|
218
|
-
|
|
219
|
+
ne(a.$slots, "header-actions", {
|
|
219
220
|
values: t(h),
|
|
220
221
|
isSubmitting: t(x),
|
|
221
222
|
handleSubmit: k
|
|
@@ -364,7 +365,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
364
365
|
onAddonAction: i[1] || (i[1] = (o) => b("onAddonAction", o))
|
|
365
366
|
}, null, 8, ["schema", "values", "errors", "fieldLoading", "variant", "size", "rounded", "className", "isUpdate", "showRequiredAsterisk", "isFieldVisible", "isFieldDisabled", "isFieldReadonly", "excludeTypes"])
|
|
366
367
|
])),
|
|
367
|
-
|
|
368
|
+
ne(a.$slots, "default", {
|
|
368
369
|
values: t(h),
|
|
369
370
|
errors: t(y),
|
|
370
371
|
isSubmitting: t(x),
|
|
@@ -382,7 +383,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
382
383
|
e.footer && !e.schemaLoading ? (s(), d("div", {
|
|
383
384
|
key: 2,
|
|
384
385
|
ref_key: "footerRef",
|
|
385
|
-
ref:
|
|
386
|
+
ref: ce,
|
|
386
387
|
class: m([
|
|
387
388
|
"form-footer items-center gap-3 z-20 rounded-b-md!",
|
|
388
389
|
e.isPage ? "flex sm:hidden" : "flex",
|
|
@@ -403,7 +404,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
403
404
|
])
|
|
404
405
|
}, [
|
|
405
406
|
f("div", Je, [
|
|
406
|
-
|
|
407
|
+
de.value ? (s(), C(R, {
|
|
407
408
|
key: 0,
|
|
408
409
|
type: "button",
|
|
409
410
|
variant: "outline",
|
|
@@ -424,7 +425,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
424
425
|
f("div", {
|
|
425
426
|
class: m(["flex gap-3 items-center", u.value && "ml-auto"])
|
|
426
427
|
}, [
|
|
427
|
-
u.value &&
|
|
428
|
+
u.value && ee.value ? (s(), C(R, {
|
|
428
429
|
key: 0,
|
|
429
430
|
type: "button",
|
|
430
431
|
variant: "outline",
|
|
@@ -438,7 +439,7 @@ const qe = ["onKeydown"], He = { class: "flex items-center gap-3" }, $e = { clas
|
|
|
438
439
|
variant: e.isUpdate ? "outline" : "primary",
|
|
439
440
|
text: "Next",
|
|
440
441
|
iconRight: "lucide:arrow-right",
|
|
441
|
-
onClick:
|
|
442
|
+
onClick: te
|
|
442
443
|
}, null, 8, ["variant"])) : c("", !0),
|
|
443
444
|
!u.value || I.value ? (s(), C(R, K({
|
|
444
445
|
key: 2,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./FormFields.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import r from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const
|
|
4
|
+
const s = /* @__PURE__ */ r(o, [["__scopeId", "data-v-54cb90d4"]]);
|
|
5
5
|
export {
|
|
6
|
-
|
|
6
|
+
s as default
|
|
7
7
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { defineComponent as V, ref as $, computed as r, openBlock as n, createElementBlock as a, createElementVNode as e, toDisplayString as c, Fragment as
|
|
1
|
+
import { defineComponent as V, ref as $, computed as r, openBlock as n, createElementBlock as a, createElementVNode as e, toDisplayString as c, Fragment as f, renderList as x, isMemoSame as B, normalizeClass as I, createBlock as O, unref as j, createCommentVNode as w, createVNode as z } from "vue";
|
|
2
2
|
import A from "../Dropdown/Dropdown.vue.js";
|
|
3
3
|
import "@iconify/vue";
|
|
4
4
|
import { $t as E } from "../../utils/i18n.js";
|
|
5
5
|
/* empty css */
|
|
6
6
|
/* empty css */
|
|
7
7
|
import P from "../CheckBox.vue.js";
|
|
8
|
-
const R = { class: "space-y-5" }, U = { class: "text-sm text-muted-foreground" }, q = { class: "border border-border rounded-xl overflow-hidden" }, L = { class: "overflow-x-auto max-h-[440px]" }, W = { class: "import-table" }, G = { class: "import-thead" }, J = { class: "import-th" }, K = { class: "import-th" }, Q = { class: "import-th" }, T = { class: "import-tbody" }, X = { class: "import-td-header" }, Y = { class: "import-td-dropdown" }, Z = {
|
|
8
|
+
const R = { class: "space-y-5" }, U = { class: "text-sm text-muted-foreground" }, q = { class: "border border-border rounded-xl overflow-hidden" }, L = { class: "overflow-x-auto max-h-[440px] always-scroll scrollbar-thin" }, W = { class: "import-table" }, G = { class: "import-thead" }, J = { class: "import-th" }, K = { class: "import-th" }, Q = { class: "import-th" }, T = { class: "import-tbody" }, X = { class: "import-td-header" }, Y = { class: "import-td-dropdown" }, Z = {
|
|
9
9
|
key: 1,
|
|
10
10
|
class: "text-xs italic text-muted-foreground"
|
|
11
11
|
}, tt = { class: "import-td-preview" }, et = {
|
|
@@ -56,7 +56,7 @@ const R = { class: "space-y-5" }, U = { class: "text-sm text-muted-foreground" }
|
|
|
56
56
|
])
|
|
57
57
|
]),
|
|
58
58
|
e("tbody", T, [
|
|
59
|
-
(n(!0), a(
|
|
59
|
+
(n(!0), a(f, null, x(l.headers, (t, g, nt, u) => {
|
|
60
60
|
const _ = [
|
|
61
61
|
t,
|
|
62
62
|
o.value.includes(t),
|
|
@@ -64,7 +64,7 @@ const R = { class: "space-y-5" }, U = { class: "text-sm text-muted-foreground" }
|
|
|
64
64
|
l.preview.map((p) => p[t])
|
|
65
65
|
];
|
|
66
66
|
if (u && u.key === t && B(u, _)) return u;
|
|
67
|
-
const
|
|
67
|
+
const h = (n(), a("tr", {
|
|
68
68
|
key: t,
|
|
69
69
|
class: I([
|
|
70
70
|
"import-tr",
|
|
@@ -86,7 +86,7 @@ const R = { class: "space-y-5" }, U = { class: "text-sm text-muted-foreground" }
|
|
|
86
86
|
]),
|
|
87
87
|
e("td", tt, [
|
|
88
88
|
o.value.includes(t) ? w("", !0) : (n(), a("div", et, [
|
|
89
|
-
(n(!0), a(
|
|
89
|
+
(n(!0), a(f, null, x(l.preview, (p, N) => (n(), a("div", {
|
|
90
90
|
key: N,
|
|
91
91
|
class: "truncate text-xs"
|
|
92
92
|
}, c(String(p[t] || "").slice(0, 50)), 1))), 128))
|
|
@@ -102,7 +102,7 @@ const R = { class: "space-y-5" }, U = { class: "text-sm text-muted-foreground" }
|
|
|
102
102
|
])
|
|
103
103
|
])
|
|
104
104
|
], 2));
|
|
105
|
-
return
|
|
105
|
+
return h.memo = _, h;
|
|
106
106
|
}, i, 0), 128))
|
|
107
107
|
])
|
|
108
108
|
])
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./Kanban.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-52c07c6d"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
|
7
7
|
};
|
|
@@ -89,7 +89,7 @@ const U = /* @__PURE__ */ D({
|
|
|
89
89
|
}, y = (e) => u.value[e] || [];
|
|
90
90
|
return (e, n) => (v(), h("div", {
|
|
91
91
|
class: B([
|
|
92
|
-
"flex gap-4 overflow-x-auto p-1
|
|
92
|
+
"flex gap-4 scrollbar-thin overflow-x-auto p-1 scrollbar-thin-x scrollable-container",
|
|
93
93
|
o.class
|
|
94
94
|
])
|
|
95
95
|
}, [
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./KanbanBoard.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import a from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const p = /* @__PURE__ */ a(o, [["__scopeId", "data-v-
|
|
4
|
+
const p = /* @__PURE__ */ a(o, [["__scopeId", "data-v-38015ba3"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
|
7
7
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as j, ref as z, watch as H, onMounted as J, computed as p, openBlock as r, createElementBlock as d, normalizeClass as c, createElementVNode as i, renderSlot as b, unref as
|
|
1
|
+
import { defineComponent as j, ref as z, watch as H, onMounted as J, computed as p, openBlock as r, createElementBlock as d, normalizeClass as c, createElementVNode as i, renderSlot as b, unref as a, toDisplayString as k, createCommentVNode as x, setBlockTracking as D, Fragment as v, renderList as C, createVNode as I, withCtx as G, isMemoSame as R } from "vue";
|
|
2
2
|
import { VueDraggable as q } from "vue-draggable-plus";
|
|
3
3
|
import { useKanbanBoard as P } from "./useKanbanBoard.js";
|
|
4
4
|
import "../../core/config.js";
|
|
@@ -49,8 +49,8 @@ const X = { class: "flex items-center justify-between font-semibold text-foregro
|
|
|
49
49
|
o.loadData && (!o.columnData || o.columnData.length === 0) && K();
|
|
50
50
|
});
|
|
51
51
|
const N = (e) => {
|
|
52
|
-
const
|
|
53
|
-
|
|
52
|
+
const n = e.target;
|
|
53
|
+
n.scrollTop + n.clientHeight >= n.scrollHeight - 50 && L();
|
|
54
54
|
}, T = (e) => {
|
|
55
55
|
m("change", { type: "add", event: e, columnId: o.column.id });
|
|
56
56
|
}, U = (e) => {
|
|
@@ -60,7 +60,7 @@ const X = { class: "flex items-center justify-between font-semibold text-foregro
|
|
|
60
60
|
}, O = p(
|
|
61
61
|
() => o.column.titleI18n ? Q(o.column.titleI18n) : o.column.title
|
|
62
62
|
), u = p(() => o.column.disabled === !0), V = p(() => u.value ? { name: o.group, pull: !1, put: !1 } : o.group), g = (e) => typeof o.isItemDisabled == "function" ? o.isItemDisabled(e) : !1;
|
|
63
|
-
return (e,
|
|
63
|
+
return (e, n) => (r(), d("div", {
|
|
64
64
|
class: c([
|
|
65
65
|
"flex flex-col bg-card rounded-lg overflow-hidden shrink-0 border border-border/50 w-full flex-1 min-w-75",
|
|
66
66
|
// Visual indicator for a fully-disabled/locked board
|
|
@@ -73,7 +73,7 @@ const X = { class: "flex items-center justify-between font-semibold text-foregro
|
|
|
73
73
|
}, [
|
|
74
74
|
b(e.$slots, "header", {
|
|
75
75
|
column: l.column,
|
|
76
|
-
pageInfo:
|
|
76
|
+
pageInfo: a(F)
|
|
77
77
|
}, () => [
|
|
78
78
|
i("div", X, [
|
|
79
79
|
i("span", null, k(O.value), 1),
|
|
@@ -85,26 +85,26 @@ const X = { class: "flex items-center justify-between font-semibold text-foregro
|
|
|
85
85
|
ref_key: "scrollContainer",
|
|
86
86
|
ref: $,
|
|
87
87
|
class: c([
|
|
88
|
-
"flex-1 flex flex-col overflow-y-auto p-3
|
|
88
|
+
"flex-1 flex flex-col overflow-y-auto p-3 scrollbar-thin scrollable-container",
|
|
89
89
|
l.bodyClass
|
|
90
90
|
]),
|
|
91
91
|
onScroll: N
|
|
92
92
|
}, [
|
|
93
|
-
|
|
94
|
-
|
|
93
|
+
a(B) && a(s).length === 0 ? (r(), d("div", Z, [
|
|
94
|
+
n[0] || (D(-1, !0), (n[0] = (r(), d(v, null, C(3, (t) => i("div", {
|
|
95
95
|
key: "skeleton-" + t,
|
|
96
96
|
class: "bg-body p-3 rounded-md shadow-sm border border-border animate-pulse flex flex-col gap-3"
|
|
97
|
-
}, [...
|
|
97
|
+
}, [...n[3] || (n[3] = [
|
|
98
98
|
i("div", { class: "h-4 bg-muted/60 rounded w-2/3" }, null, -1),
|
|
99
99
|
i("div", { class: "h-3 bg-muted/60 rounded w-1/3" }, null, -1)
|
|
100
|
-
])])), 64))).cacheIndex = 0, D(1),
|
|
100
|
+
])])), 64))).cacheIndex = 0, D(1), n[0])
|
|
101
101
|
])) : (r(), d(v, { key: 1 }, [
|
|
102
102
|
b(e.$slots, "prepend-item", {
|
|
103
103
|
column: l.column,
|
|
104
|
-
items:
|
|
104
|
+
items: a(s)
|
|
105
105
|
}, void 0, !0),
|
|
106
|
-
I(
|
|
107
|
-
"model-value":
|
|
106
|
+
I(a(q), {
|
|
107
|
+
"model-value": a(s),
|
|
108
108
|
"onUpdate:modelValue": M,
|
|
109
109
|
group: V.value,
|
|
110
110
|
animation: 150,
|
|
@@ -117,7 +117,7 @@ const X = { class: "flex items-center justify-between font-semibold text-foregro
|
|
|
117
117
|
onUpdate: A
|
|
118
118
|
}, {
|
|
119
119
|
default: G(() => [
|
|
120
|
-
(r(!0), d(v, null, C(
|
|
120
|
+
(r(!0), d(v, null, C(a(s), (t, ee, oe, f) => {
|
|
121
121
|
const y = [t];
|
|
122
122
|
if (f && f.key === t[l.itemKey || "id"] && R(f, y)) return f;
|
|
123
123
|
const h = (r(), d("div", {
|
|
@@ -142,15 +142,15 @@ const X = { class: "flex items-center justify-between font-semibold text-foregro
|
|
|
142
142
|
], !0)
|
|
143
143
|
], 2));
|
|
144
144
|
return h.memo = y, h;
|
|
145
|
-
},
|
|
145
|
+
}, n, 1), 128))
|
|
146
146
|
]),
|
|
147
147
|
_: 3
|
|
148
148
|
}, 8, ["model-value", "group", "ghostClass", "class", "filter"]),
|
|
149
149
|
b(e.$slots, "append-item", {
|
|
150
150
|
column: l.column,
|
|
151
|
-
items:
|
|
151
|
+
items: a(s)
|
|
152
152
|
}, void 0, !0),
|
|
153
|
-
|
|
153
|
+
a(E) ? (r(), d("div", _, [
|
|
154
154
|
I(W, {
|
|
155
155
|
size: "sm",
|
|
156
156
|
variant: "dots",
|
package/components/Label.vue.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
const f = ["for"], m = /* @__PURE__ */
|
|
1
|
+
import { defineComponent as l, computed as a, openBlock as r, createElementBlock as n, normalizeClass as c, renderSlot as d } from "vue";
|
|
2
|
+
const f = ["for"], m = /* @__PURE__ */ l({
|
|
3
3
|
__name: "Label",
|
|
4
4
|
props: {
|
|
5
5
|
for: {},
|
|
@@ -7,14 +7,14 @@ const f = ["for"], m = /* @__PURE__ */ a({
|
|
|
7
7
|
size: { default: "md" }
|
|
8
8
|
},
|
|
9
9
|
setup(t) {
|
|
10
|
-
const e = t, o =
|
|
10
|
+
const e = t, o = a(() => [
|
|
11
11
|
{
|
|
12
12
|
xs: "-text-fs-3.5",
|
|
13
13
|
sm: "-text-fs-3",
|
|
14
14
|
md: "-text-fs-2",
|
|
15
15
|
lg: "text-base"
|
|
16
16
|
}[e.size],
|
|
17
|
-
"leading-none text-gray-800 peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
|
|
17
|
+
"leading-none text-gray-800 block peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
|
|
18
18
|
e.class
|
|
19
19
|
].join(" "));
|
|
20
20
|
return (s, i) => (r(), n("label", {
|
package/components/Modal.vue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./Modal.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-e4bc0806"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
|
7
7
|
};
|
package/components/Modal.vue2.js
CHANGED
|
@@ -128,7 +128,7 @@ const Z = ["data-testid"], _ = ["data-testid"], ee = {
|
|
|
128
128
|
], 2),
|
|
129
129
|
e.$slots.footer ? (s(), a("div", {
|
|
130
130
|
key: 1,
|
|
131
|
-
class: i([o.footerClass, "flex-none flex items-center px-4 py-3 border-t border-border/
|
|
131
|
+
class: i([o.footerClass, "flex-none flex items-center px-4 py-3 border-t border-border/90 rounded-b-xl bg-body"])
|
|
132
132
|
}, [
|
|
133
133
|
v(e.$slots, "footer", { close: y }, void 0, !0)
|
|
134
134
|
], 2)) : r("", !0)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./PermissionEditorMatrix.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import r from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-
|
|
4
|
+
const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-e227acf6"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
|
7
7
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./PermissionMatrix.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import r from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-
|
|
4
|
+
const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-f4695eed"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
|
7
7
|
};
|