vlite3 1.1.2 → 1.1.5
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/README.md +5 -0
- package/components/AttachmentsList/AttachmentsList.vue.d.ts +1 -1
- package/components/AttachmentsList/AttachmentsList.vue.js +237 -163
- package/components/Avatar.vue.js +1 -1
- package/components/AvatarUploader/AvatarUploader.vue.js +40 -37
- package/components/Button.vue.js +30 -28
- package/components/Carousel/Carousel.vue.d.ts +2 -2
- package/components/CategoryManager/CategoryManager.vue.d.ts +10 -2
- package/components/CategoryManager/CategoryManager.vue.js +138 -119
- package/components/CategoryManager/CategoryNode.vue.d.ts +2 -0
- package/components/CategoryManager/CategoryNode.vue.js +93 -88
- package/components/Chart/BarChart.vue.d.ts +48 -0
- package/components/Chart/CircleChart.vue.d.ts +47 -0
- package/components/Chart/LineChart.vue.d.ts +55 -0
- package/components/Chart/PieChart.vue.d.ts +49 -0
- package/components/Chart/index.d.ts +5 -0
- package/components/Chart/types.d.ts +135 -0
- package/components/Chart/utils.d.ts +40 -0
- package/components/Chat/ChatBubble.vue.js +22 -22
- package/components/CheckBox.vue.js +29 -28
- package/components/ColorPicker/ColorIro.vue3.js +2 -2
- package/components/ColorPicker/ColorPicker.vue.js +2 -2
- package/components/Comment/CommentEditor.vue.d.ts +41 -0
- package/components/Comment/CommentEditor.vue.js +221 -0
- package/components/Comment/CommentEditor.vue2.js +4 -0
- package/components/Comment/CommentItem.vue.d.ts +70 -0
- package/components/Comment/CommentItem.vue.js +7 -0
- package/components/Comment/CommentItem.vue2.js +322 -0
- package/components/Comment/CommentThread.vue.d.ts +64 -0
- package/components/Comment/CommentThread.vue.js +185 -0
- package/components/Comment/CommentThread.vue2.js +4 -0
- package/components/Comment/index.d.ts +4 -0
- package/components/Comment/types.d.ts +34 -0
- package/components/ConfirmationModal.vue.js +30 -28
- package/components/CopyButton.vue.d.ts +50 -0
- package/components/CopyButton.vue.js +69 -0
- package/components/CopyButton.vue2.js +4 -0
- package/components/DataTable/DataTable.vue.d.ts +2 -4
- package/components/DataTable/DataTable.vue.js +184 -235
- package/components/DataTable/DataTableHeader.vue.d.ts +2 -0
- package/components/DataTable/DataTableHeader.vue.js +24 -23
- package/components/DataTable/DataTableRow.vue.d.ts +2 -0
- package/components/DataTable/DataTableRow.vue.js +32 -31
- package/components/DataTable/types.d.ts +2 -9
- package/components/DatePicker.vue.js +41 -35
- package/components/DateRangePicker.vue.js +18 -17
- package/components/Dropdown/Dropdown.vue.d.ts +5 -0
- package/components/Dropdown/Dropdown.vue.js +141 -137
- package/components/Dropdown/DropdownBooleanItem.vue.js +16 -15
- package/components/Dropdown/DropdownItem.vue.js +21 -20
- package/components/Dropdown/DropdownMenu.vue.js +1 -1
- package/components/Dropdown/DropdownMenu.vue2.js +13 -12
- package/components/Dropdown/DropdownTrigger.vue.d.ts +4 -0
- package/components/Dropdown/DropdownTrigger.vue.js +12 -7
- package/components/Dropdown/composables/useDropdownHydration.d.ts +2 -0
- package/components/Dropdown/composables/useDropdownSelection.d.ts +1 -0
- package/components/Dropdown/composables/useDropdownSelection.js +46 -31
- package/components/Empty/Empty.vue.js +7 -5
- package/components/Empty/index.d.ts +1 -1
- package/components/Empty/variants/Variant12.vue.d.ts +22 -0
- package/components/Empty/variants/Variant12.vue.js +35 -0
- package/components/Empty/variants/Variant12.vue2.js +4 -0
- package/components/FilePicker/FilePicker.vue.js +93 -90
- package/components/Footer/Footer.vue.d.ts +3 -0
- package/components/Footer/Variant1.vue.d.ts +20 -0
- package/components/Footer/Variant2.vue.d.ts +20 -0
- package/components/Footer/Variant3.vue.d.ts +12 -0
- package/components/Footer/index.d.ts +2 -0
- package/components/Footer/types.d.ts +73 -0
- package/components/Form/CustomFields.vue.d.ts +2 -0
- package/components/Form/CustomFields.vue.js +1 -1
- package/components/Form/CustomFields.vue2.js +125 -122
- package/components/Form/Form.vue.js +2 -2
- package/components/Form/Form.vue2.js +68 -64
- package/components/Form/FormField.vue.js +205 -149
- package/components/Form/FormFields.vue.js +2 -2
- package/components/Form/FormFields.vue2.js +28 -27
- package/components/Form/types.d.ts +2 -2
- package/components/Form/utils/form.utils.d.ts +3 -3
- package/components/Form/utils/form.utils.js +37 -37
- package/components/Input.vue.js +64 -62
- package/components/Invoice/Invoice.vue.js +9 -7
- package/components/Invoice/InvoiceTotals.vue.d.ts +14 -0
- package/components/Invoice/InvoiceTotals.vue.js +86 -0
- package/components/Invoice/InvoiceTotals.vue2.js +4 -0
- package/components/Invoice/InvoiceVariant1.vue.d.ts +3 -1
- package/components/Invoice/InvoiceVariant1.vue.js +194 -207
- package/components/Invoice/InvoiceVariant2.vue.d.ts +3 -1
- package/components/Invoice/InvoiceVariant2.vue.js +109 -118
- package/components/Invoice/InvoiceVariant3.vue.d.ts +3 -1
- package/components/Invoice/InvoiceVariant3.vue.js +157 -167
- package/components/Invoice/InvoiceVariant4.vue.d.ts +3 -1
- package/components/Invoice/InvoiceVariant4.vue.js +192 -202
- package/components/Invoice/index.d.ts +1 -0
- package/components/Invoice/types.d.ts +22 -0
- package/components/Masonry/Masonry.vue.d.ts +1 -1
- package/components/Modal.vue.js +1 -1
- package/components/Modal.vue2.js +60 -54
- package/components/MultiSelect/MultiSelect.vue.d.ts +2 -0
- package/components/MultiSelect/MultiSelect.vue.js +92 -90
- package/components/MultiSelect/composables/useMultiSelectHydration.d.ts +2 -0
- package/components/NumberInput.vue.js +2 -2
- package/components/NumberInput.vue2.js +127 -121
- package/components/PricingPlan/PricingPlan.vue.d.ts +1 -1
- package/components/RichTextEditor/RichTextLinkPopover.vue.d.ts +26 -0
- package/components/RichTextEditor/RichTextReader.vue.d.ts +7 -0
- package/components/RichTextEditor/RichTextToolbar.vue.d.ts +24 -0
- package/components/RichTextEditor/composables/useRichTextImageUpload.d.ts +14 -0
- package/components/RichTextEditor/composables/useRichTextLinks.d.ts +32 -0
- package/components/RichTextEditor/index.d.ts +2 -0
- package/components/Screen/Screen.vue.js +45 -46
- package/components/Screen/ScreenFilter.vue.js +1 -1
- package/components/SidePanel.vue.js +2 -2
- package/components/SidePanel.vue2.js +58 -52
- package/components/SidebarMenu/SidebarMenu.vue.d.ts +1 -1
- package/components/SidebarMenu/SidebarMenu.vue.js +192 -91
- package/components/SidebarMenu/SidebarMenu.vue3.js +5 -0
- package/components/SidebarMenu/SidebarMenuItem.vue.js +170 -157
- package/components/SidebarMenu/types.d.ts +12 -3
- package/components/{DataTable/DataTableToolbar.vue.d.ts → Splitter/Splitter.vue.d.ts} +18 -15
- package/components/Splitter/Splitter.vue.js +64 -0
- package/components/Splitter/Splitter.vue2.js +4 -0
- package/components/Splitter/index.d.ts +1 -0
- package/components/Stats/StatItem.vue.js +96 -91
- package/components/Stats/types.d.ts +1 -0
- package/components/StatusChip/status-map.js +34 -2
- package/components/Switch.vue.d.ts +6 -1
- package/components/Switch.vue.js +61 -24
- package/components/TagInput/TagInput.vue.d.ts +187 -0
- package/components/TagInput/TagInput.vue.js +113 -0
- package/components/TagInput/TagInput.vue2.js +4 -0
- package/components/TagInput/index.d.ts +1 -0
- package/components/Textarea.vue.js +19 -18
- package/components/ThumbnailSelector/ThumbnailSelector.vue.js +2 -2
- package/components/ThumbnailSelector/ThumbnailSelector.vue2.js +19 -16
- package/components/index.d.ts +4 -0
- package/core/config.d.ts +54 -0
- package/index.d.ts +4 -0
- package/index.js +300 -285
- package/package.json +1 -1
- package/style.css +657 -6
- package/types/button.d.ts +1 -1
- package/types/config.type.d.ts +2 -0
- package/types/styles.d.ts +1 -0
- package/utils/functions.js +9 -9
- package/components/DataTable/DataTableToolbar.vue.js +0 -60
- package/components/DataTable/DataTableToolbar.vue2.js +0 -4
- package/components/SidebarMenu/SidebarMenu.vue2.js +0 -4
- /package/components/ColorPicker/{ColorIro.vue2.js → ColorIro.vue.js} +0 -0
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { useRoute as
|
|
3
|
-
import { useBreakpoints as
|
|
4
|
-
import
|
|
1
|
+
import { defineComponent as Y, inject as Z, ref as y, computed as r, watch as I, reactive as ee, provide as te, openBlock as d, createElementBlock as m, normalizeClass as V, createVNode as D, TransitionGroup as le, withCtx as ne, createBlock as B, createCommentVNode as S, createElementVNode as R, toDisplayString as ae, Fragment as W, renderList as H } from "vue";
|
|
2
|
+
import { useRoute as re, useRouter as oe } from "vue-router";
|
|
3
|
+
import { useBreakpoints as ie, breakpointsTailwind as se } from "@vueuse/core";
|
|
4
|
+
import F from "./SidebarMenuItem.vue.js";
|
|
5
5
|
/* empty css */
|
|
6
|
-
|
|
6
|
+
import $ from "../Icon.vue.js";
|
|
7
|
+
const ue = {
|
|
8
|
+
key: 0,
|
|
9
|
+
class: "w-full sidebar-drilldown-container relative overflow-hidden"
|
|
10
|
+
}, ce = { class: "truncate font-semibold text-foreground" }, de = {
|
|
11
|
+
key: 1,
|
|
12
|
+
class: "h-px bg-border/60 mx-1 mb-1.5"
|
|
13
|
+
}, ge = /* @__PURE__ */ Y({
|
|
7
14
|
__name: "SidebarMenu",
|
|
8
15
|
props: {
|
|
9
16
|
items: { default: () => [] },
|
|
@@ -29,126 +36,220 @@ const U = /* @__PURE__ */ P({
|
|
|
29
36
|
showTooltip: { type: Boolean, default: !1 },
|
|
30
37
|
forceTreeView: { type: Boolean, default: !1 }
|
|
31
38
|
},
|
|
32
|
-
setup(
|
|
33
|
-
const
|
|
39
|
+
setup(v) {
|
|
40
|
+
const b = Z("navbar-context", null), l = v, p = re();
|
|
41
|
+
oe();
|
|
42
|
+
const j = ie(se), c = y([...l.defaultExpanded]), C = y(null), o = y([]), g = y("forward"), w = r(() => o.value.length > 0), M = r(() => o.value.length === 0 ? l.items : o.value[o.value.length - 1].items), q = r(() => o.value.length === 0 ? "" : o.value[o.value.length - 1].label), P = r(() => {
|
|
43
|
+
if (o.value.length !== 0)
|
|
44
|
+
return o.value[o.value.length - 1].icon;
|
|
45
|
+
}), A = (e) => {
|
|
46
|
+
e.children?.length && (g.value = "forward", o.value = [
|
|
47
|
+
...o.value,
|
|
48
|
+
{ items: e.children, label: e.label, icon: e.icon }
|
|
49
|
+
]);
|
|
50
|
+
}, z = () => {
|
|
51
|
+
o.value.length !== 0 && (g.value = "backward", o.value = o.value.slice(0, -1));
|
|
52
|
+
}, G = r(() => !l.mobileBreakpoint || l.mobileBreakpoint === "none" ? !0 : j.greaterOrEqual(l.mobileBreakpoint).value), x = r(() => G.value && l.orientation || "vertical"), T = r(() => l.forceTreeView ? !1 : !!b?.renderNestedTabs?.value), k = (e) => e.id || (typeof e.to == "string" ? e.to : null) || e.label, f = (e, n) => {
|
|
34
53
|
if (!e.to) return !1;
|
|
35
|
-
const
|
|
36
|
-
if (!
|
|
37
|
-
if (n ===
|
|
38
|
-
if (
|
|
39
|
-
const
|
|
40
|
-
return !
|
|
54
|
+
const t = typeof e.to == "string" ? e.to : e.to.path;
|
|
55
|
+
if (!t) return !1;
|
|
56
|
+
if (n === t) return !0;
|
|
57
|
+
if (t !== "/" && t.length > 1 && n.startsWith(t)) {
|
|
58
|
+
const a = n[t.length];
|
|
59
|
+
return !a || a === "/" || a === "?";
|
|
41
60
|
}
|
|
42
61
|
return !1;
|
|
43
|
-
},
|
|
44
|
-
for (const
|
|
45
|
-
const u =
|
|
46
|
-
if (
|
|
47
|
-
const
|
|
48
|
-
if (
|
|
49
|
-
return
|
|
62
|
+
}, N = (e, n, t = []) => {
|
|
63
|
+
for (const a of e) {
|
|
64
|
+
const u = k(a);
|
|
65
|
+
if (a.children?.length) {
|
|
66
|
+
const s = N(a.children, n, [...t, u]);
|
|
67
|
+
if (s !== null)
|
|
68
|
+
return c.value.includes(u) || c.value.push(u), s;
|
|
50
69
|
}
|
|
51
|
-
if (
|
|
52
|
-
return
|
|
53
|
-
|
|
70
|
+
if (f(a, n))
|
|
71
|
+
return t.forEach((s) => {
|
|
72
|
+
c.value.includes(s) || c.value.push(s);
|
|
54
73
|
}), u;
|
|
55
74
|
}
|
|
56
75
|
return null;
|
|
57
|
-
},
|
|
58
|
-
for (const
|
|
59
|
-
if (!
|
|
60
|
-
(
|
|
76
|
+
}, E = (e, n) => {
|
|
77
|
+
for (const t of l.items) {
|
|
78
|
+
if (!t.children?.length || !(f(t, e) || t.children.some(
|
|
79
|
+
(i) => f(i, e) || i.children?.some((h) => f(h, e))
|
|
61
80
|
))) continue;
|
|
62
|
-
const u =
|
|
63
|
-
label:
|
|
64
|
-
labelI18n:
|
|
65
|
-
value:
|
|
66
|
-
icon:
|
|
67
|
-
disabled:
|
|
68
|
-
to:
|
|
69
|
-
href:
|
|
81
|
+
const u = t.children.map((i) => ({
|
|
82
|
+
label: i.label,
|
|
83
|
+
labelI18n: i.labelI18n,
|
|
84
|
+
value: k(i),
|
|
85
|
+
icon: i.icon,
|
|
86
|
+
disabled: i.disabled,
|
|
87
|
+
to: i.to,
|
|
88
|
+
href: i.href
|
|
70
89
|
}));
|
|
71
|
-
let
|
|
90
|
+
let s = u[0]?.value ?? "";
|
|
72
91
|
if (n) {
|
|
73
|
-
const
|
|
74
|
-
if (
|
|
75
|
-
|
|
92
|
+
const i = u.find((h) => h.value === n);
|
|
93
|
+
if (i)
|
|
94
|
+
s = i.value;
|
|
76
95
|
else {
|
|
77
|
-
const
|
|
78
|
-
(
|
|
96
|
+
const h = t.children.find(
|
|
97
|
+
(U) => U.children?.some((X) => k(X) === n)
|
|
79
98
|
);
|
|
80
|
-
|
|
99
|
+
h && (s = k(h));
|
|
81
100
|
}
|
|
82
101
|
}
|
|
83
|
-
return { tabs: u, activeTab:
|
|
102
|
+
return { tabs: u, activeTab: s };
|
|
84
103
|
}
|
|
85
104
|
return null;
|
|
86
|
-
},
|
|
87
|
-
const n =
|
|
88
|
-
if (
|
|
89
|
-
const
|
|
90
|
-
|
|
105
|
+
}, O = (e) => {
|
|
106
|
+
const n = N(l.items, e);
|
|
107
|
+
if (C.value = n, !T.value) return;
|
|
108
|
+
const t = E(e, n);
|
|
109
|
+
t ? b.setNestedTabs(t.tabs, t.activeTab) : b.setNestedTabs([], "");
|
|
91
110
|
};
|
|
92
|
-
|
|
93
|
-
() =>
|
|
111
|
+
I(
|
|
112
|
+
() => p?.path,
|
|
94
113
|
(e) => {
|
|
95
|
-
e &&
|
|
114
|
+
e && O(e);
|
|
96
115
|
},
|
|
97
116
|
{ immediate: !0 }
|
|
98
|
-
),
|
|
99
|
-
() =>
|
|
117
|
+
), I(
|
|
118
|
+
() => l.items,
|
|
100
119
|
() => {
|
|
101
|
-
|
|
120
|
+
p?.path && O(p.path);
|
|
102
121
|
},
|
|
103
122
|
{ deep: !0 }
|
|
104
123
|
);
|
|
105
|
-
const
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
124
|
+
const J = (e) => {
|
|
125
|
+
c.value.includes(e) ? c.value = c.value.filter((t) => t !== e) : l.allowMultiple ? c.value.push(e) : c.value = [e];
|
|
126
|
+
}, K = (e) => {
|
|
127
|
+
if (C.value = e, T.value && p?.path) {
|
|
128
|
+
const n = E(p.path, e);
|
|
129
|
+
n ? b.setNestedTabs(n.tabs, n.activeTab) : b.setNestedTabs([], "");
|
|
130
|
+
}
|
|
131
|
+
}, L = (e, n, t = []) => {
|
|
132
|
+
for (const a of e) {
|
|
133
|
+
if (t.length === 0 && f(a, n)) return null;
|
|
134
|
+
if (a.children?.length) {
|
|
135
|
+
const u = [
|
|
136
|
+
...t,
|
|
137
|
+
{ items: a.children, label: a.label, icon: a.icon }
|
|
138
|
+
];
|
|
139
|
+
for (const i of a.children)
|
|
140
|
+
if (f(i, n)) return u;
|
|
141
|
+
const s = L(a.children, n, u);
|
|
142
|
+
if (s) return s;
|
|
115
143
|
}
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
144
|
+
}
|
|
145
|
+
return null;
|
|
146
|
+
}, _ = (e, n) => {
|
|
147
|
+
for (const t of e)
|
|
148
|
+
if (f(t, n)) return !0;
|
|
149
|
+
return !1;
|
|
150
|
+
};
|
|
151
|
+
I(
|
|
152
|
+
() => p?.path,
|
|
153
|
+
(e) => {
|
|
154
|
+
if (!e || (l.renderMode || "tree") !== "drilldown") return;
|
|
155
|
+
const t = M.value;
|
|
156
|
+
if (_(t, e)) return;
|
|
157
|
+
if (_(l.items, e)) {
|
|
158
|
+
o.value.length > 0 && (g.value = "backward", o.value = []);
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
const a = L(l.items, e);
|
|
162
|
+
a && a.length > 0 && (g.value = "forward", o.value = a);
|
|
163
|
+
}
|
|
164
|
+
);
|
|
165
|
+
const Q = ee({
|
|
166
|
+
activeItem: C,
|
|
167
|
+
expandedItems: c,
|
|
168
|
+
toggleExpand: J,
|
|
169
|
+
setActive: K,
|
|
170
|
+
indentSize: r(() => l.indentSize),
|
|
171
|
+
variant: r(() => l.variant),
|
|
172
|
+
renderMode: r(() => l.renderMode || "tree"),
|
|
120
173
|
// Expose the effective value so SidebarMenuItem respects forceTreeView
|
|
121
|
-
renderNestedTabs:
|
|
122
|
-
compact:
|
|
123
|
-
showCompactLabels:
|
|
124
|
-
iconSize:
|
|
125
|
-
compactIconSize:
|
|
126
|
-
labelClass:
|
|
127
|
-
compactLabelClass:
|
|
128
|
-
itemPadding:
|
|
129
|
-
compactItemPadding:
|
|
130
|
-
nestedMenuWidth:
|
|
131
|
-
nestedMenuMaxHeight:
|
|
132
|
-
currentOrientation:
|
|
133
|
-
showTooltip:
|
|
174
|
+
renderNestedTabs: T,
|
|
175
|
+
compact: r(() => l.compact),
|
|
176
|
+
showCompactLabels: r(() => l.showCompactLabels),
|
|
177
|
+
iconSize: r(() => l.iconSize),
|
|
178
|
+
compactIconSize: r(() => l.compactIconSize),
|
|
179
|
+
labelClass: r(() => l.labelClass),
|
|
180
|
+
compactLabelClass: r(() => l.compactLabelClass),
|
|
181
|
+
itemPadding: r(() => l.itemPadding),
|
|
182
|
+
compactItemPadding: r(() => l.compactItemPadding),
|
|
183
|
+
nestedMenuWidth: r(() => l.nestedMenuWidth),
|
|
184
|
+
nestedMenuMaxHeight: r(() => l.nestedMenuMaxHeight),
|
|
185
|
+
currentOrientation: x,
|
|
186
|
+
showTooltip: r(() => l.showTooltip),
|
|
187
|
+
drilldownStack: o,
|
|
188
|
+
drillInto: A,
|
|
189
|
+
drillBack: z,
|
|
190
|
+
drilldownItems: M,
|
|
191
|
+
isDrilldown: w
|
|
134
192
|
});
|
|
135
|
-
return
|
|
136
|
-
class:
|
|
137
|
-
|
|
138
|
-
|
|
193
|
+
return te("sidebar-menu-ctx", Q), (e, n) => (d(), m("nav", {
|
|
194
|
+
class: V(["flex w-full transition-all duration-300", [
|
|
195
|
+
x.value === "horizontal" ? "flex-row flex-wrap gap-2 items-center" : "flex-col",
|
|
196
|
+
x.value === "vertical" && !l.compact ? "space-y-1" : ""
|
|
139
197
|
]]),
|
|
140
198
|
role: "tree",
|
|
141
199
|
"aria-label": "Sidebar Menu"
|
|
142
200
|
}, [
|
|
143
|
-
(
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
201
|
+
(l.renderMode || "tree") === "drilldown" && x.value === "vertical" ? (d(), m("div", ue, [
|
|
202
|
+
D(le, {
|
|
203
|
+
name: g.value === "forward" ? "drill-forward" : "drill-backward",
|
|
204
|
+
tag: "div",
|
|
205
|
+
class: "relative w-full"
|
|
206
|
+
}, {
|
|
207
|
+
default: ne(() => [
|
|
208
|
+
(d(), m("div", {
|
|
209
|
+
key: o.value.length,
|
|
210
|
+
class: "w-full"
|
|
211
|
+
}, [
|
|
212
|
+
w.value ? (d(), m("button", {
|
|
213
|
+
key: 0,
|
|
214
|
+
type: "button",
|
|
215
|
+
class: "flex items-center gap-2 w-full px-2 py-2.5 mb-1 text-sm font-medium text-muted-foreground hover:text-foreground hover:bg-accent/60 rounded-md transition-all duration-150 group cursor-pointer",
|
|
216
|
+
onClick: z
|
|
217
|
+
}, [
|
|
218
|
+
D($, {
|
|
219
|
+
icon: "lucide:chevron-left",
|
|
220
|
+
class: "w-4 h-4 shrink-0 transition-transform duration-200 group-hover:-translate-x-0.5"
|
|
221
|
+
}),
|
|
222
|
+
P.value ? (d(), B($, {
|
|
223
|
+
key: 0,
|
|
224
|
+
icon: P.value,
|
|
225
|
+
class: "w-4 h-4 shrink-0 opacity-70"
|
|
226
|
+
}, null, 8, ["icon"])) : S("", !0),
|
|
227
|
+
R("span", ce, ae(q.value), 1)
|
|
228
|
+
])) : S("", !0),
|
|
229
|
+
w.value ? (d(), m("div", de)) : S("", !0),
|
|
230
|
+
R("div", {
|
|
231
|
+
class: V(w.value ? "space-y-0.5" : "space-y-1")
|
|
232
|
+
}, [
|
|
233
|
+
(d(!0), m(W, null, H(M.value, (t) => (d(), B(F, {
|
|
234
|
+
key: t.id || t.label,
|
|
235
|
+
item: t,
|
|
236
|
+
itemClass: v.itemClass,
|
|
237
|
+
menuOffset: v.menuOffset
|
|
238
|
+
}, null, 8, ["item", "itemClass", "menuOffset"]))), 128))
|
|
239
|
+
], 2)
|
|
240
|
+
]))
|
|
241
|
+
]),
|
|
242
|
+
_: 1
|
|
243
|
+
}, 8, ["name"])
|
|
244
|
+
])) : (d(!0), m(W, { key: 1 }, H(v.items, (t) => (d(), B(F, {
|
|
245
|
+
key: t.id || t.label,
|
|
246
|
+
item: t,
|
|
247
|
+
itemClass: v.itemClass,
|
|
248
|
+
menuOffset: v.menuOffset
|
|
148
249
|
}, null, 8, ["item", "itemClass", "menuOffset"]))), 128))
|
|
149
250
|
], 2));
|
|
150
251
|
}
|
|
151
252
|
});
|
|
152
253
|
export {
|
|
153
|
-
|
|
254
|
+
ge as default
|
|
154
255
|
};
|