vlite3 0.6.10 → 0.6.11

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.
@@ -1,5 +1,5 @@
1
- import o from "./ColorIro.vue.js";
2
- /* empty css */
1
+ import o from "./ColorIro.vue2.js";
2
+ /* empty css */
3
3
  export {
4
4
  o as default
5
5
  };
@@ -5,8 +5,8 @@ import O from "../Input.vue.js";
5
5
  /* empty css */
6
6
  import "../../core/config.js";
7
7
  import y from "../Button.vue.js";
8
- import E from "./ColorIro.vue.js";
9
- /* empty css */
8
+ import E from "./ColorIro.vue2.js";
9
+ /* empty css */
10
10
  import { useEyeDropper as P } from "@vueuse/core";
11
11
  const I = {
12
12
  key: 0,
@@ -29,12 +29,6 @@ declare function __VLS_template(): {
29
29
  logo?(_: {}): any;
30
30
  logo?(_: {}): any;
31
31
  logo?(_: {}): any;
32
- logo?(_: {}): any;
33
- logo?(_: {}): any;
34
- logo?(_: {}): any;
35
- logo?(_: {}): any;
36
- logo?(_: {}): any;
37
- logo?(_: {}): any;
38
32
  'mobile-trigger'?(_: {
39
33
  isOpen: any;
40
34
  toggle: () => boolean;
@@ -1,60 +1,59 @@
1
- import { defineComponent as se, computed as b, ref as w, provide as oe, useSlots as te, onMounted as ae, onUnmounted as re, watch as W, openBlock as t, createElementBlock as a, createVNode as m, Transition as Y, withCtx as v, withDirectives as q, createElementVNode as r, normalizeClass as n, renderSlot as o, createCommentVNode as d, vShow as G, unref as c, createTextVNode as P, normalizeStyle as ie, Fragment as x, createBlock as $, resolveDynamicComponent as J, toDisplayString as K } from "vue";
2
- import { useRoute as ne } from "vue-router";
3
- import { useLocalStorage as de, onClickOutside as ue, useBreakpoints as fe, breakpointsTailwind as me } from "@vueuse/core";
4
- import B from "../Icon.vue.js";
5
- import R from "../SidePanel.vue.js";
6
- import Q from "../Logo.vue.js";
7
- import X from "./NavbarTabs.vue.js";
1
+ import { defineComponent as _, computed as m, ref as w, provide as ee, useSlots as le, onMounted as se, onUnmounted as oe, watch as A, openBlock as r, createElementBlock as i, createVNode as b, Transition as W, withCtx as g, withDirectives as Y, createElementVNode as t, normalizeClass as n, renderSlot as s, createCommentVNode as u, vShow as q, unref as c, createTextVNode as L, normalizeStyle as te, Fragment as x, createBlock as G } from "vue";
2
+ import { useRoute as ae } from "vue-router";
3
+ import { useLocalStorage as re, onClickOutside as ie, useBreakpoints as ne, breakpointsTailwind as de } from "@vueuse/core";
4
+ import z from "../Icon.vue.js";
5
+ import P from "../SidePanel.vue.js";
6
+ import J from "./NavbarTabs.vue.js";
8
7
  /* empty css */
9
- import Z from "../Breadcrumb/Breadcrumb.vue.js";
8
+ import K from "../Breadcrumb/Breadcrumb.vue.js";
10
9
  /* empty css */
11
- import { useBreadcrumb as be } from "../../composables/useBreadcrumb.js";
12
- const ve = {
10
+ import { useBreadcrumb as ue } from "../../composables/useBreadcrumb.js";
11
+ const fe = {
13
12
  key: 0,
14
13
  class: "vlite-app-layout flex flex-row w-full h-full bg-body overflow-hidden"
15
- }, ce = { class: "flex flex-col flex-1 min-w-0 h-full overflow-hidden" }, ge = {
14
+ }, be = { class: "flex flex-col flex-1 min-w-0 h-full overflow-hidden" }, me = {
16
15
  key: 0,
17
16
  class: "w-full shrink-0 z-20 bg-background"
18
- }, pe = {
17
+ }, ce = {
19
18
  key: 1,
20
19
  class: "flex-1 overflow-y-auto w-full relative h-full flex flex-col min-h-0"
21
- }, he = {
20
+ }, ve = {
22
21
  key: 0,
23
22
  class: "shrink-0 w-full"
24
- }, ye = { class: "flex-1 overflow-y-auto w-full relative h-full" }, ke = { class: "flex flex-col h-full" }, we = { class: "flex-1 overflow-y-auto px-3.5 pt-4" }, xe = {
23
+ }, ge = { class: "flex-1 overflow-y-auto w-full relative h-full" }, pe = { class: "flex flex-col h-full" }, he = { class: "flex-1 overflow-y-auto px-3.5 pt-4" }, ye = {
25
24
  key: 0,
26
25
  class: "mt-auto pt-2 border-t border-border px-3 py-2"
27
- }, $e = {
26
+ }, ke = {
28
27
  key: 1,
29
28
  class: "vlite-app-layout flex flex-col w-full h-full bg-body overflow-hidden"
30
- }, Ce = {
29
+ }, we = {
31
30
  key: 0,
32
31
  class: "w-full shrink-0 z-50 flex flex-col relative"
33
- }, Te = { class: "flex flex-1 w-full overflow-hidden relative" }, ze = { class: "flex items-center gap-4 shrink-0 z-10" }, Be = { key: 1 }, Se = { key: 2 }, Ve = {
32
+ }, xe = { class: "flex flex-1 w-full overflow-hidden relative" }, $e = { class: "flex items-center gap-4 shrink-0 z-10" }, Ce = {
34
33
  key: 0,
35
34
  class: "flex-1 overflow-y-auto w-full relative h-full flex flex-col"
36
- }, Me = {
35
+ }, Te = {
37
36
  key: 0,
38
37
  class: "shrink-0 w-full"
39
- }, Oe = { class: "flex-1 overflow-y-auto w-full relative h-full" }, Ne = { class: "flex flex-col max-h-[80vh] overflow-y-auto" }, Le = { class: "space-y-1 p-2" }, Pe = { class: "space-y-1 p-2" }, Re = { class: "flex flex-col space-y-6 pt-4 h-full" }, He = {
38
+ }, ze = { class: "flex-1 overflow-y-auto w-full relative h-full" }, Se = { class: "flex flex-col max-h-[80vh] overflow-y-auto" }, Be = { class: "space-y-1 p-2" }, Ve = { class: "space-y-1 p-2" }, Me = { class: "flex flex-col space-y-6 pt-4 h-full" }, Oe = {
40
39
  key: 0,
41
40
  class: "flex flex-col space-y-1"
42
- }, je = {
41
+ }, Ne = {
43
42
  key: 1,
44
43
  class: "flex flex-col space-y-4 flex-1 overflow-y-auto px-3.5!"
45
- }, Ie = {
44
+ }, Le = {
46
45
  key: 2,
47
46
  class: "mt-auto pt-2 border-t border-border px-3! py-2!"
48
- }, Ue = { class: "flex items-center gap-4 shrink-0 z-10" }, Ae = { key: 1 }, De = { key: 2 }, Ee = { class: "flex flex-col max-h-[80vh] overflow-y-auto" }, Fe = { class: "space-y-1 p-2" }, We = { class: "space-y-1 p-2" }, Ye = { class: "flex flex-col space-y-6 pt-4 h-full" }, qe = {
47
+ }, Pe = { class: "flex items-center gap-4 shrink-0 z-10" }, Re = { class: "flex flex-col max-h-[80vh] overflow-y-auto" }, He = { class: "space-y-1 p-2" }, je = { class: "space-y-1 p-2" }, Ie = { class: "flex flex-col space-y-6 pt-4 h-full" }, Ue = {
49
48
  key: 0,
50
49
  class: "flex flex-col space-y-1"
51
- }, Ge = {
50
+ }, Ee = {
52
51
  key: 1,
53
52
  class: "flex flex-col space-y-4 flex-1 overflow-y-auto px-3.5!"
54
- }, Je = {
53
+ }, De = {
55
54
  key: 2,
56
55
  class: "mt-auto pt-2 border-t border-border px-3! py-2!"
57
- }, nl = /* @__PURE__ */ se({
56
+ }, el = /* @__PURE__ */ _({
58
57
  __name: "Navbar",
59
58
  props: {
60
59
  variant: { default: "header" },
@@ -88,118 +87,118 @@ const ve = {
88
87
  layoutMode: { default: "sidebar-first" }
89
88
  },
90
89
  emits: ["toggle-mobile"],
91
- setup(g, { emit: Ke }) {
92
- const l = g, h = l.breadcrumb ? be({
90
+ setup(v, { emit: Fe }) {
91
+ const l = v, h = l.breadcrumb ? ue({
93
92
  homeIcon: l.breadcrumbHomeIcon,
94
93
  labelMap: l.breadcrumbLabels || {}
95
- }) : { items: b(() => []) }, y = w([]), k = w("");
96
- oe("navbar-context", {
97
- compact: b(() => l.compact),
98
- renderNestedTabs: b(() => l.renderNestedTabs),
99
- setNestedTabs: (e, s) => {
100
- y.value = e, k.value = s;
94
+ }) : { items: m(() => []) }, y = w([]), k = w("");
95
+ ee("navbar-context", {
96
+ compact: m(() => l.compact),
97
+ renderNestedTabs: m(() => l.renderNestedTabs),
98
+ setNestedTabs: (e, o) => {
99
+ y.value = e, k.value = o;
101
100
  }
102
101
  });
103
- const i = w(!1), S = w(!1), H = te(), V = w(null), C = w(null), T = de("vlite-navbar-sidebar-visible", !0), j = (e) => {
104
- y.value.find((u) => u.value === e) && (typeof e == "string" && e.startsWith("/") ? import("vue-router").then(({ useRouter: u }) => {
105
- u().push(e).catch(() => {
102
+ const a = w(!1), S = w(!1), R = le(), B = w(null), $ = w(null), C = re("vlite-navbar-sidebar-visible", !0), H = (e) => {
103
+ y.value.find((d) => d.value === e) && (typeof e == "string" && e.startsWith("/") ? import("vue-router").then(({ useRouter: d }) => {
104
+ d().push(e).catch(() => {
106
105
  });
107
106
  }) : k.value = e);
108
- }, p = b(() => !!(H.header || H.main)), I = b(() => l.sidebarToggle && p.value), U = () => {
109
- T.value = !T.value;
107
+ }, p = m(() => !!(R.header || R.main)), j = m(() => l.sidebarToggle && p.value), I = () => {
108
+ C.value = !C.value;
110
109
  };
111
- ue(
112
- V,
110
+ ie(
111
+ B,
113
112
  () => {
114
- i.value = !1;
113
+ a.value = !1;
115
114
  },
116
- { ignore: [C] }
115
+ { ignore: [$] }
117
116
  );
118
- const A = () => {
117
+ const U = () => {
119
118
  S.value = window.scrollY > 10;
120
119
  };
121
- ae(() => {
122
- window.addEventListener("scroll", A, { passive: !0 });
123
- }), re(() => {
124
- window.removeEventListener("scroll", A);
120
+ se(() => {
121
+ window.addEventListener("scroll", U, { passive: !0 });
122
+ }), oe(() => {
123
+ window.removeEventListener("scroll", U);
125
124
  });
126
- const D = b(() => {
127
- const e = l.variant === "sidebar", s = {
125
+ const E = m(() => {
126
+ const e = l.variant === "sidebar", o = {
128
127
  fixed: p.value ? "relative z-40" : "fixed top-0 left-0 z-40",
129
128
  sticky: p.value ? "relative z-40" : "sticky top-0 z-40",
130
129
  relative: "relative z-10",
131
130
  absolute: p.value ? "relative z-40" : "absolute top-0 left-0 w-full z-40"
132
- }, u = "bg-body", z = [
131
+ }, d = "bg-body", T = [
133
132
  l.glass && (S.value || e || l.floating) ? "backdrop-blur-md bg-background/80 supports-[backdrop-filter]:bg-background/60" : "bg-background",
134
133
  l.border && !l.floating ? e ? "border-r border-border" : "border-b border-border" : "",
135
134
  l.floating ? "m-4 rounded shadow-lg border border-border/50" : "",
136
135
  S.value && !l.floating && !e && l.position === "sticky" ? "shadow-sm" : ""
137
- ], M = l.mobileBreakpoint || "md", O = {
136
+ ], V = l.mobileBreakpoint || "md", M = {
138
137
  sm: "max-sm:hidden",
139
138
  md: "max-md:hidden",
140
139
  lg: "max-lg:hidden",
141
140
  xl: "max-xl:hidden"
142
- }, N = p.value && e ? O[M] : "";
143
- let L = "";
144
- return e ? L = f.value.sidebarLayout : L = `flex items-center gap-4 w-full px-4 sm:px-6 lg:px-8 ${l.height}`, [u, s[l.position], ...z, L, N, l.class].filter(Boolean).join(" ");
145
- }), f = b(() => {
146
- const e = l.mobileBreakpoint || "md", s = {
141
+ }, O = p.value && e ? M[V] : "";
142
+ let N = "";
143
+ return e ? N = f.value.sidebarLayout : N = `flex items-center gap-4 w-full px-4 sm:px-6 lg:px-8 ${l.height}`, [d, o[l.position], ...T, N, O, l.class].filter(Boolean).join(" ");
144
+ }), f = m(() => {
145
+ const e = l.mobileBreakpoint || "md", o = {
147
146
  sm: "sm:hidden",
148
147
  md: "md:hidden",
149
148
  lg: "lg:hidden",
150
149
  xl: "xl:hidden"
151
- }, u = {
150
+ }, d = {
152
151
  sm: "hidden sm:flex",
153
152
  md: "hidden md:flex",
154
153
  lg: "hidden lg:flex",
155
154
  xl: "hidden xl:flex"
156
- }, z = {
155
+ }, T = {
157
156
  sm: `flex flex-col max-sm:w-full ${l.compact ? "w-20" : ""} h-auto sm:h-full sm:max-h-screen shrink-0`,
158
157
  md: `flex flex-col max-md:w-full ${l.compact ? "w-20" : ""} h-auto md:h-full md:max-h-screen shrink-0`,
159
158
  lg: `flex flex-col max-lg:w-full ${l.compact ? "w-20" : ""} h-auto lg:h-full lg:max-h-screen shrink-0`,
160
159
  xl: `flex flex-col max-xl:w-full ${l.compact ? "w-20" : ""} h-auto xl:h-full xl:max-h-screen shrink-0`
161
- }, M = {
160
+ }, V = {
162
161
  sm: "sm:hidden flex items-center justify-between px-4 py-3 shrink-0 bg-background",
163
162
  md: "md:hidden flex items-center justify-between px-4 py-3 shrink-0 bg-background",
164
163
  lg: "lg:hidden flex items-center justify-between px-4 py-3 shrink-0 bg-background",
165
164
  xl: "xl:hidden flex items-center justify-between px-4 py-3 shrink-0 bg-background"
166
- }, O = {
165
+ }, M = {
167
166
  sm: "hidden sm:flex flex-col h-full w-full overflow-hidden",
168
167
  md: "hidden md:flex flex-col h-full w-full overflow-hidden",
169
168
  lg: "hidden lg:flex flex-col h-full w-full overflow-hidden",
170
169
  xl: "hidden xl:flex flex-col h-full w-full overflow-hidden"
171
- }, N = {
170
+ }, O = {
172
171
  sm: "hidden sm:flex",
173
172
  md: "hidden md:flex",
174
173
  lg: "hidden lg:flex",
175
174
  xl: "hidden xl:flex"
176
175
  };
177
176
  return {
178
- mobileTrigger: s[e],
179
- desktopContent: u[e],
180
- sidebarLayout: z[e],
181
- mobileHeader: M[e],
182
- desktopSidebar: O[e],
183
- desktopOnly: N[e]
177
+ mobileTrigger: o[e],
178
+ desktopContent: d[e],
179
+ sidebarLayout: T[e],
180
+ mobileHeader: V[e],
181
+ desktopSidebar: M[e],
182
+ desktopOnly: O[e]
184
183
  };
185
- }), E = b(() => {
184
+ }), D = m(() => {
186
185
  if (l.variant === "sidebar") return "flex-1 py-4 overflow-y-auto";
187
186
  if (l.centerPosition === "left")
188
187
  return "flex items-center justify-start";
189
- }), _ = ne();
190
- W(
191
- () => _.path,
188
+ }), Q = ae();
189
+ A(
190
+ () => Q.path,
192
191
  () => {
193
- i.value = !1;
192
+ a.value = !1;
194
193
  }
195
194
  );
196
- const ee = fe(me).greater(l.mobileBreakpoint);
197
- W(ee, (e) => {
198
- e && (i.value = !1);
195
+ const X = ne(de).greater(l.mobileBreakpoint);
196
+ A(X, (e) => {
197
+ e && (a.value = !1);
199
198
  });
200
- const F = b(() => I.value && !T.value), le = b(() => p.value && l.variant === "sidebar" && l.layoutMode === "sidebar-first");
201
- return (e, s) => le.value ? (t(), a("div", ve, [
202
- m(Y, {
199
+ const F = m(() => j.value && !C.value), Z = m(() => p.value && l.variant === "sidebar" && l.layoutMode === "sidebar-first");
200
+ return (e, o) => Z.value ? (r(), i("div", fe, [
201
+ b(W, {
203
202
  "enter-active-class": "transition-all duration-300 ease-in-out",
204
203
  "leave-active-class": "transition-all duration-300 ease-in-out",
205
204
  "enter-from-class": "opacity-0 -translate-x-2",
@@ -207,8 +206,8 @@ const ve = {
207
206
  "leave-from-class": "opacity-100 translate-x-0",
208
207
  "leave-to-class": "opacity-0 -translate-x-2"
209
208
  }, {
210
- default: v(() => [
211
- q(r("nav", {
209
+ default: g(() => [
210
+ Y(t("nav", {
212
211
  class: n([
213
212
  "shrink-0 h-full flex flex-col bg-background border-r border-border overflow-hidden z-30",
214
213
  f.value.mobileTrigger === "md:hidden" ? "max-md:hidden" : "",
@@ -217,61 +216,61 @@ const ve = {
217
216
  role: "navigation",
218
217
  "aria-label": "Sidebar"
219
218
  }, [
220
- r("div", {
219
+ t("div", {
221
220
  class: n(["flex-1 overflow-y-auto overflow-x-hidden scrollbar-thin", l.contentClass])
222
221
  }, [
223
- o(e.$slots, "default")
222
+ s(e.$slots, "default")
224
223
  ], 2),
225
- e.$slots.right ? (t(), a("div", {
224
+ e.$slots.right ? (r(), i("div", {
226
225
  key: 0,
227
226
  class: n(["shrink-0 border-t border-border bg-background", l.rightClass])
228
227
  }, [
229
- o(e.$slots, "right")
230
- ], 2)) : d("", !0)
228
+ s(e.$slots, "right")
229
+ ], 2)) : u("", !0)
231
230
  ], 2), [
232
- [G, !F.value]
231
+ [q, !F.value]
233
232
  ])
234
233
  ]),
235
234
  _: 3
236
235
  }),
237
- r("div", ce, [
238
- e.$slots.header ? (t(), a("header", ge, [
239
- o(e.$slots, "header", {
240
- isOpen: i.value,
241
- toggle: () => i.value = !i.value,
242
- sidebarVisible: c(T),
243
- toggleSidebar: U,
236
+ t("div", be, [
237
+ e.$slots.header ? (r(), i("header", me, [
238
+ s(e.$slots, "header", {
239
+ isOpen: a.value,
240
+ toggle: () => a.value = !a.value,
241
+ sidebarVisible: c(C),
242
+ toggleSidebar: I,
244
243
  breadcrumbItems: c(h).items.value
245
244
  })
246
- ])) : d("", !0),
247
- e.$slots.main ? (t(), a("main", pe, [
248
- l.renderNestedTabs && y.value.length > 0 ? (t(), a("div", he, [
249
- m(X, {
245
+ ])) : u("", !0),
246
+ e.$slots.main ? (r(), i("main", ce, [
247
+ l.renderNestedTabs && y.value.length > 0 ? (r(), i("div", ve, [
248
+ b(J, {
250
249
  modelValue: k.value,
251
- "onUpdate:modelValue": s[0] || (s[0] = (u) => k.value = u),
252
- onChange: j,
250
+ "onUpdate:modelValue": o[0] || (o[0] = (d) => k.value = d),
251
+ onChange: H,
253
252
  items: y.value
254
253
  }, null, 8, ["modelValue", "items"])
255
- ])) : d("", !0),
256
- l.breadcrumb && l.breadcrumbPosition === "main" && c(h).items.value.length > 1 ? (t(), a("div", {
254
+ ])) : u("", !0),
255
+ l.breadcrumb && l.breadcrumbPosition === "main" && c(h).items.value.length > 1 ? (r(), i("div", {
257
256
  key: 1,
258
257
  class: n(["shrink-0 w-full border-b border-border px-6 py-2", l.breadcrumbClass])
259
258
  }, [
260
- m(c(Z), {
259
+ b(c(K), {
261
260
  items: c(h).items.value,
262
261
  variant: l.breadcrumbVariant,
263
262
  separator: l.breadcrumbSeparator,
264
263
  size: l.breadcrumbSize
265
264
  }, null, 8, ["items", "variant", "separator", "size"])
266
- ], 2)) : d("", !0),
267
- r("div", ye, [
268
- o(e.$slots, "main")
265
+ ], 2)) : u("", !0),
266
+ t("div", ge, [
267
+ s(e.$slots, "main")
269
268
  ])
270
- ])) : d("", !0)
269
+ ])) : u("", !0)
271
270
  ]),
272
- m(R, {
273
- show: i.value,
274
- "onUpdate:show": s[1] || (s[1] = (u) => i.value = u),
271
+ b(P, {
272
+ show: a.value,
273
+ "onUpdate:show": o[1] || (o[1] = (d) => a.value = d),
275
274
  position: "left",
276
275
  size: "sm",
277
276
  triggerClass: f.value.mobileTrigger,
@@ -279,35 +278,35 @@ const ve = {
279
278
  headerClass: "pl-3! pr-4.5! py-3!",
280
279
  bodyClass: "p-0!"
281
280
  }, {
282
- header: v(() => [
283
- o(e.$slots, "logo", {}, () => [
284
- s[9] || (s[9] = P("Brand", -1))
281
+ header: g(() => [
282
+ s(e.$slots, "logo", {}, () => [
283
+ o[9] || (o[9] = L("Brand", -1))
285
284
  ])
286
285
  ]),
287
- default: v(() => [
288
- r("div", ke, [
289
- r("div", we, [
290
- o(e.$slots, "default")
286
+ default: g(() => [
287
+ t("div", pe, [
288
+ t("div", he, [
289
+ s(e.$slots, "default")
291
290
  ]),
292
- e.$slots.right ? (t(), a("div", xe, [
293
- o(e.$slots, "right")
294
- ])) : d("", !0)
291
+ e.$slots.right ? (r(), i("div", ye, [
292
+ s(e.$slots, "right")
293
+ ])) : u("", !0)
295
294
  ])
296
295
  ]),
297
296
  _: 3
298
297
  }, 8, ["show", "triggerClass", "class"])
299
- ])) : p.value ? (t(), a("div", $e, [
300
- e.$slots.header ? (t(), a("header", Ce, [
301
- o(e.$slots, "header", {
302
- isOpen: i.value,
303
- toggle: () => i.value = !i.value,
304
- sidebarVisible: c(T),
305
- toggleSidebar: U,
298
+ ])) : p.value ? (r(), i("div", ke, [
299
+ e.$slots.header ? (r(), i("header", we, [
300
+ s(e.$slots, "header", {
301
+ isOpen: a.value,
302
+ toggle: () => a.value = !a.value,
303
+ sidebarVisible: c(C),
304
+ toggleSidebar: I,
306
305
  breadcrumbItems: c(h).items.value
307
306
  })
308
- ])) : d("", !0),
309
- r("div", Te, [
310
- m(Y, {
307
+ ])) : u("", !0),
308
+ t("div", xe, [
309
+ b(W, {
311
310
  "enter-active-class": "transition-all duration-300 ease-in-out overflow-hidden",
312
311
  "leave-active-class": "transition-all duration-300 ease-in-out overflow-hidden",
313
312
  "enter-from-class": "opacity-0",
@@ -315,179 +314,148 @@ const ve = {
315
314
  "leave-from-class": "opacity-100",
316
315
  "leave-to-class": "opacity-0"
317
316
  }, {
318
- default: v(() => [
319
- q(r("nav", {
320
- class: n(D.value),
317
+ default: g(() => [
318
+ Y(t("nav", {
319
+ class: n(E.value),
321
320
  role: "navigation",
322
- style: ie(I.value ? "transition: width 0.3s ease, opacity 0.3s ease;" : "")
321
+ style: te(j.value ? "transition: width 0.3s ease, opacity 0.3s ease;" : "")
323
322
  }, [
324
- g.variant === "header" ? (t(), a(x, { key: 0 }, [
325
- r("div", ze, [
326
- o(e.$slots, "mobile-trigger", {
327
- isOpen: i.value,
328
- toggle: () => i.value = !i.value
323
+ v.variant === "header" ? (r(), i(x, { key: 0 }, [
324
+ t("div", $e, [
325
+ s(e.$slots, "mobile-trigger", {
326
+ isOpen: a.value,
327
+ toggle: () => a.value = !a.value
329
328
  }, () => [
330
- r("button", {
329
+ t("button", {
331
330
  type: "button",
332
331
  ref_key: "mobileTriggerRef",
333
- ref: C,
332
+ ref: $,
334
333
  class: n(["p-2 -ml-2 text-muted-foreground hover:bg-accent rounded-md shrink-0", [f.value.mobileTrigger, l.mobileTriggerClass]]),
335
- onClick: s[2] || (s[2] = (u) => i.value = !i.value)
334
+ onClick: o[2] || (o[2] = (d) => a.value = !a.value)
336
335
  }, [
337
- m(B, {
336
+ b(z, {
338
337
  icon: "lucide:menu",
339
338
  class: "w-5 h-5"
340
339
  }),
341
- s[10] || (s[10] = r("span", { class: "sr-only" }, "Open Menu", -1))
340
+ o[10] || (o[10] = t("span", { class: "sr-only" }, "Open Menu", -1))
342
341
  ], 2)
343
342
  ]),
344
- e.$slots?.logo ? (t(), a("div", {
343
+ e.$slots?.left ? (r(), i("div", {
345
344
  key: 0,
346
- class: n(["shrink-0", l.logoClass])
347
- }, [
348
- o(e.$slots, "logo", {}, () => [
349
- (t(), $(J(l.logo ? "img" : "div"), {
350
- src: l.logo,
351
- class: "h-8 w-auto font-bold text-xl flex items-center gap-2"
352
- }, {
353
- default: v(() => [
354
- l.logo ? d("", !0) : (t(), $(Q, {
355
- key: 0,
356
- class: "h-6 w-6"
357
- })),
358
- !l.logo && l.logoAlt ? (t(), a("span", Be, K(l.logoAlt), 1)) : l.logo ? d("", !0) : (t(), a("span", Se, "Brand"))
359
- ]),
360
- _: 1
361
- }, 8, ["src"]))
362
- ])
363
- ], 2)) : d("", !0),
364
- e.$slots?.left ? (t(), a("div", {
365
- key: 1,
366
345
  class: n(["items-center gap-1 overflow-x-auto no-scrollbar mask-gradient", f.value.desktopContent])
367
346
  }, [
368
- o(e.$slots, "left")
369
- ], 2)) : d("", !0)
347
+ s(e.$slots, "left")
348
+ ], 2)) : u("", !0)
370
349
  ]),
371
- e.$slots?.center ? (t(), a("div", {
350
+ e.$slots?.center ? (r(), i("div", {
372
351
  key: 0,
373
- class: n([E.value, "max-w-full", l.contentClass])
352
+ class: n([D.value, "max-w-full", l.contentClass])
374
353
  }, [
375
- o(e.$slots, "center")
376
- ], 2)) : d("", !0),
377
- r("div", {
354
+ s(e.$slots, "center")
355
+ ], 2)) : u("", !0),
356
+ t("div", {
378
357
  class: n(["flex items-center gap-2 shrink-0 max-w-[40%] z-10", [
379
- { "ml-auto": g.centerPosition === "left" || g.centerPosition === "center" },
358
+ { "ml-auto": v.centerPosition === "left" || v.centerPosition === "center" },
380
359
  l.rightClass
381
360
  ]])
382
361
  }, [
383
- o(e.$slots, "right")
362
+ s(e.$slots, "right")
384
363
  ], 2)
385
- ], 64)) : (t(), a(x, { key: 1 }, [
386
- e.$slots.header ? d("", !0) : (t(), a("div", {
364
+ ], 64)) : (r(), i(x, { key: 1 }, [
365
+ e.$slots.header ? u("", !0) : (r(), i("div", {
387
366
  key: 0,
388
367
  class: n(f.value.mobileHeader)
389
368
  }, [
390
- e.$slots?.logo ? o(e.$slots, "logo", { key: 0 }, () => [
391
- s[11] || (s[11] = r("div", { class: "font-bold text-xl truncate" }, "Brand", -1))
392
- ]) : d("", !0),
393
- o(e.$slots, "mobile-trigger", {
394
- isOpen: i.value,
395
- toggle: () => i.value = !i.value
369
+ s(e.$slots, "mobile-trigger", {
370
+ isOpen: a.value,
371
+ toggle: () => a.value = !a.value
396
372
  }, () => [
397
- r("button", {
373
+ t("button", {
398
374
  type: "button",
399
375
  ref_key: "mobileTriggerRef",
400
- ref: C,
376
+ ref: $,
401
377
  class: n(["p-2 -mr-2 text-muted-foreground hover:bg-accent rounded-md", l.mobileTriggerClass]),
402
- onClick: s[3] || (s[3] = (u) => i.value = !i.value)
378
+ onClick: o[3] || (o[3] = (d) => a.value = !a.value)
403
379
  }, [
404
- m(B, {
380
+ b(z, {
405
381
  icon: "lucide:menu",
406
382
  class: "w-5 h-5"
407
383
  }),
408
- s[12] || (s[12] = r("span", { class: "sr-only" }, "Open Menu", -1))
384
+ o[11] || (o[11] = t("span", { class: "sr-only" }, "Open Menu", -1))
409
385
  ], 2)
410
386
  ])
411
387
  ], 2)),
412
- r("div", {
388
+ t("div", {
413
389
  class: n(f.value.desktopSidebar)
414
390
  }, [
415
- e.$slots?.logo ? (t(), a("div", {
416
- key: 0,
417
- class: n(["py-4.5 flex items-center px-4.5 z-10", l.logoClass])
418
- }, [
419
- o(e.$slots, "logo", {}, () => [
420
- s[13] || (s[13] = r("div", { class: "font-bold text-xl truncate" }, "Brand", -1))
421
- ])
422
- ], 2)) : d("", !0),
423
- r("div", {
391
+ t("div", {
424
392
  class: n(["flex-1 px-2.5 pt-0 pb-4 overflow-y-auto space-y-4 scrollbar-thin", l.contentClass])
425
393
  }, [
426
- o(e.$slots, "left"),
427
- o(e.$slots, "default"),
428
- o(e.$slots, "center")
394
+ s(e.$slots, "left"),
395
+ s(e.$slots, "default"),
396
+ s(e.$slots, "center")
429
397
  ], 2),
430
- e.$slots?.right ? (t(), a("div", {
431
- key: 1,
398
+ e.$slots?.right ? (r(), i("div", {
399
+ key: 0,
432
400
  class: n(["p-2 border-t border-border shrink-0 bg-background mt-auto", l.rightClass])
433
401
  }, [
434
- o(e.$slots, "right")
435
- ], 2)) : d("", !0)
402
+ s(e.$slots, "right")
403
+ ], 2)) : u("", !0)
436
404
  ], 2)
437
405
  ], 64))
438
406
  ], 6), [
439
- [G, !F.value]
407
+ [q, !F.value]
440
408
  ])
441
409
  ]),
442
410
  _: 3
443
411
  }),
444
- e.$slots.main ? (t(), a("main", Ve, [
445
- l.renderNestedTabs && y.value.length > 0 ? (t(), a("div", Me, [
446
- m(X, {
412
+ e.$slots.main ? (r(), i("main", Ce, [
413
+ l.renderNestedTabs && y.value.length > 0 ? (r(), i("div", Te, [
414
+ b(J, {
447
415
  modelValue: k.value,
448
- "onUpdate:modelValue": s[4] || (s[4] = (u) => k.value = u),
449
- onChange: j,
416
+ "onUpdate:modelValue": o[4] || (o[4] = (d) => k.value = d),
417
+ onChange: H,
450
418
  items: y.value
451
419
  }, null, 8, ["modelValue", "items"])
452
- ])) : d("", !0),
453
- l.breadcrumb && l.breadcrumbPosition === "main" && c(h).items.value.length > 1 ? (t(), a("div", {
420
+ ])) : u("", !0),
421
+ l.breadcrumb && l.breadcrumbPosition === "main" && c(h).items.value.length > 1 ? (r(), i("div", {
454
422
  key: 1,
455
423
  class: n(["shrink-0 w-full border-b border-border px-6 py-2", l.breadcrumbClass])
456
424
  }, [
457
- m(c(Z), {
425
+ b(c(K), {
458
426
  items: c(h).items.value,
459
427
  variant: l.breadcrumbVariant,
460
428
  separator: l.breadcrumbSeparator,
461
429
  size: l.breadcrumbSize
462
430
  }, null, 8, ["items", "variant", "separator", "size"])
463
- ], 2)) : d("", !0),
464
- r("div", Oe, [
465
- o(e.$slots, "main")
431
+ ], 2)) : u("", !0),
432
+ t("div", ze, [
433
+ s(e.$slots, "main")
466
434
  ])
467
- ])) : d("", !0),
468
- l.mobileMenuVariant === "dropdown" ? (t(), a(x, { key: 1 }, [
469
- i.value ? (t(), a("div", {
435
+ ])) : u("", !0),
436
+ l.mobileMenuVariant === "dropdown" ? (r(), i(x, { key: 1 }, [
437
+ a.value ? (r(), i("div", {
470
438
  key: 0,
471
439
  ref_key: "mobileMenuRef",
472
- ref: V,
440
+ ref: B,
473
441
  class: n(["absolute top-[calc(100%_+_1px)] left-0 w-full bg-body border border-border/50 shadow-xl z-50 flex flex-col transition-all duration-300 origin-top overflow-hidden will-change-transform", l.menuClass])
474
442
  }, [
475
- r("div", Ne, [
476
- o(e.$slots, "mobile-menu", {}, () => [
477
- r("div", Le, [
478
- o(e.$slots, "left")
443
+ t("div", Se, [
444
+ s(e.$slots, "mobile-menu", {}, () => [
445
+ t("div", Be, [
446
+ s(e.$slots, "left")
479
447
  ]),
480
- s[14] || (s[14] = r("div", { class: "h-px bg-border/50 my-1 mx-2" }, null, -1)),
481
- r("div", Pe, [
482
- o(e.$slots, "center")
448
+ o[12] || (o[12] = t("div", { class: "h-px bg-border/50 my-1 mx-2" }, null, -1)),
449
+ t("div", Ve, [
450
+ s(e.$slots, "center")
483
451
  ])
484
452
  ])
485
453
  ])
486
- ], 2)) : d("", !0)
487
- ], 64)) : (t(), $(R, {
454
+ ], 2)) : u("", !0)
455
+ ], 64)) : (r(), G(P, {
488
456
  key: 2,
489
- show: i.value,
490
- "onUpdate:show": s[5] || (s[5] = (u) => i.value = u),
457
+ show: a.value,
458
+ "onUpdate:show": o[5] || (o[5] = (d) => a.value = d),
491
459
  position: "left",
492
460
  size: "sm",
493
461
  triggerClass: f.value.mobileTrigger,
@@ -495,173 +463,142 @@ const ve = {
495
463
  headerClass: "pl-3! pr-4.5! py-3!",
496
464
  bodyClass: "p-0!"
497
465
  }, {
498
- header: v(() => [
499
- o(e.$slots, "logo", {}, () => [
500
- s[15] || (s[15] = P("Brand", -1))
466
+ header: g(() => [
467
+ s(e.$slots, "logo", {}, () => [
468
+ o[13] || (o[13] = L("Brand", -1))
501
469
  ])
502
470
  ]),
503
- default: v(() => [
504
- r("div", Re, [
505
- g.variant === "header" ? (t(), a("div", He, [
506
- o(e.$slots, "mobile-menu", {}, () => [
507
- o(e.$slots, "left"),
508
- s[16] || (s[16] = r("div", { class: "h-px bg-border my-2" }, null, -1)),
509
- o(e.$slots, "center")
471
+ default: g(() => [
472
+ t("div", Me, [
473
+ v.variant === "header" ? (r(), i("div", Oe, [
474
+ s(e.$slots, "mobile-menu", {}, () => [
475
+ s(e.$slots, "left"),
476
+ o[14] || (o[14] = t("div", { class: "h-px bg-border my-2" }, null, -1)),
477
+ s(e.$slots, "center")
510
478
  ])
511
- ])) : (t(), a("div", je, [
512
- o(e.$slots, "left"),
513
- o(e.$slots, "default"),
514
- o(e.$slots, "center")
479
+ ])) : (r(), i("div", Ne, [
480
+ s(e.$slots, "left"),
481
+ s(e.$slots, "default"),
482
+ s(e.$slots, "center")
515
483
  ])),
516
- e.$slots?.right ? (t(), a("div", Ie, [
517
- o(e.$slots, "right")
518
- ])) : d("", !0)
484
+ e.$slots?.right ? (r(), i("div", Le, [
485
+ s(e.$slots, "right")
486
+ ])) : u("", !0)
519
487
  ])
520
488
  ]),
521
489
  _: 3
522
490
  }, 8, ["show", "triggerClass", "class"]))
523
491
  ])
524
- ])) : (t(), a("nav", {
492
+ ])) : (r(), i("nav", {
525
493
  key: 2,
526
- class: n(D.value),
494
+ class: n(E.value),
527
495
  role: "navigation"
528
496
  }, [
529
- g.variant === "header" ? (t(), a(x, { key: 0 }, [
530
- r("div", Ue, [
531
- o(e.$slots, "mobile-trigger", {
532
- isOpen: i.value,
533
- toggle: () => i.value = !i.value
497
+ v.variant === "header" ? (r(), i(x, { key: 0 }, [
498
+ t("div", Pe, [
499
+ s(e.$slots, "mobile-trigger", {
500
+ isOpen: a.value,
501
+ toggle: () => a.value = !a.value
534
502
  }, () => [
535
- r("button", {
503
+ t("button", {
536
504
  type: "button",
537
505
  ref_key: "mobileTriggerRef",
538
- ref: C,
506
+ ref: $,
539
507
  class: n(["p-2 -ml-2 text-muted-foreground hover:bg-accent rounded-md shrink-0", [f.value.mobileTrigger, l.mobileTriggerClass]]),
540
- onClick: s[6] || (s[6] = (u) => i.value = !i.value)
508
+ onClick: o[6] || (o[6] = (d) => a.value = !a.value)
541
509
  }, [
542
- m(B, {
510
+ b(z, {
543
511
  icon: "lucide:menu",
544
512
  class: "w-5 h-5"
545
513
  }),
546
- s[17] || (s[17] = r("span", { class: "sr-only" }, "Open Menu", -1))
514
+ o[15] || (o[15] = t("span", { class: "sr-only" }, "Open Menu", -1))
547
515
  ], 2)
548
516
  ]),
549
- e.$slots?.logo ? (t(), a("div", {
517
+ e.$slots?.left ? (r(), i("div", {
550
518
  key: 0,
551
- class: n(["shrink-0", l.logoClass])
552
- }, [
553
- o(e.$slots, "logo", {}, () => [
554
- (t(), $(J(l.logo ? "img" : "div"), {
555
- src: l.logo,
556
- class: "h-8 w-auto font-bold text-xl flex items-center gap-2"
557
- }, {
558
- default: v(() => [
559
- l.logo ? d("", !0) : (t(), $(Q, {
560
- key: 0,
561
- class: "h-6 w-6"
562
- })),
563
- !l.logo && l.logoAlt ? (t(), a("span", Ae, K(l.logoAlt), 1)) : l.logo ? d("", !0) : (t(), a("span", De, "Brand"))
564
- ]),
565
- _: 1
566
- }, 8, ["src"]))
567
- ])
568
- ], 2)) : d("", !0),
569
- e.$slots?.left ? (t(), a("div", {
570
- key: 1,
571
519
  class: n(["items-center gap-1 overflow-x-auto no-scrollbar mask-gradient", f.value.desktopContent])
572
520
  }, [
573
- o(e.$slots, "left")
574
- ], 2)) : d("", !0)
521
+ s(e.$slots, "left")
522
+ ], 2)) : u("", !0)
575
523
  ]),
576
- e.$slots?.center ? (t(), a("div", {
524
+ e.$slots?.center ? (r(), i("div", {
577
525
  key: 0,
578
- class: n([E.value, "max-w-full", l.contentClass])
526
+ class: n([D.value, "max-w-full", l.contentClass])
579
527
  }, [
580
- o(e.$slots, "center")
581
- ], 2)) : d("", !0),
582
- r("div", {
528
+ s(e.$slots, "center")
529
+ ], 2)) : u("", !0),
530
+ t("div", {
583
531
  class: n(["flex items-center gap-2 shrink-0 max-w-[40%] z-10", [
584
- { "ml-auto": g.centerPosition === "left" || g.centerPosition === "center" },
532
+ { "ml-auto": v.centerPosition === "left" || v.centerPosition === "center" },
585
533
  l.rightClass
586
534
  ]])
587
535
  }, [
588
- o(e.$slots, "right")
536
+ s(e.$slots, "right")
589
537
  ], 2)
590
- ], 64)) : (t(), a(x, { key: 1 }, [
591
- r("div", {
538
+ ], 64)) : (r(), i(x, { key: 1 }, [
539
+ t("div", {
592
540
  class: n(f.value.mobileHeader)
593
541
  }, [
594
- e.$slots?.logo ? o(e.$slots, "logo", { key: 0 }, () => [
595
- s[18] || (s[18] = r("div", { class: "font-bold text-xl truncate" }, "Brand", -1))
596
- ]) : d("", !0),
597
- o(e.$slots, "mobile-trigger", {
598
- isOpen: i.value,
599
- toggle: () => i.value = !i.value
542
+ s(e.$slots, "mobile-trigger", {
543
+ isOpen: a.value,
544
+ toggle: () => a.value = !a.value
600
545
  }, () => [
601
- r("button", {
546
+ t("button", {
602
547
  type: "button",
603
548
  ref_key: "mobileTriggerRef",
604
- ref: C,
549
+ ref: $,
605
550
  class: n(["p-2 -mr-2 text-muted-foreground hover:bg-accent rounded-md", l.mobileTriggerClass]),
606
- onClick: s[7] || (s[7] = (u) => i.value = !i.value)
551
+ onClick: o[7] || (o[7] = (d) => a.value = !a.value)
607
552
  }, [
608
- m(B, {
553
+ b(z, {
609
554
  icon: "lucide:menu",
610
555
  class: "w-5 h-5"
611
556
  }),
612
- s[19] || (s[19] = r("span", { class: "sr-only" }, "Open Menu", -1))
557
+ o[16] || (o[16] = t("span", { class: "sr-only" }, "Open Menu", -1))
613
558
  ], 2)
614
559
  ])
615
560
  ], 2),
616
- r("div", {
561
+ t("div", {
617
562
  class: n(f.value.desktopSidebar)
618
563
  }, [
619
- e.$slots?.logo ? (t(), a("div", {
620
- key: 0,
621
- class: n(["py-4.5 flex items-center px-4.5 z-10", l.logoClass])
622
- }, [
623
- o(e.$slots, "logo", {}, () => [
624
- s[20] || (s[20] = r("div", { class: "font-bold text-xl truncate" }, "Brand", -1))
625
- ])
626
- ], 2)) : d("", !0),
627
- r("div", {
564
+ t("div", {
628
565
  class: n(["flex-1 px-2.5 pt-0 pb-4 overflow-y-auto space-y-4 scrollbar-thin", l.contentClass])
629
566
  }, [
630
- o(e.$slots, "left"),
631
- o(e.$slots, "default"),
632
- o(e.$slots, "center")
567
+ s(e.$slots, "left"),
568
+ s(e.$slots, "default"),
569
+ s(e.$slots, "center")
633
570
  ], 2),
634
- e.$slots?.right ? (t(), a("div", {
635
- key: 1,
571
+ e.$slots?.right ? (r(), i("div", {
572
+ key: 0,
636
573
  class: n(["p-2 border-t border-border shrink-0 bg-background mt-auto", l.rightClass])
637
574
  }, [
638
- o(e.$slots, "right")
639
- ], 2)) : d("", !0)
575
+ s(e.$slots, "right")
576
+ ], 2)) : u("", !0)
640
577
  ], 2)
641
578
  ], 64)),
642
- l.mobileMenuVariant === "dropdown" ? (t(), a(x, { key: 2 }, [
643
- i.value ? (t(), a("div", {
579
+ l.mobileMenuVariant === "dropdown" ? (r(), i(x, { key: 2 }, [
580
+ a.value ? (r(), i("div", {
644
581
  key: 0,
645
582
  ref_key: "mobileMenuRef",
646
- ref: V,
583
+ ref: B,
647
584
  class: n(["absolute top-[calc(100%_+_1px)] left-0 w-full bg-body border border-border/50 shadow-xl z-50 flex flex-col transition-all duration-300 origin-top overflow-hidden will-change-transform", l.menuClass])
648
585
  }, [
649
- r("div", Ee, [
650
- o(e.$slots, "mobile-menu", {}, () => [
651
- r("div", Fe, [
652
- o(e.$slots, "left")
586
+ t("div", Re, [
587
+ s(e.$slots, "mobile-menu", {}, () => [
588
+ t("div", He, [
589
+ s(e.$slots, "left")
653
590
  ]),
654
- s[21] || (s[21] = r("div", { class: "h-px bg-border/50 my-1 mx-2" }, null, -1)),
655
- r("div", We, [
656
- o(e.$slots, "center")
591
+ o[17] || (o[17] = t("div", { class: "h-px bg-border/50 my-1 mx-2" }, null, -1)),
592
+ t("div", je, [
593
+ s(e.$slots, "center")
657
594
  ])
658
595
  ])
659
596
  ])
660
- ], 2)) : d("", !0)
661
- ], 64)) : (t(), $(R, {
597
+ ], 2)) : u("", !0)
598
+ ], 64)) : (r(), G(P, {
662
599
  key: 3,
663
- show: i.value,
664
- "onUpdate:show": s[8] || (s[8] = (u) => i.value = u),
600
+ show: a.value,
601
+ "onUpdate:show": o[8] || (o[8] = (d) => a.value = d),
665
602
  position: "left",
666
603
  size: "sm",
667
604
  triggerClass: f.value.mobileTrigger,
@@ -669,27 +606,27 @@ const ve = {
669
606
  headerClass: "pl-3! pr-4.5! py-3!",
670
607
  bodyClass: "p-0!"
671
608
  }, {
672
- header: v(() => [
673
- o(e.$slots, "logo", {}, () => [
674
- s[22] || (s[22] = P("Brand", -1))
609
+ header: g(() => [
610
+ s(e.$slots, "logo", {}, () => [
611
+ o[18] || (o[18] = L("Brand", -1))
675
612
  ])
676
613
  ]),
677
- default: v(() => [
678
- r("div", Ye, [
679
- g.variant === "header" ? (t(), a("div", qe, [
680
- o(e.$slots, "mobile-menu", {}, () => [
681
- o(e.$slots, "left"),
682
- s[23] || (s[23] = r("div", { class: "h-px bg-border my-2" }, null, -1)),
683
- o(e.$slots, "center")
614
+ default: g(() => [
615
+ t("div", Ie, [
616
+ v.variant === "header" ? (r(), i("div", Ue, [
617
+ s(e.$slots, "mobile-menu", {}, () => [
618
+ s(e.$slots, "left"),
619
+ o[19] || (o[19] = t("div", { class: "h-px bg-border my-2" }, null, -1)),
620
+ s(e.$slots, "center")
684
621
  ])
685
- ])) : (t(), a("div", Ge, [
686
- o(e.$slots, "left"),
687
- o(e.$slots, "default"),
688
- o(e.$slots, "center")
622
+ ])) : (r(), i("div", Ee, [
623
+ s(e.$slots, "left"),
624
+ s(e.$slots, "default"),
625
+ s(e.$slots, "center")
689
626
  ])),
690
- e.$slots?.right ? (t(), a("div", Je, [
691
- o(e.$slots, "right")
692
- ])) : d("", !0)
627
+ e.$slots?.right ? (r(), i("div", De, [
628
+ s(e.$slots, "right")
629
+ ])) : u("", !0)
693
630
  ])
694
631
  ]),
695
632
  _: 3
@@ -698,5 +635,5 @@ const ve = {
698
635
  }
699
636
  });
700
637
  export {
701
- nl as default
638
+ el as default
702
639
  };
@@ -11,7 +11,7 @@ import "v-datepicker-lite";
11
11
  import "v-datepicker-lite/style.css";
12
12
  import "@jaames/iro";
13
13
  import "@vueuse/core";
14
- /* empty css */
14
+ /* empty css */
15
15
  import "iconify-icon-picker";
16
16
  import "iconify-icon-picker/style.css";
17
17
  /* empty css */
@@ -20,5 +20,6 @@ declare const _default: import('vue').DefineComponent<SidebarMenuProps, {}, {},
20
20
  nestedMenuWidth: string;
21
21
  nestedMenuMaxHeight: string;
22
22
  showTooltip: boolean;
23
+ forceTreeView: boolean;
23
24
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLElement>;
24
25
  export default _default;
@@ -1,9 +1,9 @@
1
- import { defineComponent as E, inject as N, ref as w, computed as l, watch as T, reactive as P, provide as L, openBlock as x, createElementBlock as k, normalizeClass as O, Fragment as W, renderList as H, createBlock as A } from "vue";
1
+ import { defineComponent as P, inject as N, ref as T, computed as l, watch as B, reactive as L, provide as O, openBlock as g, createElementBlock as k, normalizeClass as W, Fragment as H, renderList as R, createBlock as A } from "vue";
2
2
  import { useRoute as F } from "vue-router";
3
- import { useBreakpoints as R, breakpointsTailwind as _ } from "@vueuse/core";
3
+ import { useBreakpoints as V, breakpointsTailwind as _ } from "@vueuse/core";
4
4
  import j from "./SidebarMenuItem.vue.js";
5
5
  /* empty css */
6
- const U = /* @__PURE__ */ E({
6
+ const U = /* @__PURE__ */ P({
7
7
  __name: "SidebarMenu",
8
8
  props: {
9
9
  items: { default: () => [] },
@@ -26,121 +26,123 @@ const U = /* @__PURE__ */ E({
26
26
  menuOffset: { default: () => [0, 10] },
27
27
  orientation: { default: "vertical" },
28
28
  mobileBreakpoint: { default: "none" },
29
- showTooltip: { type: Boolean, default: !0 }
29
+ showTooltip: { type: Boolean, default: !0 },
30
+ forceTreeView: { type: Boolean, default: !1 }
30
31
  },
31
32
  setup(m) {
32
- const c = N("navbar-context", null), a = m, f = F(), B = R(_), o = w([...a.defaultExpanded]), v = w(null), y = l(() => !a.mobileBreakpoint || a.mobileBreakpoint === "none" ? !0 : B.greaterOrEqual(a.mobileBreakpoint).value), h = l(() => y.value && a.orientation || "vertical"), p = (e) => e.id || (typeof e.to == "string" ? e.to : null) || e.label, b = (e, n) => {
33
+ const d = N("navbar-context", null), t = m, f = F(), y = V(_), s = T([...t.defaultExpanded]), v = T(null), z = l(() => !t.mobileBreakpoint || t.mobileBreakpoint === "none" ? !0 : y.greaterOrEqual(t.mobileBreakpoint).value), h = l(() => z.value && t.orientation || "vertical"), x = l(() => t.forceTreeView ? !1 : !!d?.renderNestedTabs?.value), p = (e) => e.id || (typeof e.to == "string" ? e.to : null) || e.label, b = (e, n) => {
33
34
  if (!e.to) return !1;
34
- const t = typeof e.to == "string" ? e.to : e.to.path;
35
- if (!t) return !1;
36
- if (n === t) return !0;
37
- if (t !== "/" && t.length > 1 && n.startsWith(t)) {
38
- const i = n[t.length];
35
+ const a = typeof e.to == "string" ? e.to : e.to.path;
36
+ if (!a) return !1;
37
+ if (n === a) return !0;
38
+ if (a !== "/" && a.length > 1 && n.startsWith(a)) {
39
+ const i = n[a.length];
39
40
  return !i || i === "/" || i === "?";
40
41
  }
41
42
  return !1;
42
- }, g = (e, n, t = []) => {
43
+ }, w = (e, n, a = []) => {
43
44
  for (const i of e) {
44
45
  const u = p(i);
45
46
  if (i.children?.length) {
46
- const r = g(i.children, n, [...t, u]);
47
+ const r = w(i.children, n, [...a, u]);
47
48
  if (r !== null)
48
- return o.value.includes(u) || o.value.push(u), r;
49
+ return s.value.includes(u) || s.value.push(u), r;
49
50
  }
50
51
  if (b(i, n))
51
- return t.forEach((r) => {
52
- o.value.includes(r) || o.value.push(r);
52
+ return a.forEach((r) => {
53
+ s.value.includes(r) || s.value.push(r);
53
54
  }), u;
54
55
  }
55
56
  return null;
56
57
  }, C = (e, n) => {
57
- for (const t of a.items) {
58
- if (!t.children?.length || !(b(t, e) || t.children.some(
59
- (s) => b(s, e) || s.children?.some((d) => b(d, e))
58
+ for (const a of t.items) {
59
+ if (!a.children?.length || !(b(a, e) || a.children.some(
60
+ (o) => b(o, e) || o.children?.some((c) => b(c, e))
60
61
  ))) continue;
61
- const u = t.children.map((s) => ({
62
- label: s.label,
63
- labelI18n: s.labelI18n,
64
- value: p(s),
65
- icon: s.icon,
66
- disabled: s.disabled,
67
- to: s.to,
68
- href: s.href
62
+ const u = a.children.map((o) => ({
63
+ label: o.label,
64
+ labelI18n: o.labelI18n,
65
+ value: p(o),
66
+ icon: o.icon,
67
+ disabled: o.disabled,
68
+ to: o.to,
69
+ href: o.href
69
70
  }));
70
71
  let r = u[0]?.value ?? "";
71
72
  if (n) {
72
- const s = u.find((d) => d.value === n);
73
- if (s)
74
- r = s.value;
73
+ const o = u.find((c) => c.value === n);
74
+ if (o)
75
+ r = o.value;
75
76
  else {
76
- const d = t.children.find(
77
- (S) => S.children?.some((I) => p(I) === n)
77
+ const c = a.children.find(
78
+ (I) => I.children?.some((E) => p(E) === n)
78
79
  );
79
- d && (r = p(d));
80
+ c && (r = p(c));
80
81
  }
81
82
  }
82
83
  return { tabs: u, activeTab: r };
83
84
  }
84
85
  return null;
85
86
  }, M = (e) => {
86
- const n = g(a.items, e);
87
- if (v.value = n, !c?.renderNestedTabs?.value) return;
88
- const t = C(e, n);
89
- t ? c.setNestedTabs(t.tabs, t.activeTab) : c.setNestedTabs([], "");
87
+ const n = w(t.items, e);
88
+ if (v.value = n, !x.value) return;
89
+ const a = C(e, n);
90
+ a ? d.setNestedTabs(a.tabs, a.activeTab) : d.setNestedTabs([], "");
90
91
  };
91
- T(
92
+ B(
92
93
  () => f?.path,
93
94
  (e) => {
94
95
  e && M(e);
95
96
  },
96
97
  { immediate: !0 }
97
- ), T(
98
- () => a.items,
98
+ ), B(
99
+ () => t.items,
99
100
  () => {
100
101
  f?.path && M(f.path);
101
102
  },
102
103
  { deep: !0 }
103
104
  );
104
- const z = P({
105
+ const S = L({
105
106
  activeItem: v,
106
- expandedItems: o,
107
+ expandedItems: s,
107
108
  toggleExpand: (e) => {
108
- o.value.includes(e) ? o.value = o.value.filter((t) => t !== e) : a.allowMultiple ? o.value.push(e) : o.value = [e];
109
+ s.value.includes(e) ? s.value = s.value.filter((a) => a !== e) : t.allowMultiple ? s.value.push(e) : s.value = [e];
109
110
  },
110
111
  setActive: (e) => {
111
- if (v.value = e, c?.renderNestedTabs?.value && f?.path) {
112
+ if (v.value = e, x.value && f?.path) {
112
113
  const n = C(f.path, e);
113
- n ? c.setNestedTabs(n.tabs, n.activeTab) : c.setNestedTabs([], "");
114
+ n ? d.setNestedTabs(n.tabs, n.activeTab) : d.setNestedTabs([], "");
114
115
  }
115
116
  },
116
- indentSize: l(() => a.indentSize),
117
- variant: l(() => a.variant),
118
- renderMode: l(() => a.renderMode || "tree"),
119
- renderNestedTabs: l(() => !!c?.renderNestedTabs?.value),
120
- compact: l(() => a.compact),
121
- showCompactLabels: l(() => a.showCompactLabels),
122
- iconSize: l(() => a.iconSize),
123
- compactIconSize: l(() => a.compactIconSize),
124
- labelClass: l(() => a.labelClass),
125
- compactLabelClass: l(() => a.compactLabelClass),
126
- itemPadding: l(() => a.itemPadding),
127
- compactItemPadding: l(() => a.compactItemPadding),
128
- nestedMenuWidth: l(() => a.nestedMenuWidth),
129
- nestedMenuMaxHeight: l(() => a.nestedMenuMaxHeight),
117
+ indentSize: l(() => t.indentSize),
118
+ variant: l(() => t.variant),
119
+ renderMode: l(() => t.renderMode || "tree"),
120
+ // Expose the effective value so SidebarMenuItem respects forceTreeView
121
+ renderNestedTabs: x,
122
+ compact: l(() => t.compact),
123
+ showCompactLabels: l(() => t.showCompactLabels),
124
+ iconSize: l(() => t.iconSize),
125
+ compactIconSize: l(() => t.compactIconSize),
126
+ labelClass: l(() => t.labelClass),
127
+ compactLabelClass: l(() => t.compactLabelClass),
128
+ itemPadding: l(() => t.itemPadding),
129
+ compactItemPadding: l(() => t.compactItemPadding),
130
+ nestedMenuWidth: l(() => t.nestedMenuWidth),
131
+ nestedMenuMaxHeight: l(() => t.nestedMenuMaxHeight),
130
132
  currentOrientation: h,
131
- showTooltip: l(() => a.showTooltip)
133
+ showTooltip: l(() => t.showTooltip)
132
134
  });
133
- return L("sidebar-menu-ctx", z), (e, n) => (x(), k("nav", {
134
- class: O(["flex w-full transition-all duration-300", [
135
+ return O("sidebar-menu-ctx", S), (e, n) => (g(), k("nav", {
136
+ class: W(["flex w-full transition-all duration-300", [
135
137
  h.value === "horizontal" ? "flex-row flex-wrap gap-2 items-center" : "flex-col",
136
- h.value === "vertical" && !a.compact ? "space-y-1" : ""
138
+ h.value === "vertical" && !t.compact ? "space-y-1" : ""
137
139
  ]]),
138
140
  role: "tree",
139
141
  "aria-label": "Sidebar Menu"
140
142
  }, [
141
- (x(!0), k(W, null, H(m.items, (t) => (x(), A(j, {
142
- key: t.id || t.label,
143
- item: t,
143
+ (g(!0), k(H, null, R(m.items, (a) => (g(), A(j, {
144
+ key: a.id || a.label,
145
+ item: a,
144
146
  itemClass: m.itemClass,
145
147
  menuOffset: m.menuOffset
146
148
  }, null, 8, ["item", "itemClass", "menuOffset"]))), 128))
@@ -38,6 +38,11 @@ export interface SidebarMenuProps {
38
38
  orientation?: 'vertical' | 'horizontal';
39
39
  mobileBreakpoint?: 'sm' | 'md' | 'lg' | 'xl' | 'none';
40
40
  showTooltip?: boolean;
41
+ /**
42
+ * When true, forces tree view rendering regardless of the navbar's renderNestedTabs context.
43
+ * Useful for showing the full tree on small screens even when renderNestedTabs is active.
44
+ */
45
+ forceTreeView?: boolean;
41
46
  }
42
47
  export interface SidebarMenuContext {
43
48
  activeItem: string | null;
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "private": false,
4
4
  "description": "A Vue 3 UI component library built with Tailwind CSS.",
5
5
  "license": "MIT",
6
- "version": "0.6.10",
6
+ "version": "0.6.11",
7
7
  "type": "module",
8
8
  "main": "index.js",
9
9
  "module": "index.js",