@enos5/enos-vue-default 1.14.1 → 1.15.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-D7sKxmch.js → code-jMjxUD3o.js} +2 -2
- package/dist/{code-D7sKxmch.js.map → code-jMjxUD3o.js.map} +1 -1
- package/dist/components/TableList.vue.d.ts +38 -0
- package/dist/components/TableListForm.vue.d.ts +22 -2
- package/dist/components/tableListOrdering.d.ts +15 -0
- package/dist/{default-CDuPC5at.js → default-xPd8Ryrk.js} +2 -2
- package/dist/{default-CDuPC5at.js.map → default-xPd8Ryrk.js.map} +1 -1
- package/dist/{dom-Cm9iZd1-.js → dom-B_GpaotC.js} +2 -2
- package/dist/{dom-Cm9iZd1-.js.map → dom-B_GpaotC.js.map} +1 -1
- package/dist/{image-zvPUqCGQ.js → image-BvG_M2nu.js} +2 -2
- package/dist/{image-zvPUqCGQ.js.map → image-BvG_M2nu.js.map} +1 -1
- package/dist/index.js +1 -1
- package/dist/index.node.js +1 -1
- package/dist/{link-BI0xx2_E.js → link-CENwKcvp.js} +2 -2
- package/dist/{link-BI0xx2_E.js.map → link-CENwKcvp.js.map} +1 -1
- package/dist/{lists-Bhhx_pvU.js → lists-YVaNdPH_.js} +2 -2
- package/dist/{lists-Bhhx_pvU.js.map → lists-YVaNdPH_.js.map} +1 -1
- package/dist/{plugin-BGAJPBIG.js → plugin-Bn-FKPXN.js} +501 -247
- package/dist/plugin-Bn-FKPXN.js.map +1 -0
- package/dist/{silver-CwEouPmL.js → silver-CQ_b7DcV.js} +2 -2
- package/dist/{silver-CwEouPmL.js.map → silver-CQ_b7DcV.js.map} +1 -1
- package/dist/styles.css +28 -0
- package/dist/{table-B0r76n48.js → table-CtaTygbd.js} +2 -2
- package/dist/{table-B0r76n48.js.map → table-CtaTygbd.js.map} +1 -1
- package/dist/{tinymce-Bqvl27oQ.js → tinymce-CfYelvmr.js} +2 -2
- package/dist/{tinymce-Bqvl27oQ.js.map → tinymce-CfYelvmr.js.map} +1 -1
- package/package.json +1 -1
- package/dist/plugin-BGAJPBIG.js.map +0 -1
|
@@ -2840,18 +2840,18 @@ var _sfc_main$18 = {
|
|
|
2840
2840
|
});
|
|
2841
2841
|
};
|
|
2842
2842
|
const loadTinyMce = async () => {
|
|
2843
|
-
const tinymceModule = await import("./tinymce-
|
|
2843
|
+
const tinymceModule = await import("./tinymce-CfYelvmr.js").then((m) => /* @__PURE__ */ __toESM(m.default));
|
|
2844
2844
|
const tinymce = tinymceModule.default ?? tinymceModule;
|
|
2845
2845
|
if (typeof globalThis !== "undefined" && !globalThis.tinymce) globalThis.tinymce = tinymce;
|
|
2846
2846
|
await Promise.all([
|
|
2847
|
-
import("./dom-
|
|
2848
|
-
import("./default-
|
|
2849
|
-
import("./silver-
|
|
2850
|
-
import("./code-
|
|
2851
|
-
import("./image-
|
|
2852
|
-
import("./link-
|
|
2853
|
-
import("./lists-
|
|
2854
|
-
import("./table-
|
|
2847
|
+
import("./dom-B_GpaotC.js"),
|
|
2848
|
+
import("./default-xPd8Ryrk.js"),
|
|
2849
|
+
import("./silver-CQ_b7DcV.js"),
|
|
2850
|
+
import("./code-jMjxUD3o.js"),
|
|
2851
|
+
import("./image-BvG_M2nu.js"),
|
|
2852
|
+
import("./link-CENwKcvp.js"),
|
|
2853
|
+
import("./lists-YVaNdPH_.js"),
|
|
2854
|
+
import("./table-CtaTygbd.js")
|
|
2855
2855
|
]);
|
|
2856
2856
|
isEditorReady.value = true;
|
|
2857
2857
|
};
|
|
@@ -2975,30 +2975,30 @@ var _hoisted_5$5 = { class: "min-w-0 flex-1" };
|
|
|
2975
2975
|
var _hoisted_6$5 = ["disabled", "aria-label"];
|
|
2976
2976
|
var _hoisted_7$4 = { class: "mt-4 space-y-4" };
|
|
2977
2977
|
var _hoisted_8$2 = ["aria-label", "aria-valuenow"];
|
|
2978
|
-
var _hoisted_9$
|
|
2978
|
+
var _hoisted_9$2 = {
|
|
2979
2979
|
key: 0,
|
|
2980
2980
|
class: "absolute inset-0 bg-[linear-gradient(to_right,#fff,transparent)]"
|
|
2981
2981
|
};
|
|
2982
|
-
var _hoisted_10$
|
|
2982
|
+
var _hoisted_10$2 = {
|
|
2983
2983
|
key: 2,
|
|
2984
2984
|
class: "absolute inset-0 bg-[linear-gradient(to_top,#000,transparent)]"
|
|
2985
2985
|
};
|
|
2986
|
-
var _hoisted_11$
|
|
2987
|
-
var _hoisted_12 = {
|
|
2986
|
+
var _hoisted_11$2 = { class: "space-y-3" };
|
|
2987
|
+
var _hoisted_12$2 = {
|
|
2988
2988
|
key: 0,
|
|
2989
2989
|
class: "space-y-2"
|
|
2990
2990
|
};
|
|
2991
|
-
var _hoisted_13 = ["for"];
|
|
2992
|
-
var _hoisted_14 = [
|
|
2991
|
+
var _hoisted_13$2 = ["for"];
|
|
2992
|
+
var _hoisted_14$1 = [
|
|
2993
2993
|
"id",
|
|
2994
2994
|
"disabled",
|
|
2995
2995
|
"value"
|
|
2996
2996
|
];
|
|
2997
|
-
var _hoisted_15 = {
|
|
2997
|
+
var _hoisted_15$1 = {
|
|
2998
2998
|
key: 1,
|
|
2999
2999
|
class: "space-y-2"
|
|
3000
3000
|
};
|
|
3001
|
-
var _hoisted_16 = ["for"];
|
|
3001
|
+
var _hoisted_16$1 = ["for"];
|
|
3002
3002
|
var _hoisted_17 = [
|
|
3003
3003
|
"id",
|
|
3004
3004
|
"disabled",
|
|
@@ -3542,14 +3542,14 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3542
3542
|
onPointerdown: _cache[0] || (_cache[0] = ($event) => beginDrag($event, updateFromSaturationPointer)),
|
|
3543
3543
|
onKeydown: updateFromSaturationKey
|
|
3544
3544
|
}, [
|
|
3545
|
-
!isRainbowVariant.value ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
3546
|
-
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$
|
|
3545
|
+
!isRainbowVariant.value ? (openBlock(), createElementBlock("div", _hoisted_9$2)) : createCommentVNode("", true),
|
|
3546
|
+
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)),
|
|
3547
3547
|
createElementVNode("span", {
|
|
3548
3548
|
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]),
|
|
3549
3549
|
style: normalizeStyle(saturationHandleStyle.value)
|
|
3550
3550
|
}, null, 6)
|
|
3551
3551
|
], 46, _hoisted_8$2),
|
|
3552
|
-
createElementVNode("div", _hoisted_11$
|
|
3552
|
+
createElementVNode("div", _hoisted_11$2, [!isRainbowVariant.value ? (openBlock(), createElementBlock("div", _hoisted_12$2, [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$2), createElementVNode("span", null, toDisplayString(Math.round(hue.value)) + "°", 1)], 2), createElementVNode("input", {
|
|
3553
3553
|
id: fieldId.value ? `${fieldId.value}-hue` : void 0,
|
|
3554
3554
|
type: "range",
|
|
3555
3555
|
min: "0",
|
|
@@ -3560,7 +3560,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3560
3560
|
value: hue.value,
|
|
3561
3561
|
style: { "background": "linear-gradient(90deg, #FF0000 0%, #FFFF00 17%, #00FF00 33%, #00FFFF 50%, #0000FF 67%, #FF00FF 83%, #FF0000 100%)" },
|
|
3562
3562
|
onInput: handleHueInput
|
|
3563
|
-
}, 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", {
|
|
3563
|
+
}, null, 42, _hoisted_14$1)])) : createCommentVNode("", true), props.allowAlpha ? (openBlock(), createElementBlock("div", _hoisted_15$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}-alpha` : void 0 }, toDisplayString(unref(t)("Opacity")), 9, _hoisted_16$1), createElementVNode("span", null, toDisplayString(opacityPercent.value) + "%", 1)], 2), createElementVNode("input", {
|
|
3564
3564
|
id: fieldId.value ? `${fieldId.value}-alpha` : void 0,
|
|
3565
3565
|
type: "range",
|
|
3566
3566
|
min: "0",
|
|
@@ -5474,6 +5474,50 @@ var createLucideIcon = (iconName, iconNode) => (props, { slots, attrs }) => h(Ic
|
|
|
5474
5474
|
* This source code is licensed under the ISC license.
|
|
5475
5475
|
* See the LICENSE file in the root directory of this source tree.
|
|
5476
5476
|
*/
|
|
5477
|
+
var GripVertical = createLucideIcon("grip-vertical", [
|
|
5478
|
+
["circle", {
|
|
5479
|
+
cx: "9",
|
|
5480
|
+
cy: "12",
|
|
5481
|
+
r: "1",
|
|
5482
|
+
key: "1vctgf"
|
|
5483
|
+
}],
|
|
5484
|
+
["circle", {
|
|
5485
|
+
cx: "9",
|
|
5486
|
+
cy: "5",
|
|
5487
|
+
r: "1",
|
|
5488
|
+
key: "hp0tcf"
|
|
5489
|
+
}],
|
|
5490
|
+
["circle", {
|
|
5491
|
+
cx: "9",
|
|
5492
|
+
cy: "19",
|
|
5493
|
+
r: "1",
|
|
5494
|
+
key: "fkjjf6"
|
|
5495
|
+
}],
|
|
5496
|
+
["circle", {
|
|
5497
|
+
cx: "15",
|
|
5498
|
+
cy: "12",
|
|
5499
|
+
r: "1",
|
|
5500
|
+
key: "1tmaij"
|
|
5501
|
+
}],
|
|
5502
|
+
["circle", {
|
|
5503
|
+
cx: "15",
|
|
5504
|
+
cy: "5",
|
|
5505
|
+
r: "1",
|
|
5506
|
+
key: "19l28e"
|
|
5507
|
+
}],
|
|
5508
|
+
["circle", {
|
|
5509
|
+
cx: "15",
|
|
5510
|
+
cy: "19",
|
|
5511
|
+
r: "1",
|
|
5512
|
+
key: "f4zoj3"
|
|
5513
|
+
}]
|
|
5514
|
+
]);
|
|
5515
|
+
/**
|
|
5516
|
+
* @license @lucide/vue v1.7.0 - ISC
|
|
5517
|
+
*
|
|
5518
|
+
* This source code is licensed under the ISC license.
|
|
5519
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
5520
|
+
*/
|
|
5477
5521
|
var PanelLeftClose = createLucideIcon("panel-left-close", [
|
|
5478
5522
|
["rect", {
|
|
5479
5523
|
width: "18",
|
|
@@ -6154,21 +6198,74 @@ var _sfc_main$2 = {
|
|
|
6154
6198
|
}
|
|
6155
6199
|
};
|
|
6156
6200
|
//#endregion
|
|
6201
|
+
//#region src/components/tableListOrdering.js
|
|
6202
|
+
var getNestedValue = (object, path) => {
|
|
6203
|
+
if (!path || typeof path !== "string") return object;
|
|
6204
|
+
return path.split(".").reduce((current, key) => current?.[key], object);
|
|
6205
|
+
};
|
|
6206
|
+
var setNestedValue = (object, path, value) => {
|
|
6207
|
+
if (!path || typeof path !== "string" || object == null) return;
|
|
6208
|
+
const keys = path.split(".");
|
|
6209
|
+
const lastKey = keys.pop();
|
|
6210
|
+
let current = object;
|
|
6211
|
+
for (const key of keys) {
|
|
6212
|
+
if (current[key] === void 0 || current[key] === null || typeof current[key] !== "object") current[key] = {};
|
|
6213
|
+
current = current[key];
|
|
6214
|
+
}
|
|
6215
|
+
if (lastKey !== void 0) current[lastKey] = value;
|
|
6216
|
+
};
|
|
6217
|
+
var getRowKey = (item, index, rowKey) => {
|
|
6218
|
+
if (typeof rowKey === "function") return rowKey(item, index) ?? `row-${index}`;
|
|
6219
|
+
return getNestedValue(item, rowKey) ?? `row-${index}`;
|
|
6220
|
+
};
|
|
6221
|
+
var cloneValue = (value) => {
|
|
6222
|
+
if (Array.isArray(value)) return value.map((entry) => cloneValue(entry));
|
|
6223
|
+
if (value && typeof value === "object") return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, cloneValue(entry)]));
|
|
6224
|
+
return value;
|
|
6225
|
+
};
|
|
6226
|
+
var reorderRows = ({ data, fromIndex, toIndex, orderField, mutateRows }) => {
|
|
6227
|
+
const reorderedData = mutateRows ? [...data] : data.map((item) => cloneValue(item));
|
|
6228
|
+
const [movedItem] = reorderedData.splice(fromIndex, 1);
|
|
6229
|
+
reorderedData.splice(toIndex, 0, movedItem);
|
|
6230
|
+
if (mutateRows) reorderedData.forEach((item, index) => setNestedValue(item, orderField, index + 1));
|
|
6231
|
+
return {
|
|
6232
|
+
data: reorderedData,
|
|
6233
|
+
item: movedItem,
|
|
6234
|
+
fromIndex,
|
|
6235
|
+
toIndex
|
|
6236
|
+
};
|
|
6237
|
+
};
|
|
6238
|
+
//#endregion
|
|
6157
6239
|
//#region src/components/TableList.vue
|
|
6158
6240
|
var _hoisted_1$3 = { class: "space-y-6" };
|
|
6159
|
-
var _hoisted_2$2 =
|
|
6160
|
-
|
|
6241
|
+
var _hoisted_2$2 = {
|
|
6242
|
+
key: 0,
|
|
6243
|
+
class: "w-10 px-2 py-3 text-center text-[11px] font-semibold uppercase tracking-[0.12em] text-neutral-600 dark:text-neutral-200"
|
|
6244
|
+
};
|
|
6245
|
+
var _hoisted_3$2 = ["onDragover", "onDrop"];
|
|
6246
|
+
var _hoisted_4$1 = {
|
|
6247
|
+
key: 0,
|
|
6248
|
+
class: "w-10 whitespace-nowrap px-2 py-4 text-center text-sm text-neutral-500 dark:text-neutral-400"
|
|
6249
|
+
};
|
|
6250
|
+
var _hoisted_5$1 = { class: "inline-flex items-center gap-1" };
|
|
6251
|
+
var _hoisted_6$1 = [
|
|
6252
|
+
"draggable",
|
|
6253
|
+
"aria-label",
|
|
6254
|
+
"onDragstart"
|
|
6255
|
+
];
|
|
6256
|
+
var _hoisted_7$1 = ["title"];
|
|
6257
|
+
var _hoisted_8$1 = {
|
|
6161
6258
|
key: 0,
|
|
6162
6259
|
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"
|
|
6163
6260
|
};
|
|
6164
|
-
var
|
|
6165
|
-
var
|
|
6261
|
+
var _hoisted_9$1 = ["innerHTML"];
|
|
6262
|
+
var _hoisted_10$1 = {
|
|
6166
6263
|
key: 0,
|
|
6167
6264
|
class: "py-12 text-center"
|
|
6168
6265
|
};
|
|
6169
|
-
var
|
|
6170
|
-
var
|
|
6171
|
-
var
|
|
6266
|
+
var _hoisted_11$1 = { class: "mb-4 inline-flex h-16 w-16 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900" };
|
|
6267
|
+
var _hoisted_12$1 = { class: "mb-2 text-lg font-semibold text-neutral-950 dark:text-neutral-50" };
|
|
6268
|
+
var _hoisted_13$1 = { class: "mb-4 text-neutral-600 dark:text-neutral-200" };
|
|
6172
6269
|
var _sfc_main$1 = {
|
|
6173
6270
|
__name: "TableList",
|
|
6174
6271
|
props: {
|
|
@@ -6180,6 +6277,22 @@ var _sfc_main$1 = {
|
|
|
6180
6277
|
type: Array,
|
|
6181
6278
|
required: true
|
|
6182
6279
|
},
|
|
6280
|
+
rowKey: {
|
|
6281
|
+
type: [String, Function],
|
|
6282
|
+
default: "id"
|
|
6283
|
+
},
|
|
6284
|
+
orderable: {
|
|
6285
|
+
type: Boolean,
|
|
6286
|
+
default: false
|
|
6287
|
+
},
|
|
6288
|
+
orderField: {
|
|
6289
|
+
type: String,
|
|
6290
|
+
default: "order"
|
|
6291
|
+
},
|
|
6292
|
+
mutateRows: {
|
|
6293
|
+
type: Boolean,
|
|
6294
|
+
default: true
|
|
6295
|
+
},
|
|
6183
6296
|
sortField: {
|
|
6184
6297
|
type: String,
|
|
6185
6298
|
default: ""
|
|
@@ -6287,6 +6400,7 @@ var _sfc_main$1 = {
|
|
|
6287
6400
|
},
|
|
6288
6401
|
emits: [
|
|
6289
6402
|
"sort",
|
|
6403
|
+
"reorder",
|
|
6290
6404
|
"update:searchShowDeleted",
|
|
6291
6405
|
"update:searchValue"
|
|
6292
6406
|
],
|
|
@@ -6294,6 +6408,10 @@ var _sfc_main$1 = {
|
|
|
6294
6408
|
const slots = useSlots();
|
|
6295
6409
|
const props = __props;
|
|
6296
6410
|
const emit = __emit;
|
|
6411
|
+
const localData = ref(props.data);
|
|
6412
|
+
watch(() => props.data, (value) => {
|
|
6413
|
+
localData.value = value;
|
|
6414
|
+
});
|
|
6297
6415
|
computed(() => !!slots.actions);
|
|
6298
6416
|
const internalSearchQuery = ref("");
|
|
6299
6417
|
const searchQuery = computed({
|
|
@@ -6304,9 +6422,9 @@ var _sfc_main$1 = {
|
|
|
6304
6422
|
}
|
|
6305
6423
|
});
|
|
6306
6424
|
const filteredData = computed(() => {
|
|
6307
|
-
if (props.searchMode !== "client" || !props.search || !searchQuery.value.trim()) return
|
|
6425
|
+
if (props.searchMode !== "client" || !props.search || !searchQuery.value.trim()) return localData.value;
|
|
6308
6426
|
const query = searchQuery.value.toLowerCase().trim();
|
|
6309
|
-
return
|
|
6427
|
+
return localData.value.filter((item) => {
|
|
6310
6428
|
return props.columns.some((column) => {
|
|
6311
6429
|
if (column.searchable === false || column.slot) return false;
|
|
6312
6430
|
const value = column.key.split(".").reduce((obj, key) => obj?.[key], item);
|
|
@@ -6319,6 +6437,47 @@ var _sfc_main$1 = {
|
|
|
6319
6437
|
const resolvedSearchCount = computed(() => {
|
|
6320
6438
|
return props.searchCount ?? filteredData.value.length;
|
|
6321
6439
|
});
|
|
6440
|
+
const draggedIndex = ref(null);
|
|
6441
|
+
const dragOverIndex = ref(null);
|
|
6442
|
+
const canReorder = computed(() => {
|
|
6443
|
+
return props.orderable && !searchQuery.value.trim();
|
|
6444
|
+
});
|
|
6445
|
+
const startDrag = (index, event) => {
|
|
6446
|
+
if (!canReorder.value) {
|
|
6447
|
+
event.preventDefault();
|
|
6448
|
+
return;
|
|
6449
|
+
}
|
|
6450
|
+
draggedIndex.value = index;
|
|
6451
|
+
event.dataTransfer.effectAllowed = "move";
|
|
6452
|
+
event.dataTransfer.setData("text/plain", String(index));
|
|
6453
|
+
};
|
|
6454
|
+
const endDrag = () => {
|
|
6455
|
+
draggedIndex.value = null;
|
|
6456
|
+
dragOverIndex.value = null;
|
|
6457
|
+
};
|
|
6458
|
+
const dropRow = (toIndex, event) => {
|
|
6459
|
+
event.preventDefault();
|
|
6460
|
+
if (!canReorder.value || draggedIndex.value === null || draggedIndex.value === toIndex) {
|
|
6461
|
+
endDrag();
|
|
6462
|
+
return;
|
|
6463
|
+
}
|
|
6464
|
+
const result = reorderRows({
|
|
6465
|
+
data: localData.value,
|
|
6466
|
+
fromIndex: draggedIndex.value,
|
|
6467
|
+
toIndex,
|
|
6468
|
+
orderField: props.orderField,
|
|
6469
|
+
mutateRows: props.mutateRows
|
|
6470
|
+
});
|
|
6471
|
+
if (props.mutateRows) {
|
|
6472
|
+
props.data.splice(0, props.data.length, ...result.data);
|
|
6473
|
+
localData.value = props.data;
|
|
6474
|
+
} else localData.value = result.data;
|
|
6475
|
+
emit("reorder", {
|
|
6476
|
+
...result,
|
|
6477
|
+
rowKey: getRowKey(result.item, toIndex, props.rowKey)
|
|
6478
|
+
});
|
|
6479
|
+
endDrag();
|
|
6480
|
+
};
|
|
6322
6481
|
const sortBy = (field) => {
|
|
6323
6482
|
emit("sort", field);
|
|
6324
6483
|
};
|
|
@@ -6400,75 +6559,91 @@ var _sfc_main$1 = {
|
|
|
6400
6559
|
"show-deleted-label",
|
|
6401
6560
|
"search-mode",
|
|
6402
6561
|
"search-fields-layout"
|
|
6403
|
-
])) : 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) }, [
|
|
6404
|
-
|
|
6405
|
-
|
|
6406
|
-
|
|
6407
|
-
|
|
6408
|
-
|
|
6409
|
-
|
|
6410
|
-
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6415
|
-
|
|
6416
|
-
|
|
6417
|
-
|
|
6418
|
-
|
|
6419
|
-
|
|
6420
|
-
|
|
6421
|
-
|
|
6422
|
-
|
|
6423
|
-
|
|
6562
|
+
])) : 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) }, [
|
|
6563
|
+
__props.orderable ? (openBlock(), createElementBlock("th", _hoisted_2$2, "#")) : createCommentVNode("", true),
|
|
6564
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
6565
|
+
return openBlock(), createElementBlock(Fragment, { key: column.key }, [column.sortable ? (openBlock(), createBlock(_sfc_main$3, {
|
|
6566
|
+
key: 0,
|
|
6567
|
+
field: column.key,
|
|
6568
|
+
"current-sort-field": __props.sortField,
|
|
6569
|
+
"current-direction": __props.sortDirection,
|
|
6570
|
+
"header-class": getHeaderClass(column),
|
|
6571
|
+
"header-style": getColumnWidthStyle(column),
|
|
6572
|
+
"content-class": getContentClass(column),
|
|
6573
|
+
onSort: sortBy
|
|
6574
|
+
}, {
|
|
6575
|
+
default: withCtx(() => [createTextVNode(toDisplayString(column.label), 1)]),
|
|
6576
|
+
_: 2
|
|
6577
|
+
}, 1032, [
|
|
6578
|
+
"field",
|
|
6579
|
+
"current-sort-field",
|
|
6580
|
+
"current-direction",
|
|
6581
|
+
"header-class",
|
|
6582
|
+
"header-style",
|
|
6583
|
+
"content-class"
|
|
6584
|
+
])) : (openBlock(), createElementBlock("th", {
|
|
6585
|
+
key: 1,
|
|
6586
|
+
class: normalizeClass(getHeaderClass(column)),
|
|
6587
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
6588
|
+
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) }, toDisplayString(column.label), 3)], 6))], 64);
|
|
6589
|
+
}), 128)),
|
|
6590
|
+
_ctx.$slots.actions ? (openBlock(), createElementBlock("th", {
|
|
6424
6591
|
key: 1,
|
|
6425
|
-
class: normalizeClass(
|
|
6426
|
-
|
|
6427
|
-
|
|
6428
|
-
}), 128)), _ctx.$slots.actions ? (openBlock(), createElementBlock("th", {
|
|
6429
|
-
key: 0,
|
|
6430
|
-
class: normalizeClass(actionHeaderClass.value)
|
|
6431
|
-
}, 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) => {
|
|
6592
|
+
class: normalizeClass(actionHeaderClass.value)
|
|
6593
|
+
}, toDisplayString(__props.actionsLabel), 3)) : createCommentVNode("", true)
|
|
6594
|
+
], 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) => {
|
|
6432
6595
|
return openBlock(), createElementBlock("tr", {
|
|
6433
|
-
key: item.
|
|
6434
|
-
class: normalizeClass(__props.rowClasses(item, index))
|
|
6435
|
-
|
|
6436
|
-
|
|
6437
|
-
|
|
6438
|
-
|
|
6439
|
-
|
|
6440
|
-
|
|
6441
|
-
|
|
6442
|
-
|
|
6443
|
-
|
|
6444
|
-
|
|
6445
|
-
|
|
6446
|
-
|
|
6596
|
+
key: unref(getRowKey)(item, index, __props.rowKey),
|
|
6597
|
+
class: normalizeClass(joinClasses(__props.rowClasses(item, index), dragOverIndex.value === index ? "ring-2 ring-inset ring-neutral-400 dark:ring-neutral-500" : "")),
|
|
6598
|
+
onDragover: withModifiers(($event) => canReorder.value && (dragOverIndex.value = index), ["prevent"]),
|
|
6599
|
+
onDrop: ($event) => dropRow(index, $event)
|
|
6600
|
+
}, [
|
|
6601
|
+
__props.orderable ? (openBlock(), createElementBlock("td", _hoisted_4$1, [createElementVNode("span", _hoisted_5$1, [createElementVNode("span", {
|
|
6602
|
+
draggable: canReorder.value,
|
|
6603
|
+
class: "cursor-grab touch-none active:cursor-grabbing",
|
|
6604
|
+
"aria-label": `Drag row ${index + 1}`,
|
|
6605
|
+
onDragstart: ($event) => startDrag(index, $event),
|
|
6606
|
+
onDragend: endDrag
|
|
6607
|
+
}, [createVNode(unref(GripVertical), { class: "size-4" })], 40, _hoisted_6$1), createElementVNode("span", null, toDisplayString(index + 1), 1)])])) : createCommentVNode("", true),
|
|
6608
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
6609
|
+
return openBlock(), createElementBlock("td", {
|
|
6610
|
+
key: column.key,
|
|
6611
|
+
class: normalizeClass(getColumnClass(column)),
|
|
6612
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
6613
|
+
}, [column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div", {
|
|
6614
|
+
key: 0,
|
|
6615
|
+
class: normalizeClass(joinClasses("flex items-center", getContentClass(column)))
|
|
6616
|
+
}, [createElementVNode("div", {
|
|
6617
|
+
class: "truncate text-sm font-medium text-neutral-950 dark:text-neutral-50",
|
|
6618
|
+
title: getCellContent(item, column)
|
|
6619
|
+
}, toDisplayString(getCellContent(item, column)), 9, _hoisted_7$1), isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_8$1, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)], 2)) : column.slot ? (openBlock(), createElementBlock("div", {
|
|
6620
|
+
key: 1,
|
|
6621
|
+
class: normalizeClass(getContentClass(column))
|
|
6622
|
+
}, [renderSlot(_ctx.$slots, column.slot, {
|
|
6623
|
+
item,
|
|
6624
|
+
column,
|
|
6625
|
+
index
|
|
6626
|
+
})], 2)) : column.render ? (openBlock(), createElementBlock("div", {
|
|
6627
|
+
key: 2,
|
|
6628
|
+
class: normalizeClass(getContentClass(column)),
|
|
6629
|
+
innerHTML: column.render(item)
|
|
6630
|
+
}, null, 10, _hoisted_9$1)) : (openBlock(), createElementBlock("div", {
|
|
6631
|
+
key: 3,
|
|
6632
|
+
class: normalizeClass(getContentClass(column))
|
|
6633
|
+
}, toDisplayString(getCellContent(item, column)), 3))], 6);
|
|
6634
|
+
}), 128)),
|
|
6635
|
+
_ctx.$slots.actions ? (openBlock(), createElementBlock("td", {
|
|
6447
6636
|
key: 1,
|
|
6448
|
-
class: normalizeClass(
|
|
6449
|
-
}, [renderSlot(_ctx.$slots,
|
|
6637
|
+
class: normalizeClass(actionCellClass.value)
|
|
6638
|
+
}, [renderSlot(_ctx.$slots, "actions", {
|
|
6450
6639
|
item,
|
|
6451
|
-
column,
|
|
6452
6640
|
index
|
|
6453
|
-
})], 2)) :
|
|
6454
|
-
|
|
6455
|
-
|
|
6456
|
-
|
|
6457
|
-
|
|
6458
|
-
|
|
6459
|
-
class: normalizeClass(getContentClass(column))
|
|
6460
|
-
}, toDisplayString(getCellContent(item, column)), 3))], 6);
|
|
6461
|
-
}), 128)), _ctx.$slots.actions ? (openBlock(), createElementBlock("td", {
|
|
6462
|
-
key: 0,
|
|
6463
|
-
class: normalizeClass(actionCellClass.value)
|
|
6464
|
-
}, [renderSlot(_ctx.$slots, "actions", {
|
|
6465
|
-
item,
|
|
6466
|
-
index
|
|
6467
|
-
})], 2)) : createCommentVNode("", true)], 2);
|
|
6468
|
-
}), 128))], 2)], 2)], 2), !hasData.value ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
|
|
6469
|
-
createElementVNode("div", _hoisted_6$1, [(openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))]),
|
|
6470
|
-
createElementVNode("h3", _hoisted_7$1, toDisplayString(__props.emptyState.title), 1),
|
|
6471
|
-
createElementVNode("p", _hoisted_8$1, toDisplayString(__props.emptyState.description), 1),
|
|
6641
|
+
})], 2)) : createCommentVNode("", true)
|
|
6642
|
+
], 42, _hoisted_3$2);
|
|
6643
|
+
}), 128))], 2)], 2)], 2), !hasData.value ? (openBlock(), createElementBlock("div", _hoisted_10$1, [
|
|
6644
|
+
createElementVNode("div", _hoisted_11$1, [(openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))]),
|
|
6645
|
+
createElementVNode("h3", _hoisted_12$1, toDisplayString(__props.emptyState.title), 1),
|
|
6646
|
+
createElementVNode("p", _hoisted_13$1, toDisplayString(__props.emptyState.description), 1),
|
|
6472
6647
|
__props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$6, {
|
|
6473
6648
|
key: 0,
|
|
6474
6649
|
href: __props.emptyState.actionUrl,
|
|
@@ -6484,25 +6659,40 @@ var _sfc_main$1 = {
|
|
|
6484
6659
|
//#endregion
|
|
6485
6660
|
//#region src/components/TableListForm.vue
|
|
6486
6661
|
var _hoisted_1$2 = {
|
|
6662
|
+
key: 0,
|
|
6663
|
+
class: "w-10 px-2 py-3 text-center text-xs font-medium uppercase tracking-wider text-neutral-500 dark:text-neutral-200"
|
|
6664
|
+
};
|
|
6665
|
+
var _hoisted_2$1 = ["onDragover", "onDrop"];
|
|
6666
|
+
var _hoisted_3$1 = {
|
|
6667
|
+
key: 0,
|
|
6668
|
+
class: "w-10 whitespace-nowrap px-2 py-4 text-center text-sm text-neutral-500 dark:text-neutral-400"
|
|
6669
|
+
};
|
|
6670
|
+
var _hoisted_4 = { class: "inline-flex items-center gap-1" };
|
|
6671
|
+
var _hoisted_5 = [
|
|
6672
|
+
"draggable",
|
|
6673
|
+
"aria-label",
|
|
6674
|
+
"onDragstart"
|
|
6675
|
+
];
|
|
6676
|
+
var _hoisted_6 = {
|
|
6487
6677
|
key: 2,
|
|
6488
6678
|
class: "flex items-center"
|
|
6489
6679
|
};
|
|
6490
|
-
var
|
|
6491
|
-
var
|
|
6680
|
+
var _hoisted_7 = ["title"];
|
|
6681
|
+
var _hoisted_8 = {
|
|
6492
6682
|
key: 0,
|
|
6493
6683
|
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"
|
|
6494
6684
|
};
|
|
6495
|
-
var
|
|
6496
|
-
var
|
|
6497
|
-
var
|
|
6498
|
-
var
|
|
6499
|
-
var
|
|
6685
|
+
var _hoisted_9 = ["innerHTML"];
|
|
6686
|
+
var _hoisted_10 = { key: 5 };
|
|
6687
|
+
var _hoisted_11 = { class: "flex items-center justify-end gap-2" };
|
|
6688
|
+
var _hoisted_12 = ["colspan"];
|
|
6689
|
+
var _hoisted_13 = {
|
|
6500
6690
|
key: 2,
|
|
6501
6691
|
class: "py-12 text-center"
|
|
6502
6692
|
};
|
|
6503
|
-
var
|
|
6504
|
-
var
|
|
6505
|
-
var
|
|
6693
|
+
var _hoisted_14 = { class: "mb-4 inline-flex h-16 w-16 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900" };
|
|
6694
|
+
var _hoisted_15 = { class: "mb-2 text-lg font-medium text-neutral-950 dark:text-neutral-50" };
|
|
6695
|
+
var _hoisted_16 = { class: "mb-4 text-neutral-500 dark:text-neutral-200" };
|
|
6506
6696
|
var _sfc_main = {
|
|
6507
6697
|
__name: "TableListForm",
|
|
6508
6698
|
props: {
|
|
@@ -6644,11 +6834,20 @@ var _sfc_main = {
|
|
|
6644
6834
|
expandedCellClass: {
|
|
6645
6835
|
type: String,
|
|
6646
6836
|
default: "p-0"
|
|
6837
|
+
},
|
|
6838
|
+
orderable: {
|
|
6839
|
+
type: Boolean,
|
|
6840
|
+
default: false
|
|
6841
|
+
},
|
|
6842
|
+
orderField: {
|
|
6843
|
+
type: String,
|
|
6844
|
+
default: "order"
|
|
6647
6845
|
}
|
|
6648
6846
|
},
|
|
6649
6847
|
emits: [
|
|
6650
6848
|
"sort",
|
|
6651
6849
|
"update",
|
|
6850
|
+
"reorder",
|
|
6652
6851
|
"update:editingRowKey",
|
|
6653
6852
|
"edit-start",
|
|
6654
6853
|
"edit-cancel",
|
|
@@ -6660,6 +6859,7 @@ var _sfc_main = {
|
|
|
6660
6859
|
const emit = __emit;
|
|
6661
6860
|
const localSortField = ref(props.sortField);
|
|
6662
6861
|
const localSortDirection = ref(props.sortDirection);
|
|
6862
|
+
const localData = ref(props.data);
|
|
6663
6863
|
const internalSearchQuery = ref("");
|
|
6664
6864
|
const searchQuery = computed({
|
|
6665
6865
|
get: () => props.searchValue ?? internalSearchQuery.value,
|
|
@@ -6673,6 +6873,50 @@ var _sfc_main = {
|
|
|
6673
6873
|
const resolvedEditingRowKey = computed(() => {
|
|
6674
6874
|
return props.editingRowKey !== void 0 ? props.editingRowKey : internalEditingRowKey.value;
|
|
6675
6875
|
});
|
|
6876
|
+
watch(() => props.data, (value) => {
|
|
6877
|
+
localData.value = value;
|
|
6878
|
+
});
|
|
6879
|
+
const draggedIndex = ref(null);
|
|
6880
|
+
const dragOverIndex = ref(null);
|
|
6881
|
+
const canReorder = computed(() => {
|
|
6882
|
+
return props.orderable && !searchQuery.value.trim() && !localSortField.value;
|
|
6883
|
+
});
|
|
6884
|
+
const startDrag = (index, event) => {
|
|
6885
|
+
if (!canReorder.value) {
|
|
6886
|
+
event.preventDefault();
|
|
6887
|
+
return;
|
|
6888
|
+
}
|
|
6889
|
+
draggedIndex.value = index;
|
|
6890
|
+
event.dataTransfer.effectAllowed = "move";
|
|
6891
|
+
event.dataTransfer.setData("text/plain", String(index));
|
|
6892
|
+
};
|
|
6893
|
+
const endDrag = () => {
|
|
6894
|
+
draggedIndex.value = null;
|
|
6895
|
+
dragOverIndex.value = null;
|
|
6896
|
+
};
|
|
6897
|
+
const dropRow = (toIndex, event) => {
|
|
6898
|
+
event.preventDefault();
|
|
6899
|
+
if (!canReorder.value || draggedIndex.value === null || draggedIndex.value === toIndex) {
|
|
6900
|
+
endDrag();
|
|
6901
|
+
return;
|
|
6902
|
+
}
|
|
6903
|
+
const result = reorderRows({
|
|
6904
|
+
data: localData.value,
|
|
6905
|
+
fromIndex: draggedIndex.value,
|
|
6906
|
+
toIndex,
|
|
6907
|
+
orderField: props.orderField,
|
|
6908
|
+
mutateRows: props.mutateRows
|
|
6909
|
+
});
|
|
6910
|
+
if (props.mutateRows) {
|
|
6911
|
+
props.data.splice(0, props.data.length, ...result.data);
|
|
6912
|
+
localData.value = props.data;
|
|
6913
|
+
} else localData.value = result.data;
|
|
6914
|
+
emit("reorder", {
|
|
6915
|
+
...result,
|
|
6916
|
+
rowKey: getRowKey(result.item, toIndex, props.rowKey)
|
|
6917
|
+
});
|
|
6918
|
+
endDrag();
|
|
6919
|
+
};
|
|
6676
6920
|
watch(() => props.sortField, (value) => {
|
|
6677
6921
|
localSortField.value = value;
|
|
6678
6922
|
});
|
|
@@ -6688,21 +6932,21 @@ var _sfc_main = {
|
|
|
6688
6932
|
editingDraft.value = {};
|
|
6689
6933
|
return;
|
|
6690
6934
|
}
|
|
6691
|
-
const activeItem = props.data.find((item, index) => getRowKey(item, index) === nextKey);
|
|
6935
|
+
const activeItem = props.data.find((item, index) => getRowKey$1(item, index) === nextKey);
|
|
6692
6936
|
editingDraft.value = activeItem ? cloneValue(activeItem) : {};
|
|
6693
6937
|
});
|
|
6694
6938
|
watch(() => props.data, () => {
|
|
6695
6939
|
if (resolvedEditingRowKey.value === null || resolvedEditingRowKey.value === void 0) return;
|
|
6696
|
-
if (!props.data.find((item, index) => getRowKey(item, index) === resolvedEditingRowKey.value)) resetEditState();
|
|
6940
|
+
if (!props.data.find((item, index) => getRowKey$1(item, index) === resolvedEditingRowKey.value)) resetEditState();
|
|
6697
6941
|
}, { deep: true });
|
|
6698
6942
|
const sortedData = computed(() => {
|
|
6699
|
-
let filteredData =
|
|
6943
|
+
let filteredData = localData.value;
|
|
6700
6944
|
if (props.searchMode === "client" && props.search && searchQuery.value.trim()) {
|
|
6701
6945
|
const query = searchQuery.value.toLowerCase().trim();
|
|
6702
|
-
filteredData =
|
|
6946
|
+
filteredData = localData.value.filter((item) => {
|
|
6703
6947
|
return props.columns.some((column) => {
|
|
6704
6948
|
if (!column.searchable) return false;
|
|
6705
|
-
const value = getNestedValue(item, column.key);
|
|
6949
|
+
const value = getNestedValue$1(item, column.key);
|
|
6706
6950
|
if (value === null || value === void 0 || value === "") return false;
|
|
6707
6951
|
return String(value).toLowerCase().includes(query);
|
|
6708
6952
|
});
|
|
@@ -6710,8 +6954,8 @@ var _sfc_main = {
|
|
|
6710
6954
|
}
|
|
6711
6955
|
if (!localSortField.value) return filteredData;
|
|
6712
6956
|
return [...filteredData].sort((a, b) => {
|
|
6713
|
-
const aValue = getNestedValue(a, localSortField.value);
|
|
6714
|
-
const bValue = getNestedValue(b, localSortField.value);
|
|
6957
|
+
const aValue = getNestedValue$1(a, localSortField.value);
|
|
6958
|
+
const bValue = getNestedValue$1(b, localSortField.value);
|
|
6715
6959
|
if (aValue === null || aValue === void 0 || aValue === "") return 1;
|
|
6716
6960
|
if (bValue === null || bValue === void 0 || bValue === "") return -1;
|
|
6717
6961
|
let comparison = 0;
|
|
@@ -6753,28 +6997,20 @@ var _sfc_main = {
|
|
|
6753
6997
|
if (!Number.isFinite(maxLength) || maxLength <= 0 || stringValue.length <= maxLength) return stringValue;
|
|
6754
6998
|
return `${stringValue.slice(0, maxLength)}...`;
|
|
6755
6999
|
};
|
|
6756
|
-
const getNestedValue = (obj, path) => {
|
|
7000
|
+
const getNestedValue$1 = (obj, path) => {
|
|
6757
7001
|
if (!path || typeof path !== "string") return obj;
|
|
6758
|
-
return
|
|
7002
|
+
return getNestedValue(obj, path);
|
|
6759
7003
|
};
|
|
6760
|
-
const setNestedValue = (obj, path, value) => {
|
|
7004
|
+
const setNestedValue$1 = (obj, path, value) => {
|
|
6761
7005
|
if (!path || typeof path !== "string" || obj == null) return;
|
|
6762
|
-
|
|
6763
|
-
const lastKey = keys.pop();
|
|
6764
|
-
let current = obj;
|
|
6765
|
-
for (const key of keys) {
|
|
6766
|
-
if (current[key] === void 0 || current[key] === null || typeof current[key] !== "object") current[key] = {};
|
|
6767
|
-
current = current[key];
|
|
6768
|
-
}
|
|
6769
|
-
if (lastKey !== void 0) current[lastKey] = value;
|
|
7006
|
+
setNestedValue(obj, path, value);
|
|
6770
7007
|
};
|
|
6771
7008
|
const getDataIndex = (item) => {
|
|
6772
|
-
if (item?.id) return
|
|
6773
|
-
return
|
|
7009
|
+
if (item?.id) return localData.value.findIndex((row) => row?.id === item.id);
|
|
7010
|
+
return localData.value.findIndex((row) => row === item);
|
|
6774
7011
|
};
|
|
6775
|
-
const getRowKey = (item, index) => {
|
|
6776
|
-
|
|
6777
|
-
return getNestedValue(item, props.rowKey) ?? `row-${index}`;
|
|
7012
|
+
const getRowKey$1 = (item, index) => {
|
|
7013
|
+
return getRowKey(item, index, props.rowKey);
|
|
6778
7014
|
};
|
|
6779
7015
|
const getEditSlotName = (column) => `${column.slot}-edit`;
|
|
6780
7016
|
const isDeleted = (item) => props.isDeletedFn(item);
|
|
@@ -6783,7 +7019,7 @@ var _sfc_main = {
|
|
|
6783
7019
|
emit("update:editingRowKey", value);
|
|
6784
7020
|
};
|
|
6785
7021
|
const isEditingRow = (item, index) => {
|
|
6786
|
-
return props.rowEditing && resolvedEditingRowKey.value !== null && resolvedEditingRowKey.value === getRowKey(item, index);
|
|
7022
|
+
return props.rowEditing && resolvedEditingRowKey.value !== null && resolvedEditingRowKey.value === getRowKey$1(item, index);
|
|
6787
7023
|
};
|
|
6788
7024
|
const isRowEditDisabled = (item, index) => {
|
|
6789
7025
|
if (!props.rowEditing) return true;
|
|
@@ -6795,7 +7031,7 @@ var _sfc_main = {
|
|
|
6795
7031
|
};
|
|
6796
7032
|
const startEdit = (item, index) => {
|
|
6797
7033
|
if (isRowEditDisabled(item, index)) return;
|
|
6798
|
-
const rowKey = getRowKey(item, index);
|
|
7034
|
+
const rowKey = getRowKey$1(item, index);
|
|
6799
7035
|
setEditingRowKey(rowKey);
|
|
6800
7036
|
emit("edit-start", {
|
|
6801
7037
|
item,
|
|
@@ -6807,13 +7043,13 @@ var _sfc_main = {
|
|
|
6807
7043
|
emit("edit-cancel", {
|
|
6808
7044
|
item,
|
|
6809
7045
|
index: getDataIndex(item),
|
|
6810
|
-
rowKey: getRowKey(item, index)
|
|
7046
|
+
rowKey: getRowKey$1(item, index)
|
|
6811
7047
|
});
|
|
6812
7048
|
resetEditState();
|
|
6813
7049
|
};
|
|
6814
7050
|
const updateDraft = (field, value, item, eventName = void 0) => {
|
|
6815
|
-
setNestedValue(editingDraft.value, field, value);
|
|
6816
|
-
if (props.mutateRows) setNestedValue(item, field, cloneValue(value));
|
|
7051
|
+
setNestedValue$1(editingDraft.value, field, value);
|
|
7052
|
+
if (props.mutateRows) setNestedValue$1(item, field, cloneValue(value));
|
|
6817
7053
|
emit("update", {
|
|
6818
7054
|
item,
|
|
6819
7055
|
draft: editingDraft.value,
|
|
@@ -6827,7 +7063,7 @@ var _sfc_main = {
|
|
|
6827
7063
|
const getCellContent = (item, column) => {
|
|
6828
7064
|
if (column.slot) return null;
|
|
6829
7065
|
if (column.render) return column.render(item);
|
|
6830
|
-
const value = getNestedValue(item, column.key);
|
|
7066
|
+
const value = getNestedValue$1(item, column.key);
|
|
6831
7067
|
if (value === null || value === void 0 || value === "") return "-";
|
|
6832
7068
|
return truncateText(value);
|
|
6833
7069
|
};
|
|
@@ -6852,8 +7088,8 @@ var _sfc_main = {
|
|
|
6852
7088
|
};
|
|
6853
7089
|
const getInputPlaceholder = (column) => column.placeholder || column.label || "";
|
|
6854
7090
|
const getInputValue = (item, column, index) => {
|
|
6855
|
-
if (isEditingRow(item, index)) return getNestedValue(editingDraft.value, column.key) ?? "";
|
|
6856
|
-
return getNestedValue(item, column.key) ?? "";
|
|
7091
|
+
if (isEditingRow(item, index)) return getNestedValue$1(editingDraft.value, column.key) ?? "";
|
|
7092
|
+
return getNestedValue$1(item, column.key) ?? "";
|
|
6857
7093
|
};
|
|
6858
7094
|
const getColumnError = (item, column) => {
|
|
6859
7095
|
const arrayIndex = getDataIndex(item);
|
|
@@ -6866,7 +7102,7 @@ var _sfc_main = {
|
|
|
6866
7102
|
index,
|
|
6867
7103
|
isEditing: isEditingRow(item, index),
|
|
6868
7104
|
draft: editingDraft.value,
|
|
6869
|
-
rowKey: getRowKey(item, index),
|
|
7105
|
+
rowKey: getRowKey$1(item, index),
|
|
6870
7106
|
updateDraft: (field, value) => updateDraft(field, value, item),
|
|
6871
7107
|
startEdit: () => startEdit(item, index),
|
|
6872
7108
|
cancelEdit: () => cancelEdit(item, index)
|
|
@@ -6897,128 +7133,146 @@ var _sfc_main = {
|
|
|
6897
7133
|
}, 8, ["model-value", "placeholder"])], 2)) : createCommentVNode("", true), hasData.value ? (openBlock(), createElementBlock("div", {
|
|
6898
7134
|
key: 1,
|
|
6899
7135
|
class: normalizeClass(["overflow-x-auto", __props.isCard ? __props.search ? "" : "rounded-t-xl" : ""])
|
|
6900
|
-
}, [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) }, [
|
|
6901
|
-
|
|
6902
|
-
|
|
6903
|
-
|
|
6904
|
-
|
|
6905
|
-
|
|
6906
|
-
|
|
6907
|
-
|
|
6908
|
-
|
|
6909
|
-
|
|
6910
|
-
|
|
6911
|
-
|
|
6912
|
-
|
|
6913
|
-
|
|
6914
|
-
|
|
6915
|
-
|
|
6916
|
-
|
|
6917
|
-
|
|
6918
|
-
|
|
6919
|
-
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6925
|
-
}), 128)), hasActionsColumn.value ? (openBlock(), createElementBlock("th", {
|
|
6926
|
-
key: 0,
|
|
6927
|
-
class: normalizeClass(actionHeaderClass.value)
|
|
6928
|
-
}, 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) => {
|
|
6929
|
-
return openBlock(), createElementBlock(Fragment, { key: getRowKey(item, index) }, [createElementVNode("tr", { class: normalizeClass(__props.rowClasses(item, index)) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
6930
|
-
return openBlock(), createElementBlock("td", {
|
|
6931
|
-
key: column.key,
|
|
6932
|
-
class: normalizeClass(getColumnClass(column, item, index)),
|
|
7136
|
+
}, [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) }, [
|
|
7137
|
+
__props.orderable ? (openBlock(), createElementBlock("th", _hoisted_1$2, "#")) : createCommentVNode("", true),
|
|
7138
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
7139
|
+
return openBlock(), createElementBlock(Fragment, { key: column.key }, [column.sortable ? (openBlock(), createBlock(_sfc_main$3, {
|
|
7140
|
+
key: 0,
|
|
7141
|
+
field: column.key,
|
|
7142
|
+
"current-sort-field": localSortField.value,
|
|
7143
|
+
"current-direction": localSortDirection.value,
|
|
7144
|
+
"header-class": getHeaderClass(column),
|
|
7145
|
+
"header-style": getColumnWidthStyle(column),
|
|
7146
|
+
"content-class": getContentClass(column),
|
|
7147
|
+
onSort: sortBy
|
|
7148
|
+
}, {
|
|
7149
|
+
default: withCtx(() => [createTextVNode(toDisplayString(column.label), 1)]),
|
|
7150
|
+
_: 2
|
|
7151
|
+
}, 1032, [
|
|
7152
|
+
"field",
|
|
7153
|
+
"current-sort-field",
|
|
7154
|
+
"current-direction",
|
|
7155
|
+
"header-class",
|
|
7156
|
+
"header-style",
|
|
7157
|
+
"content-class"
|
|
7158
|
+
])) : (openBlock(), createElementBlock("th", {
|
|
7159
|
+
key: 1,
|
|
7160
|
+
class: normalizeClass(getHeaderClass(column)),
|
|
6933
7161
|
style: normalizeStyle(getColumnWidthStyle(column))
|
|
6934
|
-
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) },
|
|
7162
|
+
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) }, toDisplayString(column.label), 3)], 6))], 64);
|
|
7163
|
+
}), 128)),
|
|
7164
|
+
hasActionsColumn.value ? (openBlock(), createElementBlock("th", {
|
|
7165
|
+
key: 1,
|
|
7166
|
+
class: normalizeClass(actionHeaderClass.value)
|
|
7167
|
+
}, toDisplayString(__props.actionsLabel), 3)) : createCommentVNode("", true)
|
|
7168
|
+
], 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) => {
|
|
7169
|
+
return openBlock(), createElementBlock(Fragment, { key: getRowKey$1(item, index) }, [createElementVNode("tr", {
|
|
7170
|
+
class: normalizeClass(joinClasses(__props.rowClasses(item, index), dragOverIndex.value === index ? "ring-2 ring-inset ring-neutral-400 dark:ring-neutral-500" : "")),
|
|
7171
|
+
onDragover: withModifiers(($event) => canReorder.value && (dragOverIndex.value = index), ["prevent"]),
|
|
7172
|
+
onDrop: ($event) => dropRow(index, $event)
|
|
7173
|
+
}, [
|
|
7174
|
+
__props.orderable ? (openBlock(), createElementBlock("td", _hoisted_3$1, [createElementVNode("span", _hoisted_4, [createElementVNode("span", {
|
|
7175
|
+
draggable: canReorder.value,
|
|
7176
|
+
class: "cursor-grab touch-none active:cursor-grabbing",
|
|
7177
|
+
"aria-label": `Drag row ${index + 1}`,
|
|
7178
|
+
onDragstart: ($event) => startDrag(index, $event),
|
|
7179
|
+
onDragend: endDrag
|
|
7180
|
+
}, [createVNode(unref(GripVertical), { class: "size-4" })], 40, _hoisted_5), createElementVNode("span", null, toDisplayString(index + 1), 1)])])) : createCommentVNode("", true),
|
|
7181
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
7182
|
+
return openBlock(), createElementBlock("td", {
|
|
7183
|
+
key: column.key,
|
|
7184
|
+
class: normalizeClass(getColumnClass(column, item, index)),
|
|
7185
|
+
style: normalizeStyle(getColumnWidthStyle(column))
|
|
7186
|
+
}, [createElementVNode("div", { class: normalizeClass(getContentClass(column)) }, [isEditingRow(item, index) && column.slot && unref(slots)[getEditSlotName(column)] ? renderSlot(_ctx.$slots, getEditSlotName(column), mergeProps({
|
|
7187
|
+
key: 0,
|
|
7188
|
+
ref_for: true
|
|
7189
|
+
}, getSlotBindings(item, column, index))) : isEditingRow(item, index) && column.input ? (openBlock(), createBlock(_sfc_main$16, {
|
|
7190
|
+
key: 1,
|
|
7191
|
+
type: getInputType(column),
|
|
7192
|
+
class: normalizeClass(getInputClass(column)),
|
|
7193
|
+
placeholder: getInputPlaceholder(column),
|
|
7194
|
+
"model-value": getInputValue(item, column, index),
|
|
7195
|
+
disabled: resolveColumnDisabled(column, item, index),
|
|
7196
|
+
maxlength: column.maxlength,
|
|
7197
|
+
"error-message": getColumnError(item, column),
|
|
7198
|
+
"helper-text": "",
|
|
7199
|
+
"onUpdate:modelValue": (value) => updateDraft(column.key, value, item),
|
|
7200
|
+
onBlur: (event) => updateDraft(column.key, event?.target?.value ?? getInputValue(item, column, index), item, "blur")
|
|
7201
|
+
}, null, 8, [
|
|
7202
|
+
"type",
|
|
7203
|
+
"class",
|
|
7204
|
+
"placeholder",
|
|
7205
|
+
"model-value",
|
|
7206
|
+
"disabled",
|
|
7207
|
+
"maxlength",
|
|
7208
|
+
"error-message",
|
|
7209
|
+
"onUpdate:modelValue",
|
|
7210
|
+
"onBlur"
|
|
7211
|
+
])) : column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div", _hoisted_6, [createElementVNode("div", {
|
|
7212
|
+
class: "text-sm font-medium truncate",
|
|
7213
|
+
title: getCellContent(item, column)
|
|
7214
|
+
}, toDisplayString(getCellContent(item, column)), 9, _hoisted_7), isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)])) : column.slot ? renderSlot(_ctx.$slots, column.slot, mergeProps({
|
|
7215
|
+
key: 3,
|
|
7216
|
+
ref_for: true
|
|
7217
|
+
}, getSlotBindings(item, column, index))) : column.render ? (openBlock(), createElementBlock("div", {
|
|
7218
|
+
key: 4,
|
|
7219
|
+
innerHTML: column.render(item)
|
|
7220
|
+
}, null, 8, _hoisted_9)) : (openBlock(), createElementBlock("div", _hoisted_10, toDisplayString(getCellContent(item, column)), 1))], 2)], 6);
|
|
7221
|
+
}), 128)),
|
|
7222
|
+
hasActionsColumn.value ? (openBlock(), createElementBlock("td", {
|
|
7223
|
+
key: 1,
|
|
7224
|
+
class: normalizeClass(actionCellClass.value)
|
|
7225
|
+
}, [createElementVNode("div", _hoisted_11, [hasActionsSlot.value ? renderSlot(_ctx.$slots, "actions", mergeProps({
|
|
6935
7226
|
key: 0,
|
|
6936
7227
|
ref_for: true
|
|
6937
|
-
}, getSlotBindings(item,
|
|
7228
|
+
}, getSlotBindings(item, null, index))) : createCommentVNode("", true), __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$32, {
|
|
6938
7229
|
key: 1,
|
|
6939
|
-
type:
|
|
6940
|
-
|
|
6941
|
-
|
|
6942
|
-
|
|
6943
|
-
|
|
6944
|
-
|
|
6945
|
-
|
|
6946
|
-
"
|
|
6947
|
-
|
|
6948
|
-
|
|
6949
|
-
|
|
6950
|
-
"
|
|
6951
|
-
"
|
|
6952
|
-
|
|
6953
|
-
|
|
7230
|
+
type: "button",
|
|
7231
|
+
variant: "outline",
|
|
7232
|
+
size: "icon",
|
|
7233
|
+
title: __props.cancelLabel,
|
|
7234
|
+
"aria-label": __props.cancelLabel,
|
|
7235
|
+
onClick: ($event) => cancelEdit(item, index)
|
|
7236
|
+
}, {
|
|
7237
|
+
default: withCtx(() => [createVNode(unref(CheckIcon), { class: "size-4" })]),
|
|
7238
|
+
_: 1
|
|
7239
|
+
}, 8, [
|
|
7240
|
+
"title",
|
|
7241
|
+
"aria-label",
|
|
7242
|
+
"onClick"
|
|
7243
|
+
])) : __props.rowEditing ? (openBlock(), createBlock(_sfc_main$32, {
|
|
7244
|
+
key: 2,
|
|
7245
|
+
type: "button",
|
|
7246
|
+
variant: "secondary",
|
|
7247
|
+
size: "icon",
|
|
7248
|
+
disabled: isRowEditDisabled(item, index),
|
|
7249
|
+
title: __props.editLabel,
|
|
7250
|
+
"aria-label": __props.editLabel,
|
|
7251
|
+
onClick: ($event) => startEdit(item, index)
|
|
7252
|
+
}, {
|
|
7253
|
+
default: withCtx(() => [createVNode(unref(PencilSquareIcon), { class: "size-4" })]),
|
|
7254
|
+
_: 1
|
|
7255
|
+
}, 8, [
|
|
6954
7256
|
"disabled",
|
|
6955
|
-
"
|
|
6956
|
-
"
|
|
6957
|
-
"
|
|
6958
|
-
|
|
6959
|
-
|
|
6960
|
-
class: "text-sm font-medium truncate",
|
|
6961
|
-
title: getCellContent(item, column)
|
|
6962
|
-
}, toDisplayString(getCellContent(item, column)), 9, _hoisted_2$1), isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_3$1, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)])) : column.slot ? renderSlot(_ctx.$slots, column.slot, mergeProps({
|
|
6963
|
-
key: 3,
|
|
6964
|
-
ref_for: true
|
|
6965
|
-
}, getSlotBindings(item, column, index))) : column.render ? (openBlock(), createElementBlock("div", {
|
|
6966
|
-
key: 4,
|
|
6967
|
-
innerHTML: column.render(item)
|
|
6968
|
-
}, null, 8, _hoisted_4)) : (openBlock(), createElementBlock("div", _hoisted_5, toDisplayString(getCellContent(item, column)), 1))], 2)], 6);
|
|
6969
|
-
}), 128)), hasActionsColumn.value ? (openBlock(), createElementBlock("td", {
|
|
6970
|
-
key: 0,
|
|
6971
|
-
class: normalizeClass(actionCellClass.value)
|
|
6972
|
-
}, [createElementVNode("div", _hoisted_6, [hasActionsSlot.value ? renderSlot(_ctx.$slots, "actions", mergeProps({
|
|
6973
|
-
key: 0,
|
|
6974
|
-
ref_for: true
|
|
6975
|
-
}, getSlotBindings(item, null, index))) : createCommentVNode("", true), __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$32, {
|
|
6976
|
-
key: 1,
|
|
6977
|
-
type: "button",
|
|
6978
|
-
variant: "outline",
|
|
6979
|
-
size: "icon",
|
|
6980
|
-
title: __props.cancelLabel,
|
|
6981
|
-
"aria-label": __props.cancelLabel,
|
|
6982
|
-
onClick: ($event) => cancelEdit(item, index)
|
|
6983
|
-
}, {
|
|
6984
|
-
default: withCtx(() => [createVNode(unref(CheckIcon), { class: "size-4" })]),
|
|
6985
|
-
_: 1
|
|
6986
|
-
}, 8, [
|
|
6987
|
-
"title",
|
|
6988
|
-
"aria-label",
|
|
6989
|
-
"onClick"
|
|
6990
|
-
])) : __props.rowEditing ? (openBlock(), createBlock(_sfc_main$32, {
|
|
6991
|
-
key: 2,
|
|
6992
|
-
type: "button",
|
|
6993
|
-
variant: "secondary",
|
|
6994
|
-
size: "icon",
|
|
6995
|
-
disabled: isRowEditDisabled(item, index),
|
|
6996
|
-
title: __props.editLabel,
|
|
6997
|
-
"aria-label": __props.editLabel,
|
|
6998
|
-
onClick: ($event) => startEdit(item, index)
|
|
6999
|
-
}, {
|
|
7000
|
-
default: withCtx(() => [createVNode(unref(PencilSquareIcon), { class: "size-4" })]),
|
|
7001
|
-
_: 1
|
|
7002
|
-
}, 8, [
|
|
7003
|
-
"disabled",
|
|
7004
|
-
"title",
|
|
7005
|
-
"aria-label",
|
|
7006
|
-
"onClick"
|
|
7007
|
-
])) : createCommentVNode("", true)])], 2)) : createCommentVNode("", true)], 2), hasExpandedRow.value && __props.expandedRowKey === getRowKey(item, index) ? (openBlock(), createElementBlock("tr", {
|
|
7257
|
+
"title",
|
|
7258
|
+
"aria-label",
|
|
7259
|
+
"onClick"
|
|
7260
|
+
])) : createCommentVNode("", true)])], 2)) : createCommentVNode("", true)
|
|
7261
|
+
], 42, _hoisted_2$1), hasExpandedRow.value && __props.expandedRowKey === getRowKey$1(item, index) ? (openBlock(), createElementBlock("tr", {
|
|
7008
7262
|
key: 0,
|
|
7009
7263
|
class: normalizeClass(__props.expandedRowClass)
|
|
7010
7264
|
}, [createElementVNode("td", {
|
|
7011
|
-
colspan: __props.columns.length + (hasActionsColumn.value ? 1 : 0),
|
|
7265
|
+
colspan: __props.columns.length + (hasActionsColumn.value ? 1 : 0) + (__props.orderable ? 1 : 0),
|
|
7012
7266
|
class: normalizeClass(__props.expandedCellClass)
|
|
7013
7267
|
}, [renderSlot(_ctx.$slots, "expanded-row", {
|
|
7014
7268
|
item,
|
|
7015
7269
|
index,
|
|
7016
|
-
rowKey: getRowKey(item, index)
|
|
7017
|
-
})], 10,
|
|
7018
|
-
}), 128))], 2)], 2)], 2)) : (openBlock(), createElementBlock("div",
|
|
7019
|
-
createElementVNode("div",
|
|
7020
|
-
createElementVNode("h3",
|
|
7021
|
-
createElementVNode("p",
|
|
7270
|
+
rowKey: getRowKey$1(item, index)
|
|
7271
|
+
})], 10, _hoisted_12)], 2)) : createCommentVNode("", true)], 64);
|
|
7272
|
+
}), 128))], 2)], 2)], 2)) : (openBlock(), createElementBlock("div", _hoisted_13, [
|
|
7273
|
+
createElementVNode("div", _hoisted_14, [(openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))]),
|
|
7274
|
+
createElementVNode("h3", _hoisted_15, toDisplayString(__props.emptyState.title), 1),
|
|
7275
|
+
createElementVNode("p", _hoisted_16, toDisplayString(__props.emptyState.description), 1),
|
|
7022
7276
|
__props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$6, {
|
|
7023
7277
|
key: 0,
|
|
7024
7278
|
href: __props.emptyState.actionUrl,
|
|
@@ -7218,4 +7472,4 @@ var plugin_default = { install(app) {
|
|
|
7218
7472
|
//#endregion
|
|
7219
7473
|
export { _sfc_main$34 as $, _sfc_main$11 as A, _sfc_main$21 as B, useSidebar as C, _sfc_main$8 as D, _sfc_main$7 as E, _sfc_main$16 as F, _sfc_main$26 as G, _sfc_main$23 as H, ColorPicker_default as I, _sfc_main$29 as J, _sfc_main$27 as K, _sfc_main$18 as L, _sfc_main$13 as M, _sfc_main$14 as N, _sfc_main$9 as O, _sfc_main$15 as P, _sfc_main$33 as Q, _sfc_main$19 as R, Sidebar_default as S, _sfc_main$6 as T, DateRangeInput_default as U, _sfc_main$22 as V, DateInput_default as W, _sfc_main$31 as X, _sfc_main$30 as Y, _sfc_main$32 as Z, SidebarGroupLabel_default as _, _sfc_main$1 as a, _sfc_main$40 as at, SidebarFooter_default as b, _sfc_main$4 as c, SidebarProvider_default as d, SectionTitle_default as et, SidebarMenuItem_default as f, SidebarHeader_default as g, SidebarInset_default as h, _sfc_main as i, _sfc_main$39 as it, _sfc_main$12 as j, _sfc_main$10 as k, SlidePanel_default as l, SidebarMenu_default as m, ToastContainer_default as n, _sfc_main$37 as nt, _sfc_main$2 as o, __commonJSMin as ot, SidebarMenuButton_default as p, _sfc_main$28 as q, Toast_default as r, _sfc_main$38 as rt, _sfc_main$3 as s, plugin_default as t, _sfc_main$36 as tt, SidebarTrigger_default as u, SidebarGroupContent_default as v, _sfc_main$5 as w, SidebarContent_default as x, SidebarGroup_default as y, _sfc_main$20 as z };
|
|
7220
7474
|
|
|
7221
|
-
//# sourceMappingURL=plugin-
|
|
7475
|
+
//# sourceMappingURL=plugin-Bn-FKPXN.js.map
|