@enos5/enos-vue-default 1.9.4 → 1.10.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/{code-DKj3c0bI.js → code-BuhxLHnl.js} +2 -2
- package/dist/{code-DKj3c0bI.js.map → code-BuhxLHnl.js.map} +1 -1
- package/dist/components/TableList.vue.d.ts +45 -0
- package/dist/components/TableListForm.vue.d.ts +45 -0
- package/dist/components/ThSortable.vue.d.ts +27 -0
- package/dist/{default-Chv_x2WO.js → default-PXDM2_Bk.js} +2 -2
- package/dist/{default-Chv_x2WO.js.map → default-PXDM2_Bk.js.map} +1 -1
- package/dist/{dom-ChCfWSVw.js → dom-D6vkFL4c.js} +2 -2
- package/dist/{dom-ChCfWSVw.js.map → dom-D6vkFL4c.js.map} +1 -1
- package/dist/{image-Bsw8f0j6.js → image-gom7vN5I.js} +2 -2
- package/dist/{image-Bsw8f0j6.js.map → image-gom7vN5I.js.map} +1 -1
- package/dist/index.js +1 -1
- package/dist/index.node.js +1 -1
- package/dist/{link-BsGyLwJR.js → link-COfwcN4G.js} +2 -2
- package/dist/{link-BsGyLwJR.js.map → link-COfwcN4G.js.map} +1 -1
- package/dist/{lists-Die-Wnes.js → lists-L7WlvEhf.js} +2 -2
- package/dist/{lists-Die-Wnes.js.map → lists-L7WlvEhf.js.map} +1 -1
- package/dist/{plugin-CVOKwfxF.js → plugin-BN0tob6x.js} +259 -165
- package/dist/plugin-BN0tob6x.js.map +1 -0
- package/dist/{silver-kurpNU9Q.js → silver-mAowUWHi.js} +2 -2
- package/dist/{silver-kurpNU9Q.js.map → silver-mAowUWHi.js.map} +1 -1
- package/dist/styles.css +48 -15
- package/dist/{table-D8XR3SKE.js → table-CPJ7XNoR.js} +2 -2
- package/dist/{table-D8XR3SKE.js.map → table-CPJ7XNoR.js.map} +1 -1
- package/dist/{tinymce-Dfqt7Khg.js → tinymce-B826jf9A.js} +2 -2
- package/dist/{tinymce-Dfqt7Khg.js.map → tinymce-B826jf9A.js.map} +1 -1
- package/package.json +1 -1
- package/dist/plugin-CVOKwfxF.js.map +0 -1
|
@@ -37,7 +37,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
37
37
|
//#endregion
|
|
38
38
|
//#region src/components/CardTabs.vue
|
|
39
39
|
var _hoisted_1$37 = { class: "border-b border-neutral-200 bg-neutral-50/80 p-2 dark:border-neutral-800 dark:bg-neutral-900/80" };
|
|
40
|
-
var _hoisted_2$
|
|
40
|
+
var _hoisted_2$21 = {
|
|
41
41
|
role: "tablist",
|
|
42
42
|
class: "flex overflow-hidden rounded-lg bg-white shadow-sm ring-1 ring-neutral-200 dark:bg-neutral-950 dark:ring-neutral-800"
|
|
43
43
|
};
|
|
@@ -106,7 +106,7 @@ var _sfc_main$40 = {
|
|
|
106
106
|
focusTabAtIndex(targetIndex);
|
|
107
107
|
};
|
|
108
108
|
return (_ctx, _cache) => {
|
|
109
|
-
return openBlock(), createElementBlock("div", _hoisted_1$37, [createElementVNode("div", _hoisted_2$
|
|
109
|
+
return openBlock(), createElementBlock("div", _hoisted_1$37, [createElementVNode("div", _hoisted_2$21, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.tabs, (tab, index) => {
|
|
110
110
|
return openBlock(), createElementBlock("button", {
|
|
111
111
|
key: tab.value,
|
|
112
112
|
ref_for: true,
|
|
@@ -134,7 +134,7 @@ var _hoisted_1$36 = {
|
|
|
134
134
|
key: 0,
|
|
135
135
|
class: "mb-4"
|
|
136
136
|
};
|
|
137
|
-
var _hoisted_2$
|
|
137
|
+
var _hoisted_2$20 = {
|
|
138
138
|
key: 1,
|
|
139
139
|
class: "mb-4 text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50"
|
|
140
140
|
};
|
|
@@ -204,7 +204,7 @@ var _sfc_main$39 = {
|
|
|
204
204
|
"active-tab": __props.activeTab,
|
|
205
205
|
"onUpdate:activeTab": _cache[0] || (_cache[0] = ($event) => _ctx.$emit("update:activeTab", $event)),
|
|
206
206
|
onTabClick: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("tab-click", $event))
|
|
207
|
-
}, null, 8, ["tabs", "active-tab"])) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(__props.paddingClass) }, [_ctx.$slots.customTitle ? (openBlock(), createElementBlock("div", _hoisted_1$36, [renderSlot(_ctx.$slots, "customTitle")])) : __props.title ? (openBlock(), createElementBlock("h3", _hoisted_2$
|
|
207
|
+
}, null, 8, ["tabs", "active-tab"])) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(__props.paddingClass) }, [_ctx.$slots.customTitle ? (openBlock(), createElementBlock("div", _hoisted_1$36, [renderSlot(_ctx.$slots, "customTitle")])) : __props.title ? (openBlock(), createElementBlock("h3", _hoisted_2$20, toDisplayString(__props.title), 1)) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(["relative", __props.tabs.length > 0 ? "overflow-hidden" : "overflow-visible"]) }, [createVNode(Transition, {
|
|
208
208
|
"enter-active-class": "transition-all duration-200 ease-in-out",
|
|
209
209
|
"enter-from-class": slideDirection.value === "right" ? "translate-x-full opacity-0" : "-translate-x-full opacity-0",
|
|
210
210
|
"enter-to-class": "translate-x-0 opacity-100",
|
|
@@ -299,18 +299,18 @@ var _plugin_vue_export_helper_default = (sfc, props) => {
|
|
|
299
299
|
//#region src/components/SectionTitle.vue
|
|
300
300
|
var _sfc_main$35 = {};
|
|
301
301
|
var _hoisted_1$34 = { class: "md:col-span-1 flex justify-between" };
|
|
302
|
-
var _hoisted_2$
|
|
302
|
+
var _hoisted_2$19 = { class: "px-4 sm:px-0" };
|
|
303
303
|
var _hoisted_3$15 = { class: "text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50" };
|
|
304
304
|
var _hoisted_4$11 = { class: "mt-1 max-w-2xl text-sm text-neutral-600 dark:text-neutral-200" };
|
|
305
305
|
var _hoisted_5$8 = { class: "px-4 sm:px-0" };
|
|
306
306
|
function _sfc_render(_ctx, _cache) {
|
|
307
|
-
return openBlock(), createElementBlock("div", _hoisted_1$34, [createElementVNode("div", _hoisted_2$
|
|
307
|
+
return openBlock(), createElementBlock("div", _hoisted_1$34, [createElementVNode("div", _hoisted_2$19, [createElementVNode("h3", _hoisted_3$15, [renderSlot(_ctx.$slots, "title")]), createElementVNode("p", _hoisted_4$11, [renderSlot(_ctx.$slots, "description")])]), createElementVNode("div", _hoisted_5$8, [renderSlot(_ctx.$slots, "aside")])]);
|
|
308
308
|
}
|
|
309
309
|
var SectionTitle_default = /*#__PURE__*/ _plugin_vue_export_helper_default(_sfc_main$35, [["render", _sfc_render]]);
|
|
310
310
|
//#endregion
|
|
311
311
|
//#region src/components/ActionSection.vue
|
|
312
312
|
var _hoisted_1$33 = { class: "md:grid md:grid-cols-3 md:gap-6" };
|
|
313
|
-
var _hoisted_2$
|
|
313
|
+
var _hoisted_2$18 = { class: "mt-5 md:mt-0 md:col-span-2" };
|
|
314
314
|
var _hoisted_3$14 = { class: "rounded-lg border border-neutral-200 bg-white px-4 py-5 shadow-sm dark:border-neutral-800 dark:bg-neutral-950 sm:p-6" };
|
|
315
315
|
var _sfc_main$34 = {
|
|
316
316
|
__name: "ActionSection",
|
|
@@ -320,7 +320,7 @@ var _sfc_main$34 = {
|
|
|
320
320
|
title: withCtx(() => [renderSlot(_ctx.$slots, "title")]),
|
|
321
321
|
description: withCtx(() => [renderSlot(_ctx.$slots, "description")]),
|
|
322
322
|
_: 3
|
|
323
|
-
}), createElementVNode("div", _hoisted_2$
|
|
323
|
+
}), createElementVNode("div", _hoisted_2$18, [createElementVNode("div", _hoisted_3$14, [renderSlot(_ctx.$slots, "content")])])]);
|
|
324
324
|
};
|
|
325
325
|
}
|
|
326
326
|
};
|
|
@@ -473,12 +473,12 @@ var _sfc_main$32 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
473
473
|
default: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
474
474
|
destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
|
|
475
475
|
outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
|
|
476
|
-
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
476
|
+
secondary: "bg-neutral-300 text-neutral-900 hover:bg-neutral-300/80 dark:bg-secondary dark:text-secondary-foreground dark:hover:bg-secondary/80",
|
|
477
477
|
ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
478
478
|
link: "text-primary underline-offset-4 hover:underline",
|
|
479
479
|
primary: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
480
480
|
success: "bg-emerald-600 text-white hover:bg-emerald-600/90 dark:bg-emerald-600 dark:text-white dark:hover:bg-emerald-600/90",
|
|
481
|
-
tertiary: "border bg-
|
|
481
|
+
tertiary: "border border-neutral-200 bg-white text-neutral-900 shadow-xs hover:bg-neutral-50 dark:border-neutral-200 dark:bg-white dark:text-neutral-900 dark:hover:bg-neutral-100",
|
|
482
482
|
warning: "bg-amber-100 text-amber-700 hover:bg-amber-100/90 focus-visible:ring-amber-500/20 dark:bg-amber-600/20 dark:text-neutral-50 dark:hover:bg-amber-600/30 dark:focus-visible:ring-amber-500/40",
|
|
483
483
|
danger: "bg-destructive/10 text-destructive hover:bg-destructive/15 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:text-destructive-foreground dark:hover:bg-destructive/25",
|
|
484
484
|
"warning-solid": "bg-amber-500 text-white hover:bg-amber-500/90 dark:bg-amber-500 dark:text-white dark:hover:bg-amber-500/90",
|
|
@@ -656,7 +656,7 @@ var _hoisted_1$28 = [
|
|
|
656
656
|
"value",
|
|
657
657
|
"disabled"
|
|
658
658
|
];
|
|
659
|
-
var _hoisted_2$
|
|
659
|
+
var _hoisted_2$17 = ["aria-label"];
|
|
660
660
|
var _hoisted_3$13 = {
|
|
661
661
|
key: 0,
|
|
662
662
|
class: "h-5 w-5",
|
|
@@ -770,7 +770,7 @@ var _sfc_main$29 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
770
770
|
"stroke-linejoin": "round",
|
|
771
771
|
"stroke-width": "2",
|
|
772
772
|
d: "M2.458 12C3.732 7.943 7.523 5 12 5s8.268 2.943 9.542 7c-1.274 4.057-5.065 7-9.542 7S3.732 16.057 2.458 12z"
|
|
773
|
-
}, null, -1)])]))], 10, _hoisted_2$
|
|
773
|
+
}, null, -1)])]))], 10, _hoisted_2$17)) : createCommentVNode("", true)
|
|
774
774
|
], 2);
|
|
775
775
|
};
|
|
776
776
|
}
|
|
@@ -854,7 +854,7 @@ var _sfc_main$28 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
854
854
|
//#endregion
|
|
855
855
|
//#region src/components/CustomSelect.vue
|
|
856
856
|
var _hoisted_1$26 = { class: "flex h-5 items-center gap-1" };
|
|
857
|
-
var _hoisted_2$
|
|
857
|
+
var _hoisted_2$16 = ["placeholder"];
|
|
858
858
|
var _hoisted_3$12 = [
|
|
859
859
|
"data-option-value",
|
|
860
860
|
"onClick",
|
|
@@ -1461,7 +1461,7 @@ var _sfc_main$27 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
1461
1461
|
class: normalizeClass(searchInputClasses.value),
|
|
1462
1462
|
onClick: _cache[2] || (_cache[2] = withModifiers(() => {}, ["stop"])),
|
|
1463
1463
|
onKeydown: _cache[3] || (_cache[3] = withModifiers(() => {}, ["stop"]))
|
|
1464
|
-
}, null, 42, _hoisted_2$
|
|
1464
|
+
}, null, 42, _hoisted_2$16)), [[vModelText, searchQuery.value]]) : createCommentVNode("", true),
|
|
1465
1465
|
selectedDeletedOption.value ? (openBlock(), createElementBlock("div", {
|
|
1466
1466
|
key: 1,
|
|
1467
1467
|
class: normalizeClass([
|
|
@@ -1837,7 +1837,7 @@ var DateInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
1837
1837
|
//#endregion
|
|
1838
1838
|
//#region src/components/DateRangeInput.vue
|
|
1839
1839
|
var _hoisted_1$24 = ["value", "disabled"];
|
|
1840
|
-
var _hoisted_2$
|
|
1840
|
+
var _hoisted_2$15 = { class: "grid grid-cols-7 gap-1" };
|
|
1841
1841
|
var _hoisted_3$11 = [
|
|
1842
1842
|
"disabled",
|
|
1843
1843
|
"onClick",
|
|
@@ -2167,7 +2167,7 @@ var DateRangeInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
2167
2167
|
class: normalizeClass(["text-xs font-medium text-neutral-500 dark:text-neutral-400 text-center py-1", props.ui.weekday])
|
|
2168
2168
|
}, toDisplayString(day), 3);
|
|
2169
2169
|
}), 128))], 2),
|
|
2170
|
-
createElementVNode("div", _hoisted_2$
|
|
2170
|
+
createElementVNode("div", _hoisted_2$15, [(openBlock(true), createElementBlock(Fragment, null, renderList(calendarDays.value, (day) => {
|
|
2171
2171
|
return openBlock(), createElementBlock("div", {
|
|
2172
2172
|
key: day.date.toISOString(),
|
|
2173
2173
|
class: "relative"
|
|
@@ -2215,7 +2215,7 @@ var DateRangeInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
2215
2215
|
//#endregion
|
|
2216
2216
|
//#region src/components/ImageInput.vue
|
|
2217
2217
|
var _hoisted_1$23 = ["accept"];
|
|
2218
|
-
var _hoisted_2$
|
|
2218
|
+
var _hoisted_2$14 = { class: "flex items-center space-x-4" };
|
|
2219
2219
|
var _hoisted_3$10 = ["src"];
|
|
2220
2220
|
var _sfc_main$23 = {
|
|
2221
2221
|
__name: "ImageInput",
|
|
@@ -2261,7 +2261,7 @@ var _sfc_main$23 = {
|
|
|
2261
2261
|
}), null, 16, _hoisted_1$23)], 2), props.currentImageUrl ? (openBlock(), createElementBlock("div", {
|
|
2262
2262
|
key: 0,
|
|
2263
2263
|
class: normalizeClass(["mt-4 rounded-lg border border-neutral-200 bg-neutral-50 p-4 dark:border-neutral-800 dark:bg-neutral-900/50", props.ui.previewCard])
|
|
2264
|
-
}, [createElementVNode("div", _hoisted_2$
|
|
2264
|
+
}, [createElementVNode("div", _hoisted_2$14, [createElementVNode("img", {
|
|
2265
2265
|
src: props.currentImageUrl,
|
|
2266
2266
|
alt: "Current logo",
|
|
2267
2267
|
class: normalizeClass(["h-16 w-auto max-w-24 object-contain rounded-lg shadow-sm", props.ui.previewImage])
|
|
@@ -2656,18 +2656,18 @@ var _sfc_main$18 = {
|
|
|
2656
2656
|
});
|
|
2657
2657
|
};
|
|
2658
2658
|
const loadTinyMce = async () => {
|
|
2659
|
-
const tinymceModule = await import("./tinymce-
|
|
2659
|
+
const tinymceModule = await import("./tinymce-B826jf9A.js").then((m) => /* @__PURE__ */ __toESM(m.default));
|
|
2660
2660
|
const tinymce = tinymceModule.default ?? tinymceModule;
|
|
2661
2661
|
if (typeof globalThis !== "undefined" && !globalThis.tinymce) globalThis.tinymce = tinymce;
|
|
2662
2662
|
await Promise.all([
|
|
2663
|
-
import("./dom-
|
|
2664
|
-
import("./default-
|
|
2665
|
-
import("./silver-
|
|
2666
|
-
import("./code-
|
|
2667
|
-
import("./image-
|
|
2668
|
-
import("./link-
|
|
2669
|
-
import("./lists-
|
|
2670
|
-
import("./table-
|
|
2663
|
+
import("./dom-D6vkFL4c.js"),
|
|
2664
|
+
import("./default-PXDM2_Bk.js"),
|
|
2665
|
+
import("./silver-mAowUWHi.js"),
|
|
2666
|
+
import("./code-BuhxLHnl.js"),
|
|
2667
|
+
import("./image-gom7vN5I.js"),
|
|
2668
|
+
import("./link-COfwcN4G.js"),
|
|
2669
|
+
import("./lists-L7WlvEhf.js"),
|
|
2670
|
+
import("./table-CPJ7XNoR.js")
|
|
2671
2671
|
]);
|
|
2672
2672
|
isEditorReady.value = true;
|
|
2673
2673
|
};
|
|
@@ -2784,43 +2784,43 @@ var _hoisted_1$19 = [
|
|
|
2784
2784
|
"disabled",
|
|
2785
2785
|
"required"
|
|
2786
2786
|
];
|
|
2787
|
-
var _hoisted_2$
|
|
2787
|
+
var _hoisted_2$13 = ["disabled", "aria-expanded"];
|
|
2788
2788
|
var _hoisted_3$9 = { class: "min-w-0 flex-1" };
|
|
2789
2789
|
var _hoisted_4$7 = { class: "flex items-start gap-3" };
|
|
2790
2790
|
var _hoisted_5$5 = { class: "min-w-0 flex-1" };
|
|
2791
2791
|
var _hoisted_6$5 = ["disabled", "aria-label"];
|
|
2792
2792
|
var _hoisted_7$5 = { class: "mt-4 space-y-4" };
|
|
2793
2793
|
var _hoisted_8$3 = ["aria-label", "aria-valuenow"];
|
|
2794
|
-
var _hoisted_9$
|
|
2794
|
+
var _hoisted_9$2 = {
|
|
2795
2795
|
key: 0,
|
|
2796
2796
|
class: "absolute inset-0 bg-[linear-gradient(to_right,#fff,transparent)]"
|
|
2797
2797
|
};
|
|
2798
|
-
var _hoisted_10$
|
|
2798
|
+
var _hoisted_10$2 = {
|
|
2799
2799
|
key: 2,
|
|
2800
2800
|
class: "absolute inset-0 bg-[linear-gradient(to_top,#000,transparent)]"
|
|
2801
2801
|
};
|
|
2802
|
-
var _hoisted_11$
|
|
2803
|
-
var _hoisted_12$
|
|
2802
|
+
var _hoisted_11$2 = { class: "space-y-3" };
|
|
2803
|
+
var _hoisted_12$1 = {
|
|
2804
2804
|
key: 0,
|
|
2805
2805
|
class: "space-y-2"
|
|
2806
2806
|
};
|
|
2807
|
-
var _hoisted_13$
|
|
2808
|
-
var _hoisted_14
|
|
2807
|
+
var _hoisted_13$1 = ["for"];
|
|
2808
|
+
var _hoisted_14 = [
|
|
2809
2809
|
"id",
|
|
2810
2810
|
"disabled",
|
|
2811
2811
|
"value"
|
|
2812
2812
|
];
|
|
2813
|
-
var _hoisted_15
|
|
2813
|
+
var _hoisted_15 = {
|
|
2814
2814
|
key: 1,
|
|
2815
2815
|
class: "space-y-2"
|
|
2816
2816
|
};
|
|
2817
|
-
var _hoisted_16
|
|
2818
|
-
var _hoisted_17
|
|
2817
|
+
var _hoisted_16 = ["for"];
|
|
2818
|
+
var _hoisted_17 = [
|
|
2819
2819
|
"id",
|
|
2820
2820
|
"disabled",
|
|
2821
2821
|
"value"
|
|
2822
2822
|
];
|
|
2823
|
-
var _hoisted_18
|
|
2823
|
+
var _hoisted_18 = { class: "space-y-2" };
|
|
2824
2824
|
var _hoisted_19 = ["for"];
|
|
2825
2825
|
var _hoisted_20 = [
|
|
2826
2826
|
"id",
|
|
@@ -3310,7 +3310,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3310
3310
|
isOpen.value ? "rotate-180" : "",
|
|
3311
3311
|
props.ui.chevron
|
|
3312
3312
|
]) }, null, 8, ["class"])
|
|
3313
|
-
], 16, _hoisted_2$
|
|
3313
|
+
], 16, _hoisted_2$13),
|
|
3314
3314
|
(openBlock(), createBlock(Teleport, { to: "body" }, [createVNode(Transition, {
|
|
3315
3315
|
"enter-active-class": "transition duration-150 ease-out",
|
|
3316
3316
|
"enter-from-class": "opacity-0 translate-y-1",
|
|
@@ -3358,14 +3358,14 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3358
3358
|
onPointerdown: _cache[0] || (_cache[0] = ($event) => beginDrag($event, updateFromSaturationPointer)),
|
|
3359
3359
|
onKeydown: updateFromSaturationKey
|
|
3360
3360
|
}, [
|
|
3361
|
-
!isRainbowVariant.value ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
3362
|
-
isRainbowVariant.value ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [_cache[1] || (_cache[1] = createElementVNode("div", { class: "absolute inset-x-0 top-0 h-1/2 bg-[linear-gradient(to_bottom,#fff,transparent)]" }, null, -1)), _cache[2] || (_cache[2] = createElementVNode("div", { class: "absolute inset-x-0 bottom-0 h-1/2 bg-[linear-gradient(to_bottom,transparent,#000)]" }, null, -1))], 64)) : (openBlock(), createElementBlock("div", _hoisted_10$
|
|
3361
|
+
!isRainbowVariant.value ? (openBlock(), createElementBlock("div", _hoisted_9$2)) : createCommentVNode("", true),
|
|
3362
|
+
isRainbowVariant.value ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [_cache[1] || (_cache[1] = createElementVNode("div", { class: "absolute inset-x-0 top-0 h-1/2 bg-[linear-gradient(to_bottom,#fff,transparent)]" }, null, -1)), _cache[2] || (_cache[2] = createElementVNode("div", { class: "absolute inset-x-0 bottom-0 h-1/2 bg-[linear-gradient(to_bottom,transparent,#000)]" }, null, -1))], 64)) : (openBlock(), createElementBlock("div", _hoisted_10$2)),
|
|
3363
3363
|
createElementVNode("span", {
|
|
3364
3364
|
class: normalizeClass(["pointer-events-none absolute size-4 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-white shadow-[0_0_0_1px_rgba(0,0,0,0.3)]", props.ui.saturationHandle]),
|
|
3365
3365
|
style: normalizeStyle(saturationHandleStyle.value)
|
|
3366
3366
|
}, null, 6)
|
|
3367
3367
|
], 46, _hoisted_8$3),
|
|
3368
|
-
createElementVNode("div", _hoisted_11$
|
|
3368
|
+
createElementVNode("div", _hoisted_11$2, [!isRainbowVariant.value ? (openBlock(), createElementBlock("div", _hoisted_12$1, [createElementVNode("div", { class: normalizeClass(["flex items-center justify-between text-xs font-medium text-neutral-500 dark:text-neutral-400", props.ui.sectionLabel]) }, [createElementVNode("label", { for: fieldId.value ? `${fieldId.value}-hue` : void 0 }, toDisplayString(unref(t)("Hue")), 9, _hoisted_13$1), createElementVNode("span", null, toDisplayString(Math.round(hue.value)) + "°", 1)], 2), createElementVNode("input", {
|
|
3369
3369
|
id: fieldId.value ? `${fieldId.value}-hue` : void 0,
|
|
3370
3370
|
type: "range",
|
|
3371
3371
|
min: "0",
|
|
@@ -3376,7 +3376,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3376
3376
|
value: hue.value,
|
|
3377
3377
|
style: { "background": "linear-gradient(90deg, #FF0000 0%, #FFFF00 17%, #00FF00 33%, #00FFFF 50%, #0000FF 67%, #FF00FF 83%, #FF0000 100%)" },
|
|
3378
3378
|
onInput: handleHueInput
|
|
3379
|
-
}, null, 42, _hoisted_14
|
|
3379
|
+
}, null, 42, _hoisted_14)])) : createCommentVNode("", true), props.allowAlpha ? (openBlock(), createElementBlock("div", _hoisted_15, [createElementVNode("div", { class: normalizeClass(["flex items-center justify-between text-xs font-medium text-neutral-500 dark:text-neutral-400", props.ui.sectionLabel]) }, [createElementVNode("label", { for: fieldId.value ? `${fieldId.value}-alpha` : void 0 }, toDisplayString(unref(t)("Opacity")), 9, _hoisted_16), createElementVNode("span", null, toDisplayString(opacityPercent.value) + "%", 1)], 2), createElementVNode("input", {
|
|
3380
3380
|
id: fieldId.value ? `${fieldId.value}-alpha` : void 0,
|
|
3381
3381
|
type: "range",
|
|
3382
3382
|
min: "0",
|
|
@@ -3387,8 +3387,8 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3387
3387
|
value: opacityPercent.value,
|
|
3388
3388
|
style: normalizeStyle({ background: alphaGradient.value }),
|
|
3389
3389
|
onInput: handleAlphaInput
|
|
3390
|
-
}, null, 46, _hoisted_17
|
|
3391
|
-
createElementVNode("div", _hoisted_18
|
|
3390
|
+
}, null, 46, _hoisted_17)])) : createCommentVNode("", true)]),
|
|
3391
|
+
createElementVNode("div", _hoisted_18, [createElementVNode("label", {
|
|
3392
3392
|
for: fieldId.value ? `${fieldId.value}-hex` : void 0,
|
|
3393
3393
|
class: normalizeClass(["text-xs font-medium uppercase tracking-[0.16em] text-neutral-500 dark:text-neutral-400", props.ui.sectionLabel])
|
|
3394
3394
|
}, toDisplayString(unref(t)("Hex value")), 11, _hoisted_19), createElementVNode("input", {
|
|
@@ -3417,7 +3417,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3417
3417
|
//#endregion
|
|
3418
3418
|
//#region src/components/InputGroup.vue
|
|
3419
3419
|
var _hoisted_1$18 = ["for"];
|
|
3420
|
-
var _hoisted_2$
|
|
3420
|
+
var _hoisted_2$12 = {
|
|
3421
3421
|
key: 3,
|
|
3422
3422
|
class: "relative"
|
|
3423
3423
|
};
|
|
@@ -4033,7 +4033,7 @@ var _sfc_main$16 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
4033
4033
|
helperText: __props.helperText,
|
|
4034
4034
|
helperTextClass: props.helperTextClass ?? defaultHelperTextClass
|
|
4035
4035
|
}, () => [createElementVNode("span", { class: normalizeClass(props.helperTextClass ?? defaultHelperTextClass) }, toDisplayString(__props.helperText), 3)]) : createCommentVNode("", true),
|
|
4036
|
-
resolvedFieldComponent.value && !showsLeadingIcon.value && !showsTrailingIcon.value ? (openBlock(), createBlock(resolveDynamicComponent(resolvedFieldComponent.value), mergeProps({ key: 2 }, resolvedFieldBindings.value, toHandlers(fieldListeners)), null, 16)) : resolvedFieldComponent.value ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
4036
|
+
resolvedFieldComponent.value && !showsLeadingIcon.value && !showsTrailingIcon.value ? (openBlock(), createBlock(resolveDynamicComponent(resolvedFieldComponent.value), mergeProps({ key: 2 }, resolvedFieldBindings.value, toHandlers(fieldListeners)), null, 16)) : resolvedFieldComponent.value ? (openBlock(), createElementBlock("div", _hoisted_2$12, [
|
|
4037
4037
|
showsLeadingIcon.value ? (openBlock(), createElementBlock("div", {
|
|
4038
4038
|
key: 0,
|
|
4039
4039
|
class: normalizeClass(["pointer-events-none absolute inset-y-0 left-0 z-10 flex items-center pl-3 text-neutral-400 dark:text-neutral-200", props.leadingIconClass])
|
|
@@ -4272,7 +4272,7 @@ var _sfc_main$14 = {
|
|
|
4272
4272
|
//#endregion
|
|
4273
4273
|
//#region src/components/ConfirmationModal.vue
|
|
4274
4274
|
var _hoisted_1$17 = { class: "bg-white px-4 pb-4 pt-5 dark:bg-neutral-950 sm:p-6 sm:pb-4" };
|
|
4275
|
-
var _hoisted_2$
|
|
4275
|
+
var _hoisted_2$11 = { class: "sm:flex sm:items-start" };
|
|
4276
4276
|
var _hoisted_3$8 = { class: "mx-auto flex size-12 shrink-0 items-center justify-center rounded-full bg-red-100 dark:bg-red-950/60 sm:mx-0 sm:size-10" };
|
|
4277
4277
|
var _hoisted_4$6 = { class: "mt-3 text-center sm:mt-0 sm:ms-4 sm:text-start" };
|
|
4278
4278
|
var _hoisted_5$4 = { class: "text-lg font-medium text-neutral-950 dark:text-neutral-50" };
|
|
@@ -4317,7 +4317,7 @@ var _sfc_main$13 = {
|
|
|
4317
4317
|
position: __props.position,
|
|
4318
4318
|
onClose: close
|
|
4319
4319
|
}, {
|
|
4320
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$17, [createElementVNode("div", _hoisted_2$
|
|
4320
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$17, [createElementVNode("div", _hoisted_2$11, [createElementVNode("div", _hoisted_3$8, [createVNode(unref(ExclamationTriangleIcon), { class: "size-6 text-red-600 dark:text-neutral-100" })]), createElementVNode("div", _hoisted_4$6, [createElementVNode("h3", _hoisted_5$4, [renderSlot(_ctx.$slots, "title")]), createElementVNode("div", _hoisted_6$4, [renderSlot(_ctx.$slots, "content")])])])]), createElementVNode("div", _hoisted_7$4, [renderSlot(_ctx.$slots, "footer")])]),
|
|
4321
4321
|
_: 3
|
|
4322
4322
|
}, 8, [
|
|
4323
4323
|
"show",
|
|
@@ -4331,7 +4331,7 @@ var _sfc_main$13 = {
|
|
|
4331
4331
|
//#endregion
|
|
4332
4332
|
//#region src/components/DialogModal.vue
|
|
4333
4333
|
var _hoisted_1$16 = { class: "px-6 py-4" };
|
|
4334
|
-
var _hoisted_2$
|
|
4334
|
+
var _hoisted_2$10 = { class: "text-lg font-medium text-neutral-950 dark:text-neutral-50" };
|
|
4335
4335
|
var _hoisted_3$7 = { class: "mt-4 text-sm text-neutral-600 dark:text-neutral-200" };
|
|
4336
4336
|
var _hoisted_4$5 = { class: "flex flex-row justify-end border-t border-neutral-200 bg-neutral-50 px-6 py-4 text-end dark:border-neutral-800 dark:bg-neutral-900/60" };
|
|
4337
4337
|
var _sfc_main$12 = {
|
|
@@ -4363,7 +4363,7 @@ var _sfc_main$12 = {
|
|
|
4363
4363
|
closeable: __props.closeable,
|
|
4364
4364
|
onClose: close
|
|
4365
4365
|
}, {
|
|
4366
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$16, [createElementVNode("div", _hoisted_2$
|
|
4366
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$16, [createElementVNode("div", _hoisted_2$10, [renderSlot(_ctx.$slots, "title")]), createElementVNode("div", _hoisted_3$7, [renderSlot(_ctx.$slots, "content")])]), createElementVNode("div", _hoisted_4$5, [renderSlot(_ctx.$slots, "footer")])]),
|
|
4367
4367
|
_: 3
|
|
4368
4368
|
}, 8, [
|
|
4369
4369
|
"show",
|
|
@@ -4527,7 +4527,7 @@ var _hoisted_1$14 = {
|
|
|
4527
4527
|
type: "submit",
|
|
4528
4528
|
class: "block w-full px-4 py-2 text-start text-sm leading-5 text-neutral-700 transition duration-150 ease-in-out hover:bg-neutral-100 focus:bg-neutral-100 focus:outline-none dark:text-neutral-100 dark:hover:bg-neutral-900 dark:focus:bg-neutral-900"
|
|
4529
4529
|
};
|
|
4530
|
-
var _hoisted_2$
|
|
4530
|
+
var _hoisted_2$9 = ["href"];
|
|
4531
4531
|
var _sfc_main$10 = {
|
|
4532
4532
|
__name: "DropdownLink",
|
|
4533
4533
|
props: {
|
|
@@ -4540,7 +4540,7 @@ var _sfc_main$10 = {
|
|
|
4540
4540
|
key: 1,
|
|
4541
4541
|
href: __props.href,
|
|
4542
4542
|
class: "block px-4 py-2 text-sm leading-5 text-neutral-700 transition duration-150 ease-in-out hover:bg-neutral-100 focus:bg-neutral-100 focus:outline-none dark:text-neutral-100 dark:hover:bg-neutral-900 dark:focus:bg-neutral-900"
|
|
4543
|
-
}, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_2$
|
|
4543
|
+
}, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_2$9)) : (openBlock(), createBlock(unref(Link), {
|
|
4544
4544
|
key: 2,
|
|
4545
4545
|
href: __props.href,
|
|
4546
4546
|
class: "block px-4 py-2 text-sm leading-5 text-neutral-700 transition duration-150 ease-in-out hover:bg-neutral-100 focus:bg-neutral-100 focus:outline-none dark:text-neutral-100 dark:hover:bg-neutral-900 dark:focus:bg-neutral-900"
|
|
@@ -4554,7 +4554,7 @@ var _sfc_main$10 = {
|
|
|
4554
4554
|
//#endregion
|
|
4555
4555
|
//#region src/components/FormSection.vue
|
|
4556
4556
|
var _hoisted_1$13 = { class: "md:grid md:grid-cols-3 md:gap-6" };
|
|
4557
|
-
var _hoisted_2$
|
|
4557
|
+
var _hoisted_2$8 = { class: "mt-5 md:col-span-2 md:mt-0" };
|
|
4558
4558
|
var _hoisted_3$6 = { class: "grid grid-cols-6 gap-6" };
|
|
4559
4559
|
var _hoisted_4$4 = {
|
|
4560
4560
|
key: 0,
|
|
@@ -4570,7 +4570,7 @@ var _sfc_main$9 = {
|
|
|
4570
4570
|
title: withCtx(() => [renderSlot(_ctx.$slots, "title")]),
|
|
4571
4571
|
description: withCtx(() => [renderSlot(_ctx.$slots, "description")]),
|
|
4572
4572
|
_: 3
|
|
4573
|
-
}), createElementVNode("div", _hoisted_2$
|
|
4573
|
+
}), createElementVNode("div", _hoisted_2$8, [createElementVNode("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.$emit("submitted"), ["prevent"])) }, [createElementVNode("div", { class: normalizeClass(["rounded-lg border border-neutral-200 bg-white px-4 py-5 shadow-sm dark:border-neutral-800 dark:bg-neutral-950 sm:p-6", hasActions.value ? "sm:rounded-tl-md sm:rounded-tr-md" : "sm:rounded-md"]) }, [createElementVNode("div", _hoisted_3$6, [renderSlot(_ctx.$slots, "form")])], 2), hasActions.value ? (openBlock(), createElementBlock("div", _hoisted_4$4, [renderSlot(_ctx.$slots, "actions")])) : createCommentVNode("", true)], 32)])]);
|
|
4574
4574
|
};
|
|
4575
4575
|
}
|
|
4576
4576
|
};
|
|
@@ -4589,14 +4589,14 @@ var _sfc_main$8 = {
|
|
|
4589
4589
|
//#endregion
|
|
4590
4590
|
//#region src/components/InputLabel.vue
|
|
4591
4591
|
var _hoisted_1$11 = { class: "block text-sm font-medium text-neutral-700 dark:text-neutral-100" };
|
|
4592
|
-
var _hoisted_2$
|
|
4592
|
+
var _hoisted_2$7 = { key: 0 };
|
|
4593
4593
|
var _hoisted_3$5 = { key: 1 };
|
|
4594
4594
|
var _sfc_main$7 = {
|
|
4595
4595
|
__name: "InputLabel",
|
|
4596
4596
|
props: { value: String },
|
|
4597
4597
|
setup(__props) {
|
|
4598
4598
|
return (_ctx, _cache) => {
|
|
4599
|
-
return openBlock(), createElementBlock("label", _hoisted_1$11, [__props.value ? (openBlock(), createElementBlock("span", _hoisted_2$
|
|
4599
|
+
return openBlock(), createElementBlock("label", _hoisted_1$11, [__props.value ? (openBlock(), createElementBlock("span", _hoisted_2$7, toDisplayString(__props.value), 1)) : (openBlock(), createElementBlock("span", _hoisted_3$5, [renderSlot(_ctx.$slots, "default")]))]);
|
|
4600
4600
|
};
|
|
4601
4601
|
}
|
|
4602
4602
|
};
|
|
@@ -4642,8 +4642,8 @@ var _sfc_main$6 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
4642
4642
|
const variantClasses = {
|
|
4643
4643
|
primary: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
4644
4644
|
success: "bg-emerald-600 text-white hover:bg-emerald-600/90 dark:bg-emerald-600 dark:text-white dark:hover:bg-emerald-600/90",
|
|
4645
|
-
secondary: "bg-
|
|
4646
|
-
tertiary: "border border-neutral-200 bg-
|
|
4645
|
+
secondary: "bg-neutral-300 text-neutral-900 hover:bg-neutral-300/80 dark:bg-gray-500 dark:text-gray-50 dark:hover:bg-gray-500/80",
|
|
4646
|
+
tertiary: "border border-neutral-200 bg-white text-neutral-900 shadow-xs hover:bg-neutral-50 dark:border-neutral-200 dark:bg-white dark:text-neutral-900 dark:hover:bg-neutral-100",
|
|
4647
4647
|
warning: "bg-amber-100 text-amber-700 hover:bg-amber-100/90 focus-visible:ring-amber-500/20 dark:bg-amber-600/20 dark:text-neutral-50 dark:hover:bg-amber-600/30 dark:focus-visible:ring-amber-500/40",
|
|
4648
4648
|
danger: "bg-red-100 text-red-700 hover:bg-red-100/90 focus-visible:ring-red-500/20 dark:bg-red-600/20 dark:text-neutral-50 dark:hover:bg-red-600/30 dark:focus-visible:ring-red-500/40",
|
|
4649
4649
|
"warning-solid": "bg-amber-500 text-white hover:bg-amber-500/90 dark:bg-amber-500 dark:text-white dark:hover:bg-amber-500/90",
|
|
@@ -4682,12 +4682,12 @@ var _sfc_main$6 = /*@__PURE__*/ Object.assign({ inheritAttrs: false }, {
|
|
|
4682
4682
|
//#endregion
|
|
4683
4683
|
//#region src/components/SectionBorder.vue
|
|
4684
4684
|
var _hoisted_1$9 = { class: "hidden sm:block" };
|
|
4685
|
-
var _hoisted_2$
|
|
4685
|
+
var _hoisted_2$6 = { class: "py-8" };
|
|
4686
4686
|
var _sfc_main$5 = {
|
|
4687
4687
|
__name: "SectionBorder",
|
|
4688
4688
|
setup(__props) {
|
|
4689
4689
|
return (_ctx, _cache) => {
|
|
4690
|
-
return openBlock(), createElementBlock("div", _hoisted_1$9, [createElementVNode("div", _hoisted_2$
|
|
4690
|
+
return openBlock(), createElementBlock("div", _hoisted_1$9, [createElementVNode("div", _hoisted_2$6, [createVNode(_sfc_main$38)])]);
|
|
4691
4691
|
};
|
|
4692
4692
|
}
|
|
4693
4693
|
};
|
|
@@ -4743,7 +4743,7 @@ var _hoisted_1$8 = [
|
|
|
4743
4743
|
"data-variant",
|
|
4744
4744
|
"data-side"
|
|
4745
4745
|
];
|
|
4746
|
-
var _hoisted_2$
|
|
4746
|
+
var _hoisted_2$5 = {
|
|
4747
4747
|
"data-sidebar": "sidebar",
|
|
4748
4748
|
class: "bg-sidebar text-sidebar-foreground flex h-full w-full flex-col group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm"
|
|
4749
4749
|
};
|
|
@@ -4794,7 +4794,7 @@ var Sidebar_default = /* @__PURE__ */ defineComponent({
|
|
|
4794
4794
|
__props.side === "left" ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]" : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",
|
|
4795
4795
|
__props.variant === "floating" || __props.variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",
|
|
4796
4796
|
props.class
|
|
4797
|
-
] }, _ctx.$attrs), [createElementVNode("div", _hoisted_2$
|
|
4797
|
+
] }, _ctx.$attrs), [createElementVNode("div", _hoisted_2$5, [renderSlot(_ctx.$slots, "default")])], 16)], 8, _hoisted_1$8));
|
|
4798
4798
|
};
|
|
4799
4799
|
}
|
|
4800
4800
|
});
|
|
@@ -5379,7 +5379,7 @@ var SidebarTrigger_default = /* @__PURE__ */ defineComponent({
|
|
|
5379
5379
|
//#endregion
|
|
5380
5380
|
//#region src/components/SortControls.vue
|
|
5381
5381
|
var _hoisted_1$6 = { class: "rounded-xl border border-neutral-200 bg-white/80 px-6 py-4 backdrop-blur-sm dark:border-neutral-800 dark:bg-neutral-950/80" };
|
|
5382
|
-
var _hoisted_2$
|
|
5382
|
+
var _hoisted_2$4 = { class: "flex flex-col items-start justify-between gap-4 sm:flex-row sm:items-center" };
|
|
5383
5383
|
var _hoisted_3$4 = { class: "flex items-center gap-3" };
|
|
5384
5384
|
var _hoisted_4$3 = { class: "text-sm font-medium text-neutral-700 dark:text-neutral-100" };
|
|
5385
5385
|
var _hoisted_5$3 = { class: "flex flex-wrap items-center gap-2" };
|
|
@@ -5424,7 +5424,7 @@ var _sfc_main$4 = {
|
|
|
5424
5424
|
emit("sort", fieldKey);
|
|
5425
5425
|
};
|
|
5426
5426
|
return (_ctx, _cache) => {
|
|
5427
|
-
return openBlock(), createElementBlock("div", _hoisted_1$6, [createElementVNode("div", _hoisted_2$
|
|
5427
|
+
return openBlock(), createElementBlock("div", _hoisted_1$6, [createElementVNode("div", _hoisted_2$4, [createElementVNode("div", _hoisted_3$4, [createElementVNode("label", _hoisted_4$3, toDisplayString(__props.sortByLabel) + ":", 1), createElementVNode("div", _hoisted_5$3, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.fields, (field) => {
|
|
5428
5428
|
return openBlock(), createElementBlock("button", {
|
|
5429
5429
|
key: field.key,
|
|
5430
5430
|
onClick: ($event) => handleSort(field.key),
|
|
@@ -5446,8 +5446,7 @@ var _sfc_main$4 = {
|
|
|
5446
5446
|
};
|
|
5447
5447
|
//#endregion
|
|
5448
5448
|
//#region src/components/ThSortable.vue
|
|
5449
|
-
var _hoisted_1$5 = { class: "flex
|
|
5450
|
-
var _hoisted_2$4 = { class: "flex flex-col" };
|
|
5449
|
+
var _hoisted_1$5 = { class: "flex flex-col" };
|
|
5451
5450
|
var _sfc_main$3 = {
|
|
5452
5451
|
__name: "ThSortable",
|
|
5453
5452
|
props: {
|
|
@@ -5462,6 +5461,22 @@ var _sfc_main$3 = {
|
|
|
5462
5461
|
currentDirection: {
|
|
5463
5462
|
type: String,
|
|
5464
5463
|
default: "asc"
|
|
5464
|
+
},
|
|
5465
|
+
headerClass: {
|
|
5466
|
+
type: [
|
|
5467
|
+
String,
|
|
5468
|
+
Array,
|
|
5469
|
+
Object
|
|
5470
|
+
],
|
|
5471
|
+
default: ""
|
|
5472
|
+
},
|
|
5473
|
+
headerStyle: {
|
|
5474
|
+
type: Object,
|
|
5475
|
+
default: () => ({})
|
|
5476
|
+
},
|
|
5477
|
+
contentClass: {
|
|
5478
|
+
type: String,
|
|
5479
|
+
default: ""
|
|
5465
5480
|
}
|
|
5466
5481
|
},
|
|
5467
5482
|
setup(__props) {
|
|
@@ -5475,15 +5490,16 @@ var _sfc_main$3 = {
|
|
|
5475
5490
|
});
|
|
5476
5491
|
return (_ctx, _cache) => {
|
|
5477
5492
|
return openBlock(), createElementBlock("th", {
|
|
5478
|
-
class:
|
|
5493
|
+
class: normalizeClass(__props.headerClass),
|
|
5494
|
+
style: normalizeStyle(__props.headerStyle),
|
|
5479
5495
|
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("sort", __props.field))
|
|
5480
|
-
}, [createElementVNode("div",
|
|
5496
|
+
}, [createElementVNode("div", { class: normalizeClass(__props.contentClass) }, [createElementVNode("span", null, [renderSlot(_ctx.$slots, "default")]), createElementVNode("div", _hoisted_1$5, [isCurrentSort.value && __props.currentDirection === "asc" ? (openBlock(), createBlock(unref(ChevronUpIcon), {
|
|
5481
5497
|
key: 0,
|
|
5482
5498
|
class: normalizeClass([sortIconClass.value, "w-3 h-3"])
|
|
5483
5499
|
}, null, 8, ["class"])) : createCommentVNode("", true), isCurrentSort.value && __props.currentDirection === "desc" ? (openBlock(), createBlock(unref(ChevronDownIcon), {
|
|
5484
5500
|
key: 1,
|
|
5485
5501
|
class: normalizeClass([sortIconClass.value, "w-3 h-3"])
|
|
5486
|
-
}, null, 8, ["class"])) : createCommentVNode("", true)])])]);
|
|
5502
|
+
}, null, 8, ["class"])) : createCommentVNode("", true)])], 2)], 6);
|
|
5487
5503
|
};
|
|
5488
5504
|
}
|
|
5489
5505
|
};
|
|
@@ -5506,15 +5522,15 @@ var _hoisted_8$2 = {
|
|
|
5506
5522
|
key: 0,
|
|
5507
5523
|
class: "flex items-center"
|
|
5508
5524
|
};
|
|
5509
|
-
var _hoisted_9$
|
|
5525
|
+
var _hoisted_9$1 = {
|
|
5510
5526
|
key: 1,
|
|
5511
5527
|
class: "flex items-center text-xs text-neutral-500 dark:text-neutral-400 sm:w-auto sm:text-sm lg:w-auto"
|
|
5512
5528
|
};
|
|
5513
|
-
var _hoisted_10$
|
|
5529
|
+
var _hoisted_10$1 = {
|
|
5514
5530
|
key: 0,
|
|
5515
5531
|
class: "ml-2"
|
|
5516
5532
|
};
|
|
5517
|
-
var _hoisted_11$
|
|
5533
|
+
var _hoisted_11$1 = { class: "font-medium text-neutral-700 dark:text-neutral-200" };
|
|
5518
5534
|
var _sfc_main$2 = {
|
|
5519
5535
|
__name: "TableSearch",
|
|
5520
5536
|
props: {
|
|
@@ -5589,7 +5605,7 @@ var _sfc_main$2 = {
|
|
|
5589
5605
|
label: __props.showDeletedLabel
|
|
5590
5606
|
}, null, 8, ["modelValue", "label"])])) : createCommentVNode("", true),
|
|
5591
5607
|
renderSlot(_ctx.$slots, "controls"),
|
|
5592
|
-
__props.count !== null ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
5608
|
+
__props.count !== null ? (openBlock(), createElementBlock("div", _hoisted_9$1, [createElementVNode("span", null, toDisplayString(__props.count) + " " + toDisplayString(__props.countLabel), 1), model.value ? (openBlock(), createElementBlock("span", _hoisted_10$1, [createTextVNode(toDisplayString(__props.queryLabel) + " ", 1), createElementVNode("span", _hoisted_11$1, " \"" + toDisplayString(model.value) + "\" ", 1)])) : createCommentVNode("", true)])) : createCommentVNode("", true)
|
|
5593
5609
|
])) : createCommentVNode("", true)])], 2);
|
|
5594
5610
|
};
|
|
5595
5611
|
}
|
|
@@ -5597,35 +5613,19 @@ var _sfc_main$2 = {
|
|
|
5597
5613
|
//#endregion
|
|
5598
5614
|
//#region src/components/TableList.vue
|
|
5599
5615
|
var _hoisted_1$3 = { class: "space-y-6" };
|
|
5600
|
-
var _hoisted_2$2 =
|
|
5601
|
-
var _hoisted_3$2 = {
|
|
5602
|
-
var _hoisted_4$1 = {
|
|
5603
|
-
key: 0,
|
|
5604
|
-
class: "px-6 py-3 text-right text-[11px] font-semibold tracking-[0.12em] text-neutral-600 uppercase dark:text-neutral-200"
|
|
5605
|
-
};
|
|
5606
|
-
var _hoisted_5$1 = { class: "divide-y divide-neutral-200 bg-white dark:divide-neutral-800 dark:bg-neutral-950" };
|
|
5607
|
-
var _hoisted_6$1 = {
|
|
5608
|
-
key: 0,
|
|
5609
|
-
class: "flex items-center"
|
|
5610
|
-
};
|
|
5611
|
-
var _hoisted_7$1 = ["title"];
|
|
5612
|
-
var _hoisted_8$1 = {
|
|
5616
|
+
var _hoisted_2$2 = ["title"];
|
|
5617
|
+
var _hoisted_3$2 = {
|
|
5613
5618
|
key: 0,
|
|
5614
5619
|
class: "ml-2 inline-flex items-center rounded-full bg-red-100 px-2 py-1 text-xs font-medium text-red-700 dark:bg-red-950/60 dark:text-neutral-100"
|
|
5615
5620
|
};
|
|
5616
|
-
var
|
|
5617
|
-
var
|
|
5618
|
-
var _hoisted_11$1 = {
|
|
5619
|
-
key: 0,
|
|
5620
|
-
class: "px-6 py-4 whitespace-nowrap text-right text-sm font-medium"
|
|
5621
|
-
};
|
|
5622
|
-
var _hoisted_12$1 = {
|
|
5621
|
+
var _hoisted_4$1 = ["innerHTML"];
|
|
5622
|
+
var _hoisted_5$1 = {
|
|
5623
5623
|
key: 0,
|
|
5624
5624
|
class: "py-12 text-center"
|
|
5625
5625
|
};
|
|
5626
|
-
var
|
|
5627
|
-
var
|
|
5628
|
-
var
|
|
5626
|
+
var _hoisted_6$1 = { class: "mb-4 inline-flex h-16 w-16 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900" };
|
|
5627
|
+
var _hoisted_7$1 = { class: "mb-2 text-lg font-semibold text-neutral-950 dark:text-neutral-50" };
|
|
5628
|
+
var _hoisted_8$1 = { class: "mb-4 text-neutral-600 dark:text-neutral-200" };
|
|
5629
5629
|
var _sfc_main$1 = {
|
|
5630
5630
|
__name: "TableList",
|
|
5631
5631
|
props: {
|
|
@@ -5667,6 +5667,26 @@ var _sfc_main$1 = {
|
|
|
5667
5667
|
type: Boolean,
|
|
5668
5668
|
default: true
|
|
5669
5669
|
},
|
|
5670
|
+
tableClass: {
|
|
5671
|
+
type: String,
|
|
5672
|
+
default: ""
|
|
5673
|
+
},
|
|
5674
|
+
theadClass: {
|
|
5675
|
+
type: String,
|
|
5676
|
+
default: ""
|
|
5677
|
+
},
|
|
5678
|
+
tbodyClass: {
|
|
5679
|
+
type: String,
|
|
5680
|
+
default: ""
|
|
5681
|
+
},
|
|
5682
|
+
headerRowClass: {
|
|
5683
|
+
type: String,
|
|
5684
|
+
default: ""
|
|
5685
|
+
},
|
|
5686
|
+
dense: {
|
|
5687
|
+
type: Boolean,
|
|
5688
|
+
default: false
|
|
5689
|
+
},
|
|
5670
5690
|
actionsLabel: {
|
|
5671
5691
|
type: String,
|
|
5672
5692
|
default: "Actions"
|
|
@@ -5754,6 +5774,13 @@ var _sfc_main$1 = {
|
|
|
5754
5774
|
const sortBy = (field) => {
|
|
5755
5775
|
emit("sort", field);
|
|
5756
5776
|
};
|
|
5777
|
+
const joinClasses = (...classes) => {
|
|
5778
|
+
return classes.flatMap((value) => {
|
|
5779
|
+
if (Array.isArray(value)) return value;
|
|
5780
|
+
if (typeof value === "string") return value;
|
|
5781
|
+
return [];
|
|
5782
|
+
}).filter(Boolean).join(" ");
|
|
5783
|
+
};
|
|
5757
5784
|
const updateSearchShowDeleted = (value) => {
|
|
5758
5785
|
emit("update:searchShowDeleted", value);
|
|
5759
5786
|
};
|
|
@@ -5774,16 +5801,23 @@ var _sfc_main$1 = {
|
|
|
5774
5801
|
return item.deleted_at || item.deleted;
|
|
5775
5802
|
};
|
|
5776
5803
|
const getColumnClass = (column) => {
|
|
5777
|
-
|
|
5778
|
-
let classes = "px-6 py-4 text-sm truncate";
|
|
5779
|
-
if (!column.isSecondary) classes += " font-medium";
|
|
5780
|
-
if (column.isSecondary) classes += " text-neutral-600 dark:text-neutral-200";
|
|
5781
|
-
return classes;
|
|
5804
|
+
return joinClasses(props.dense ? "px-3 py-2 text-sm truncate" : "px-6 py-4 text-sm truncate", !column.isSecondary ? "font-medium" : "", column.isSecondary ? "text-neutral-600 dark:text-neutral-200" : "", column.align === "right" ? "text-right" : "", column.class, column.cellClass);
|
|
5782
5805
|
};
|
|
5783
5806
|
const getHeaderClass = (column) => {
|
|
5784
|
-
|
|
5785
|
-
return "px-6 py-3 text-left text-[11px] font-semibold tracking-[0.12em] text-neutral-600 uppercase dark:text-neutral-200";
|
|
5807
|
+
return joinClasses(column.sortable ? "cursor-pointer transition-colors duration-150" : "", props.dense ? "px-3 py-2 text-left text-[11px] font-semibold uppercase tracking-[0.12em]" : "px-6 py-3 text-left text-[11px] font-semibold uppercase tracking-[0.12em]", "text-neutral-600 dark:text-neutral-200", column.sortable ? "hover:bg-neutral-100 dark:hover:bg-neutral-900" : "", column.align === "right" ? "text-right" : "", column.headerClass);
|
|
5786
5808
|
};
|
|
5809
|
+
const getContentClass = (column) => {
|
|
5810
|
+
return joinClasses(column.sortable ? "flex items-center space-x-1" : "", column.align === "right" ? "w-full text-right justify-end" : "", column.contentClass);
|
|
5811
|
+
};
|
|
5812
|
+
const getColumnWidthStyle = (column) => {
|
|
5813
|
+
return column.width ? { width: column.width } : {};
|
|
5814
|
+
};
|
|
5815
|
+
const actionHeaderClass = computed(() => {
|
|
5816
|
+
return joinClasses(props.dense ? "px-3 py-2 text-right text-[11px] font-semibold uppercase tracking-[0.12em]" : "px-6 py-3 text-right text-[11px] font-semibold uppercase tracking-[0.12em]", "text-neutral-600 dark:text-neutral-200");
|
|
5817
|
+
});
|
|
5818
|
+
const actionCellClass = computed(() => {
|
|
5819
|
+
return joinClasses(props.dense ? "px-3 py-2 whitespace-nowrap text-right text-sm font-medium" : "px-6 py-4 whitespace-nowrap text-right text-sm font-medium");
|
|
5820
|
+
});
|
|
5787
5821
|
return (_ctx, _cache) => {
|
|
5788
5822
|
return openBlock(), createElementBlock("div", _hoisted_1$3, [__props.search ? (openBlock(), createBlock(_sfc_main$2, {
|
|
5789
5823
|
key: 0,
|
|
@@ -5816,12 +5850,15 @@ var _sfc_main$1 = {
|
|
|
5816
5850
|
"show-deleted-toggle",
|
|
5817
5851
|
"show-deleted-label",
|
|
5818
5852
|
"search-mode"
|
|
5819
|
-
])) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(["bg-white/90 backdrop-blur-sm dark:bg-neutral-950/90", __props.isCard ? "animate-fadeIn rounded-2xl border border-neutral-200 shadow-sm dark:border-neutral-800 md:mx-0 overflow-hidden" : ""]) }, [createElementVNode("div", { class: normalizeClass(["overflow-x-auto", __props.isCard ? "rounded-t-xl" : ""]) }, [createElementVNode("table",
|
|
5853
|
+
])) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(["bg-white/90 backdrop-blur-sm dark:bg-neutral-950/90", __props.isCard ? "animate-fadeIn rounded-2xl border border-neutral-200 shadow-sm dark:border-neutral-800 md:mx-0 overflow-hidden" : ""]) }, [createElementVNode("div", { class: normalizeClass(["overflow-x-auto", __props.isCard ? "rounded-t-xl" : ""]) }, [createElementVNode("table", { class: normalizeClass(joinClasses("min-w-full divide-y divide-neutral-200 dark:divide-neutral-800", __props.tableClass)) }, [createElementVNode("thead", { class: normalizeClass(joinClasses("bg-neutral-50/80 dark:bg-neutral-900/80", __props.theadClass)) }, [createElementVNode("tr", { class: normalizeClass(__props.headerRowClass) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
5820
5854
|
return openBlock(), createElementBlock(Fragment, { key: column.key }, [column.sortable ? (openBlock(), createBlock(_sfc_main$3, {
|
|
5821
5855
|
key: 0,
|
|
5822
5856
|
field: column.key,
|
|
5823
5857
|
"current-sort-field": __props.sortField,
|
|
5824
5858
|
"current-direction": __props.sortDirection,
|
|
5859
|
+
"header-class": getHeaderClass(column),
|
|
5860
|
+
"header-style": getColumnWidthStyle(column),
|
|
5861
|
+
"content-class": getContentClass(column),
|
|
5825
5862
|
onSort: sortBy
|
|
5826
5863
|
}, {
|
|
5827
5864
|
default: withCtx(() => [createTextVNode(toDisplayString(column.label), 1)]),
|
|
@@ -5829,39 +5866,59 @@ var _sfc_main$1 = {
|
|
|
5829
5866
|
}, 1032, [
|
|
5830
5867
|
"field",
|
|
5831
5868
|
"current-sort-field",
|
|
5832
|
-
"current-direction"
|
|
5869
|
+
"current-direction",
|
|
5870
|
+
"header-class",
|
|
5871
|
+
"header-style",
|
|
5872
|
+
"content-class"
|
|
5833
5873
|
])) : (openBlock(), createElementBlock("th", {
|
|
5834
5874
|
key: 1,
|
|
5835
|
-
class: normalizeClass(
|
|
5836
|
-
|
|
5837
|
-
|
|
5875
|
+
class: normalizeClass(getHeaderClass(column)),
|
|
5876
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
5877
|
+
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) }, toDisplayString(column.label), 3)], 6))], 64);
|
|
5878
|
+
}), 128)), _ctx.$slots.actions ? (openBlock(), createElementBlock("th", {
|
|
5879
|
+
key: 0,
|
|
5880
|
+
class: normalizeClass(actionHeaderClass.value)
|
|
5881
|
+
}, toDisplayString(__props.actionsLabel), 3)) : createCommentVNode("", true)], 2)], 2), createElementVNode("tbody", { class: normalizeClass(joinClasses("divide-y divide-neutral-200 bg-white dark:divide-neutral-800 dark:bg-neutral-950", __props.tbodyClass)) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(filteredData.value, (item, index) => {
|
|
5838
5882
|
return openBlock(), createElementBlock("tr", {
|
|
5839
5883
|
key: item.id,
|
|
5840
5884
|
class: normalizeClass(__props.rowClasses(item, index))
|
|
5841
5885
|
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
5842
5886
|
return openBlock(), createElementBlock("td", {
|
|
5843
5887
|
key: column.key,
|
|
5844
|
-
class: normalizeClass(getColumnClass(column))
|
|
5845
|
-
|
|
5888
|
+
class: normalizeClass(getColumnClass(column)),
|
|
5889
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
5890
|
+
}, [column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div", {
|
|
5891
|
+
key: 0,
|
|
5892
|
+
class: normalizeClass(joinClasses("flex items-center", getContentClass(column)))
|
|
5893
|
+
}, [createElementVNode("div", {
|
|
5846
5894
|
class: "truncate text-sm font-medium text-neutral-950 dark:text-neutral-50",
|
|
5847
5895
|
title: getCellContent(item, column)
|
|
5848
|
-
}, toDisplayString(getCellContent(item, column)), 9,
|
|
5896
|
+
}, toDisplayString(getCellContent(item, column)), 9, _hoisted_2$2), isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_3$2, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)], 2)) : column.slot ? (openBlock(), createElementBlock("div", {
|
|
5849
5897
|
key: 1,
|
|
5898
|
+
class: normalizeClass(getContentClass(column))
|
|
5899
|
+
}, [renderSlot(_ctx.$slots, column.slot, {
|
|
5850
5900
|
item,
|
|
5851
5901
|
column,
|
|
5852
5902
|
index
|
|
5853
|
-
}) : column.render ? (openBlock(), createElementBlock("div", {
|
|
5903
|
+
})], 2)) : column.render ? (openBlock(), createElementBlock("div", {
|
|
5854
5904
|
key: 2,
|
|
5905
|
+
class: normalizeClass(getContentClass(column)),
|
|
5855
5906
|
innerHTML: column.render(item)
|
|
5856
|
-
}, null,
|
|
5857
|
-
|
|
5907
|
+
}, null, 10, _hoisted_4$1)) : (openBlock(), createElementBlock("div", {
|
|
5908
|
+
key: 3,
|
|
5909
|
+
class: normalizeClass(getContentClass(column))
|
|
5910
|
+
}, toDisplayString(getCellContent(item, column)), 3))], 6);
|
|
5911
|
+
}), 128)), _ctx.$slots.actions ? (openBlock(), createElementBlock("td", {
|
|
5912
|
+
key: 0,
|
|
5913
|
+
class: normalizeClass(actionCellClass.value)
|
|
5914
|
+
}, [renderSlot(_ctx.$slots, "actions", {
|
|
5858
5915
|
item,
|
|
5859
5916
|
index
|
|
5860
|
-
})])) : createCommentVNode("", true)], 2);
|
|
5861
|
-
}), 128))])])], 2), !hasData.value ? (openBlock(), createElementBlock("div",
|
|
5862
|
-
createElementVNode("div",
|
|
5863
|
-
createElementVNode("h3",
|
|
5864
|
-
createElementVNode("p",
|
|
5917
|
+
})], 2)) : createCommentVNode("", true)], 2);
|
|
5918
|
+
}), 128))], 2)], 2)], 2), !hasData.value ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
|
|
5919
|
+
createElementVNode("div", _hoisted_6$1, [(openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))]),
|
|
5920
|
+
createElementVNode("h3", _hoisted_7$1, toDisplayString(__props.emptyState.title), 1),
|
|
5921
|
+
createElementVNode("p", _hoisted_8$1, toDisplayString(__props.emptyState.description), 1),
|
|
5865
5922
|
__props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$6, {
|
|
5866
5923
|
key: 0,
|
|
5867
5924
|
href: __props.emptyState.actionUrl,
|
|
@@ -5879,36 +5936,25 @@ var _sfc_main$1 = {
|
|
|
5879
5936
|
var _hoisted_1$2 = { class: "relative max-w-sm" };
|
|
5880
5937
|
var _hoisted_2$1 = { class: "absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none" };
|
|
5881
5938
|
var _hoisted_3$1 = ["value", "placeholder"];
|
|
5882
|
-
var _hoisted_4 = {
|
|
5883
|
-
var _hoisted_5 = { class: "bg-neutral-50 dark:bg-neutral-900" };
|
|
5884
|
-
var _hoisted_6 = {
|
|
5885
|
-
key: 0,
|
|
5886
|
-
class: "px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-neutral-500 dark:text-neutral-200"
|
|
5887
|
-
};
|
|
5888
|
-
var _hoisted_7 = { class: "divide-y divide-neutral-200 bg-white dark:divide-neutral-800 dark:bg-neutral-950" };
|
|
5889
|
-
var _hoisted_8 = {
|
|
5939
|
+
var _hoisted_4 = {
|
|
5890
5940
|
key: 2,
|
|
5891
5941
|
class: "flex items-center"
|
|
5892
5942
|
};
|
|
5893
|
-
var
|
|
5894
|
-
var
|
|
5943
|
+
var _hoisted_5 = ["title"];
|
|
5944
|
+
var _hoisted_6 = {
|
|
5895
5945
|
key: 0,
|
|
5896
5946
|
class: "ml-2 inline-flex items-center rounded-full bg-red-100 px-2 py-1 text-xs font-medium text-red-800 dark:bg-red-950/60 dark:text-neutral-100"
|
|
5897
5947
|
};
|
|
5898
|
-
var
|
|
5899
|
-
var
|
|
5900
|
-
var
|
|
5901
|
-
|
|
5902
|
-
class: "px-6 py-4 whitespace-nowrap text-right text-sm font-medium"
|
|
5903
|
-
};
|
|
5904
|
-
var _hoisted_14 = { class: "flex items-center justify-end gap-2" };
|
|
5905
|
-
var _hoisted_15 = {
|
|
5948
|
+
var _hoisted_7 = ["innerHTML"];
|
|
5949
|
+
var _hoisted_8 = { key: 5 };
|
|
5950
|
+
var _hoisted_9 = { class: "flex items-center justify-end gap-2" };
|
|
5951
|
+
var _hoisted_10 = {
|
|
5906
5952
|
key: 2,
|
|
5907
5953
|
class: "py-12 text-center"
|
|
5908
5954
|
};
|
|
5909
|
-
var
|
|
5910
|
-
var
|
|
5911
|
-
var
|
|
5955
|
+
var _hoisted_11 = { class: "mb-4 inline-flex h-16 w-16 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900" };
|
|
5956
|
+
var _hoisted_12 = { class: "mb-2 text-lg font-medium text-neutral-950 dark:text-neutral-50" };
|
|
5957
|
+
var _hoisted_13 = { class: "mb-4 text-neutral-500 dark:text-neutral-200" };
|
|
5912
5958
|
var _sfc_main = {
|
|
5913
5959
|
__name: "TableListForm",
|
|
5914
5960
|
props: {
|
|
@@ -5979,6 +6025,26 @@ var _sfc_main = {
|
|
|
5979
6025
|
type: Boolean,
|
|
5980
6026
|
default: true
|
|
5981
6027
|
},
|
|
6028
|
+
tableClass: {
|
|
6029
|
+
type: String,
|
|
6030
|
+
default: ""
|
|
6031
|
+
},
|
|
6032
|
+
theadClass: {
|
|
6033
|
+
type: String,
|
|
6034
|
+
default: ""
|
|
6035
|
+
},
|
|
6036
|
+
tbodyClass: {
|
|
6037
|
+
type: String,
|
|
6038
|
+
default: ""
|
|
6039
|
+
},
|
|
6040
|
+
headerRowClass: {
|
|
6041
|
+
type: String,
|
|
6042
|
+
default: ""
|
|
6043
|
+
},
|
|
6044
|
+
dense: {
|
|
6045
|
+
type: Boolean,
|
|
6046
|
+
default: false
|
|
6047
|
+
},
|
|
5982
6048
|
actionsLabel: {
|
|
5983
6049
|
type: String,
|
|
5984
6050
|
default: "Actions"
|
|
@@ -6104,6 +6170,13 @@ var _sfc_main = {
|
|
|
6104
6170
|
direction: localSortDirection.value
|
|
6105
6171
|
});
|
|
6106
6172
|
};
|
|
6173
|
+
const joinClasses = (...classes) => {
|
|
6174
|
+
return classes.flatMap((value) => {
|
|
6175
|
+
if (Array.isArray(value)) return value;
|
|
6176
|
+
if (typeof value === "string") return value;
|
|
6177
|
+
return [];
|
|
6178
|
+
}).filter(Boolean).join(" ");
|
|
6179
|
+
};
|
|
6107
6180
|
const cloneValue = (value) => {
|
|
6108
6181
|
if (Array.isArray(value)) return value.map((entry) => cloneValue(entry));
|
|
6109
6182
|
if (value && typeof value === "object") return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, cloneValue(entry)]));
|
|
@@ -6194,15 +6267,16 @@ var _sfc_main = {
|
|
|
6194
6267
|
return truncateText(value);
|
|
6195
6268
|
};
|
|
6196
6269
|
const getColumnClass = (column, item, index) => {
|
|
6197
|
-
|
|
6198
|
-
let classes = isEditingRow(item, index) && (column.input || slots[getEditSlotName(column)]) ? "px-6 py-3 text-sm align-top" : "px-6 py-4 text-sm truncate";
|
|
6199
|
-
if (!column.isSecondary) classes += " font-medium";
|
|
6200
|
-
if (column.isSecondary) classes += " text-neutral-600 dark:text-neutral-200";
|
|
6201
|
-
return classes;
|
|
6270
|
+
return joinClasses(isEditingRow(item, index) && (column.input || slots[getEditSlotName(column)]) ? props.dense ? "px-3 py-2 text-sm align-top" : "px-6 py-3 text-sm align-top" : props.dense ? "px-3 py-2 text-sm truncate" : "px-6 py-4 text-sm truncate", !column.isSecondary ? "font-medium" : "", column.isSecondary ? "text-neutral-600 dark:text-neutral-200" : "", column.align === "right" ? "text-right" : "", column.class, column.cellClass);
|
|
6202
6271
|
};
|
|
6203
6272
|
const getHeaderClass = (column) => {
|
|
6204
|
-
|
|
6205
|
-
|
|
6273
|
+
return joinClasses(column.sortable ? "cursor-pointer transition-colors duration-150" : "", props.dense ? "px-3 py-2 text-left text-xs font-medium uppercase tracking-wider" : "px-6 py-3 text-left text-xs font-medium uppercase tracking-wider", "text-neutral-500 dark:text-neutral-200", column.sortable ? "hover:bg-neutral-100 dark:hover:bg-neutral-900" : "", column.align === "right" ? "text-right" : "", column.headerClass);
|
|
6274
|
+
};
|
|
6275
|
+
const getContentClass = (column) => {
|
|
6276
|
+
return joinClasses(column.sortable ? "flex items-center space-x-1" : "", column.align === "right" ? "w-full text-right justify-end" : "", column.contentClass);
|
|
6277
|
+
};
|
|
6278
|
+
const getColumnWidthStyle = (column) => {
|
|
6279
|
+
return column.width ? { width: column.width } : {};
|
|
6206
6280
|
};
|
|
6207
6281
|
const getInputType = (column) => column.inputType || "text";
|
|
6208
6282
|
const getInputClass = (column) => {
|
|
@@ -6236,6 +6310,12 @@ var _sfc_main = {
|
|
|
6236
6310
|
const disabled = typeof column.disabled === "function" ? column.disabled(item, index) : column.disabled;
|
|
6237
6311
|
return Boolean(disabled || isDeleted(item));
|
|
6238
6312
|
};
|
|
6313
|
+
const actionHeaderClass = computed(() => {
|
|
6314
|
+
return joinClasses(props.dense ? "px-3 py-2 text-right text-xs font-medium uppercase tracking-wider" : "px-6 py-3 text-right text-xs font-medium uppercase tracking-wider", "text-neutral-500 dark:text-neutral-200");
|
|
6315
|
+
});
|
|
6316
|
+
const actionCellClass = computed(() => {
|
|
6317
|
+
return joinClasses(props.dense ? "px-3 py-2 whitespace-nowrap text-right text-sm font-medium" : "px-6 py-4 whitespace-nowrap text-right text-sm font-medium");
|
|
6318
|
+
});
|
|
6239
6319
|
return (_ctx, _cache) => {
|
|
6240
6320
|
return openBlock(), createElementBlock("div", { class: normalizeClass(["bg-white dark:bg-neutral-950", __props.isCard ? "mx-4 rounded-xl animate-fadeIn border border-neutral-200 shadow-sm dark:border-neutral-800 md:mx-0 overflow-hidden" : ""]) }, [__props.search ? (openBlock(), createElementBlock("div", {
|
|
6241
6321
|
key: 0,
|
|
@@ -6249,12 +6329,15 @@ var _sfc_main = {
|
|
|
6249
6329
|
}, null, 40, _hoisted_3$1)])], 2)) : createCommentVNode("", true), hasData.value ? (openBlock(), createElementBlock("div", {
|
|
6250
6330
|
key: 1,
|
|
6251
6331
|
class: normalizeClass(["overflow-x-auto", __props.isCard ? __props.search ? "" : "rounded-t-xl" : ""])
|
|
6252
|
-
}, [createElementVNode("table",
|
|
6332
|
+
}, [createElementVNode("table", { class: normalizeClass(joinClasses("min-w-full divide-y divide-neutral-200 dark:divide-neutral-800", __props.tableClass)) }, [createElementVNode("thead", { class: normalizeClass(joinClasses("bg-neutral-50 dark:bg-neutral-900", __props.theadClass)) }, [createElementVNode("tr", { class: normalizeClass(__props.headerRowClass) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
6253
6333
|
return openBlock(), createElementBlock(Fragment, { key: column.key }, [column.sortable ? (openBlock(), createBlock(_sfc_main$3, {
|
|
6254
6334
|
key: 0,
|
|
6255
6335
|
field: column.key,
|
|
6256
6336
|
"current-sort-field": localSortField.value,
|
|
6257
6337
|
"current-direction": localSortDirection.value,
|
|
6338
|
+
"header-class": getHeaderClass(column),
|
|
6339
|
+
"header-style": getColumnWidthStyle(column),
|
|
6340
|
+
"content-class": getContentClass(column),
|
|
6258
6341
|
onSort: sortBy
|
|
6259
6342
|
}, {
|
|
6260
6343
|
default: withCtx(() => [createTextVNode(toDisplayString(column.label), 1)]),
|
|
@@ -6262,20 +6345,28 @@ var _sfc_main = {
|
|
|
6262
6345
|
}, 1032, [
|
|
6263
6346
|
"field",
|
|
6264
6347
|
"current-sort-field",
|
|
6265
|
-
"current-direction"
|
|
6348
|
+
"current-direction",
|
|
6349
|
+
"header-class",
|
|
6350
|
+
"header-style",
|
|
6351
|
+
"content-class"
|
|
6266
6352
|
])) : (openBlock(), createElementBlock("th", {
|
|
6267
6353
|
key: 1,
|
|
6268
|
-
class: normalizeClass(
|
|
6269
|
-
|
|
6270
|
-
|
|
6354
|
+
class: normalizeClass(getHeaderClass(column)),
|
|
6355
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
6356
|
+
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) }, toDisplayString(column.label), 3)], 6))], 64);
|
|
6357
|
+
}), 128)), hasActionsColumn.value ? (openBlock(), createElementBlock("th", {
|
|
6358
|
+
key: 0,
|
|
6359
|
+
class: normalizeClass(actionHeaderClass.value)
|
|
6360
|
+
}, toDisplayString(__props.actionsLabel), 3)) : createCommentVNode("", true)], 2)], 2), createElementVNode("tbody", { class: normalizeClass(joinClasses("divide-y divide-neutral-200 bg-white dark:divide-neutral-800 dark:bg-neutral-950", __props.tbodyClass)) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(sortedData.value, (item, index) => {
|
|
6271
6361
|
return openBlock(), createElementBlock("tr", {
|
|
6272
6362
|
key: getRowKey(item, index),
|
|
6273
6363
|
class: normalizeClass(__props.rowClasses(item, index))
|
|
6274
6364
|
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
6275
6365
|
return openBlock(), createElementBlock("td", {
|
|
6276
6366
|
key: column.key,
|
|
6277
|
-
class: normalizeClass(
|
|
6278
|
-
|
|
6367
|
+
class: normalizeClass(getColumnClass(column, item, index)),
|
|
6368
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
6369
|
+
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) }, [isEditingRow(item, index) && column.slot && unref(slots)[getEditSlotName(column)] ? renderSlot(_ctx.$slots, getEditSlotName(column), mergeProps({
|
|
6279
6370
|
key: 0,
|
|
6280
6371
|
ref_for: true
|
|
6281
6372
|
}, getSlotBindings(item, column, index))) : isEditingRow(item, index) && column.input ? (openBlock(), createBlock(_sfc_main$16, {
|
|
@@ -6300,17 +6391,20 @@ var _sfc_main = {
|
|
|
6300
6391
|
"error-message",
|
|
6301
6392
|
"onUpdate:modelValue",
|
|
6302
6393
|
"onBlur"
|
|
6303
|
-
])) : column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div",
|
|
6394
|
+
])) : column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div", _hoisted_4, [createElementVNode("div", {
|
|
6304
6395
|
class: "text-sm font-medium truncate",
|
|
6305
6396
|
title: getCellContent(item, column)
|
|
6306
|
-
}, toDisplayString(getCellContent(item, column)), 9,
|
|
6397
|
+
}, toDisplayString(getCellContent(item, column)), 9, _hoisted_5), isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_6, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)])) : column.slot ? renderSlot(_ctx.$slots, column.slot, mergeProps({
|
|
6307
6398
|
key: 3,
|
|
6308
6399
|
ref_for: true
|
|
6309
6400
|
}, getSlotBindings(item, column, index))) : column.render ? (openBlock(), createElementBlock("div", {
|
|
6310
6401
|
key: 4,
|
|
6311
6402
|
innerHTML: column.render(item)
|
|
6312
|
-
}, null, 8,
|
|
6313
|
-
}), 128)), hasActionsColumn.value ? (openBlock(), createElementBlock("td",
|
|
6403
|
+
}, null, 8, _hoisted_7)) : (openBlock(), createElementBlock("div", _hoisted_8, toDisplayString(getCellContent(item, column)), 1))], 2)], 6);
|
|
6404
|
+
}), 128)), hasActionsColumn.value ? (openBlock(), createElementBlock("td", {
|
|
6405
|
+
key: 0,
|
|
6406
|
+
class: normalizeClass(actionCellClass.value)
|
|
6407
|
+
}, [createElementVNode("div", _hoisted_9, [hasActionsSlot.value ? renderSlot(_ctx.$slots, "actions", mergeProps({
|
|
6314
6408
|
key: 0,
|
|
6315
6409
|
ref_for: true
|
|
6316
6410
|
}, getSlotBindings(item, null, index))) : createCommentVNode("", true), __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$32, {
|
|
@@ -6345,11 +6439,11 @@ var _sfc_main = {
|
|
|
6345
6439
|
"title",
|
|
6346
6440
|
"aria-label",
|
|
6347
6441
|
"onClick"
|
|
6348
|
-
])) : createCommentVNode("", true)])])) : createCommentVNode("", true)], 2);
|
|
6349
|
-
}), 128))])])], 2)) : (openBlock(), createElementBlock("div",
|
|
6350
|
-
createElementVNode("div",
|
|
6351
|
-
createElementVNode("h3",
|
|
6352
|
-
createElementVNode("p",
|
|
6442
|
+
])) : createCommentVNode("", true)])], 2)) : createCommentVNode("", true)], 2);
|
|
6443
|
+
}), 128))], 2)], 2)], 2)) : (openBlock(), createElementBlock("div", _hoisted_10, [
|
|
6444
|
+
createElementVNode("div", _hoisted_11, [(openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))]),
|
|
6445
|
+
createElementVNode("h3", _hoisted_12, toDisplayString(__props.emptyState.title), 1),
|
|
6446
|
+
createElementVNode("p", _hoisted_13, toDisplayString(__props.emptyState.description), 1),
|
|
6353
6447
|
__props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$6, {
|
|
6354
6448
|
key: 0,
|
|
6355
6449
|
href: __props.emptyState.actionUrl,
|
|
@@ -6548,4 +6642,4 @@ var plugin_default = { install(app) {
|
|
|
6548
6642
|
//#endregion
|
|
6549
6643
|
export { SectionTitle_default as $, _sfc_main$12 as A, _sfc_main$22 as B, _sfc_main$5 as C, _sfc_main$9 as D, _sfc_main$8 as E, ColorPicker_default as F, _sfc_main$27 as G, DateRangeInput_default as H, _sfc_main$18 as I, _sfc_main$30 as J, _sfc_main$28 as K, _sfc_main$19 as L, _sfc_main$14 as M, _sfc_main$15 as N, _sfc_main$10 as O, _sfc_main$16 as P, _sfc_main$34 as Q, _sfc_main$20 as R, useSidebar as S, _sfc_main$7 as T, DateInput_default as U, _sfc_main$23 as V, _sfc_main$26 as W, _sfc_main$32 as X, _sfc_main$31 as Y, _sfc_main$33 as Z, SidebarGroupContent_default as _, _sfc_main$1 as a, __commonJSMin as at, SidebarContent_default as b, _sfc_main$4 as c, SidebarMenuItem_default as d, _sfc_main$36 as et, SidebarMenuButton_default as f, SidebarGroupLabel_default as g, SidebarHeader_default as h, _sfc_main as i, _sfc_main$40 as it, _sfc_main$13 as j, _sfc_main$11 as k, SidebarTrigger_default as l, SidebarInset_default as m, ToastContainer_default as n, _sfc_main$38 as nt, _sfc_main$2 as o, SidebarMenu_default as p, _sfc_main$29 as q, Toast_default as r, _sfc_main$39 as rt, _sfc_main$3 as s, plugin_default as t, _sfc_main$37 as tt, SidebarProvider_default as u, SidebarGroup_default as v, _sfc_main$6 as w, Sidebar_default as x, SidebarFooter_default as y, _sfc_main$21 as z };
|
|
6550
6644
|
|
|
6551
|
-
//# sourceMappingURL=plugin-
|
|
6645
|
+
//# sourceMappingURL=plugin-BN0tob6x.js.map
|