@code-coaching/vuetiful 0.22.0 → 0.23.1

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.
Files changed (107) hide show
  1. package/README.md +1 -1
  2. package/dist/style.css +2 -2
  3. package/dist/types/components/VBootstrap.vue.d.ts +15 -0
  4. package/dist/types/components/atoms/VAvatar.vue.d.ts +37 -10
  5. package/dist/types/components/atoms/VBadge.vue.d.ts +22 -1
  6. package/dist/types/components/atoms/VButton.vue.d.ts +27 -0
  7. package/dist/types/components/atoms/VChip.vue.d.ts +22 -1
  8. package/dist/types/components/atoms/VRadio/VRadioGroup.vue.d.ts +10 -1
  9. package/dist/types/components/atoms/VRadio/VRadioItem.vue.d.ts +2 -2
  10. package/dist/types/components/atoms/VSwitch/VSwitch.vue.d.ts +24 -15
  11. package/dist/types/components/atoms/index.d.ts +1 -2
  12. package/dist/types/components/molecules/VAccordion/VAccordion.vue.d.ts +15 -6
  13. package/dist/types/components/molecules/VAccordion/VAccordionItem.vue.d.ts +11 -1
  14. package/dist/types/components/molecules/VAlert.vue.d.ts +39 -3
  15. package/dist/types/components/molecules/VCard/VCard.vue.d.ts +5 -5
  16. package/dist/types/components/molecules/VCard/VCardBody.vue.d.ts +13 -1
  17. package/dist/types/components/molecules/VCard/VCardFooter.vue.d.ts +22 -1
  18. package/dist/types/components/molecules/VCard/VCardHeader.vue.d.ts +22 -1
  19. package/dist/types/components/{atoms → molecules}/VCodeBlock.vue.d.ts +36 -9
  20. package/dist/types/components/molecules/VListbox/VListbox.vue.d.ts +51 -14
  21. package/dist/types/components/molecules/VListbox/VListboxItem.vue.d.ts +13 -3
  22. package/dist/types/components/molecules/VListbox/VListboxItems.vue.d.ts +9 -0
  23. package/dist/types/components/molecules/VTabs/VTab.vue.d.ts +9 -0
  24. package/dist/types/components/molecules/VTabs/VTabs.vue.d.ts +18 -0
  25. package/dist/types/components/molecules/index.d.ts +4 -3
  26. package/dist/types/props/index.d.ts +1 -0
  27. package/dist/types/props/props.d.ts +14 -0
  28. package/dist/types/services/index.d.ts +5 -3
  29. package/dist/types/services/settings.service.d.ts +132 -0
  30. package/dist/types/services/settings.service.test.d.ts +1 -0
  31. package/dist/types/types/index.d.ts +53 -0
  32. package/dist/types/utils/theme/theme-switcher.vue.d.ts +22 -62
  33. package/dist/vuetiful.es.mjs +981 -680
  34. package/dist/vuetiful.umd.js +21 -16
  35. package/package.json +1 -1
  36. package/src/components/VBootstrap.vue +62 -0
  37. package/src/components/atoms/VAvatar.test.ts +98 -28
  38. package/src/components/atoms/VAvatar.vue +46 -13
  39. package/src/components/atoms/VBadge.test.ts +10 -0
  40. package/src/components/atoms/VBadge.vue +13 -1
  41. package/src/components/atoms/VButton.test.ts +58 -0
  42. package/src/components/atoms/VButton.vue +31 -2
  43. package/src/components/atoms/VChip.test.ts +26 -11
  44. package/src/components/atoms/VChip.vue +13 -1
  45. package/src/components/atoms/VRadio/VRadioDescription.vue +1 -1
  46. package/src/components/atoms/VRadio/VRadioGroup.test.ts +7 -7
  47. package/src/components/atoms/VRadio/VRadioGroup.vue +16 -5
  48. package/src/components/atoms/VRadio/VRadioItem.vue +12 -8
  49. package/src/components/atoms/VRadio/VRadioLabel.vue +1 -1
  50. package/src/components/atoms/VSwitch/VSwitch.test.ts +20 -18
  51. package/src/components/atoms/VSwitch/VSwitch.vue +29 -17
  52. package/src/components/atoms/VSwitch/VSwitchDescription.vue +1 -1
  53. package/src/components/atoms/VSwitch/VSwitchGroup.vue +2 -2
  54. package/src/components/atoms/VSwitch/VSwitchLabel.vue +1 -1
  55. package/src/components/atoms/index.ts +0 -2
  56. package/src/components/molecules/VAccordion/VAccordion.test.ts +11 -0
  57. package/src/components/molecules/VAccordion/VAccordion.vue +16 -7
  58. package/src/components/molecules/VAccordion/VAccordionItem.test.ts +65 -16
  59. package/src/components/molecules/VAccordion/VAccordionItem.vue +53 -32
  60. package/src/components/molecules/VAlert.test.ts +11 -1
  61. package/src/components/molecules/VAlert.vue +33 -7
  62. package/src/components/molecules/VCard/VCard.test.ts +1 -1
  63. package/src/components/molecules/VCard/VCard.vue +12 -7
  64. package/src/components/molecules/VCard/VCardBody.test.ts +18 -0
  65. package/src/components/molecules/VCard/VCardBody.vue +16 -1
  66. package/src/components/molecules/VCard/VCardFooter.test.ts +18 -0
  67. package/src/components/molecules/VCard/VCardFooter.vue +21 -3
  68. package/src/components/molecules/VCard/VCardHeader.test.ts +18 -0
  69. package/src/components/molecules/VCard/VCardHeader.vue +26 -5
  70. package/src/components/molecules/VCodeBlock.test.ts +133 -0
  71. package/src/components/molecules/VCodeBlock.vue +120 -0
  72. package/src/components/molecules/VListbox/VListbox.test.ts +42 -15
  73. package/src/components/molecules/VListbox/VListbox.vue +44 -15
  74. package/src/components/molecules/VListbox/VListboxButton.test.ts +15 -6
  75. package/src/components/molecules/VListbox/VListboxButton.vue +10 -1
  76. package/src/components/molecules/VListbox/VListboxItem.test.ts +2 -2
  77. package/src/components/molecules/VListbox/VListboxItem.vue +18 -7
  78. package/src/components/molecules/VListbox/VListboxItems.test.ts +2 -2
  79. package/src/components/molecules/VListbox/VListboxItems.vue +18 -5
  80. package/src/components/molecules/VListbox/VListboxLabel.test.ts +1 -2
  81. package/src/components/molecules/VListbox/VListboxLabel.vue +1 -1
  82. package/src/components/molecules/VPreview.vue +9 -5
  83. package/src/components/molecules/{VRail.test.ts → VRail/VRail.test.ts} +1 -1
  84. package/src/components/molecules/{VRail.vue → VRail/VRail.vue} +6 -6
  85. package/src/components/molecules/VRail/VRailTile.test.ts +99 -0
  86. package/src/components/molecules/{VRailTile.vue → VRail/VRailTile.vue} +4 -6
  87. package/src/components/molecules/VTabs/VTab.test.ts +7 -3
  88. package/src/components/molecules/VTabs/VTab.vue +20 -5
  89. package/src/components/molecules/VTabs/VTabPanel.vue +2 -2
  90. package/src/components/molecules/VTabs/VTabs.test.ts +4 -2
  91. package/src/components/molecules/VTabs/VTabs.vue +32 -8
  92. package/src/components/molecules/index.ts +5 -2
  93. package/src/props/index.ts +1 -0
  94. package/src/props/props.ts +62 -0
  95. package/src/services/index.ts +5 -3
  96. package/src/services/settings.service.test.ts +17 -0
  97. package/src/services/settings.service.ts +136 -0
  98. package/src/types/index.ts +58 -0
  99. package/src/utils/theme/theme-switcher.vue +61 -131
  100. package/src/components/atoms/VCodeBlock.test.ts +0 -14
  101. package/src/components/atoms/VCodeBlock.vue +0 -92
  102. package/src/components/molecules/VRailTile.test.ts +0 -14
  103. /package/dist/types/components/{atoms → molecules}/VCodeBlock.test.d.ts +0 -0
  104. /package/dist/types/components/molecules/{VRail.test.d.ts → VRail/VRail.test.d.ts} +0 -0
  105. /package/dist/types/components/molecules/{VRail.vue.d.ts → VRail/VRail.vue.d.ts} +0 -0
  106. /package/dist/types/components/molecules/{VRailTile.test.d.ts → VRail/VRailTile.test.d.ts} +0 -0
  107. /package/dist/types/components/molecules/{VRailTile.vue.d.ts → VRail/VRailTile.vue.d.ts} +0 -0
@@ -1,20 +1,79 @@
1
- import { defineComponent, ref, computed, useAttrs, openBlock, createElementBlock, normalizeClass, createElementVNode, unref, toDisplayString, renderSlot, createBlock, resolveDynamicComponent, withCtx, withDirectives, createTextVNode, onMounted, Fragment, cloneVNode, h as h$1, inject, provide, watchEffect, onUnmounted, watch, nextTick, toRaw, createCommentVNode, reactive, readonly, toRefs, createVNode, Transition, renderList, pushScopeId, popScopeId, isRef, vShow, resolveComponent } from "vue";
2
- const _hoisted_1$h = ["src", "alt"];
3
- const _hoisted_2$9 = {
4
- key: 1,
5
- class: "avatar-initials h-full w-full",
6
- viewBox: "0 0 512 512"
1
+ import { defineComponent, ref, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, toDisplayString, readonly, reactive, renderSlot, createBlock, resolveDynamicComponent, withCtx, onMounted, Fragment, cloneVNode, h as h$1, inject, provide, watchEffect, onUnmounted, watch, nextTick, toRaw, createCommentVNode, toRefs, createVNode, Transition, renderList, createTextVNode, pushScopeId, popScopeId, isRef, withDirectives, vShow, useAttrs } from "vue";
2
+ const Variant = {
3
+ Filled: "filled",
4
+ FilledPrimary: "filled-primary",
5
+ FilledSecondary: "filled-secondary",
6
+ FilledTertiary: "filled-tertiary",
7
+ FilledSuccess: "filled-success",
8
+ FilledWarning: "filled-warning",
9
+ FilledError: "filled-error",
10
+ FilledSurface: "filled-surface",
11
+ Ringed: "ringed",
12
+ RingedPrimary: "ringed-primary",
13
+ RingedSecondary: "ringed-secondary",
14
+ RingedTertiary: "ringed-tertiary",
15
+ RingedSuccess: "ringed-success",
16
+ RingedWarning: "ringed-warning",
17
+ RingedError: "ringed-error",
18
+ RingedSurface: "ringed-surface",
19
+ Ghost: "ghost",
20
+ GhostPrimary: "ghost-primary",
21
+ GhostSecondary: "ghost-secondary",
22
+ GhostTertiary: "ghost-tertiary",
23
+ GhostSuccess: "ghost-success",
24
+ GhostWarning: "ghost-warning",
25
+ GhostError: "ghost-error",
26
+ GhostSurface: "ghost-surface",
27
+ Soft: "soft",
28
+ SoftPrimary: "soft-primary",
29
+ SoftSecondary: "soft-secondary",
30
+ SoftTertiary: "soft-tertiary",
31
+ SoftSuccess: "soft-success",
32
+ SoftWarning: "soft-warning",
33
+ SoftError: "soft-error",
34
+ SoftSurface: "soft-surface",
35
+ Glass: "glass",
36
+ GlassPrimary: "glass-primary",
37
+ GlassSecondary: "glass-secondary",
38
+ GlassTertiary: "glass-tertiary",
39
+ GlassSuccess: "glass-success",
40
+ GlassWarning: "glass-warning",
41
+ GlassError: "glass-error",
42
+ GlassSurface: "glass-surface"
43
+ };
44
+ const Size = {
45
+ XS: "xs",
46
+ SM: "sm",
47
+ MD: "md",
48
+ LG: "lg",
49
+ XL: "xl"
50
+ };
51
+ const sizeProp = {
52
+ type: String,
53
+ default: Size.MD
54
+ };
55
+ const unstyledProp = {
56
+ type: Boolean,
57
+ default: false
7
58
  };
59
+ const variantProp = {
60
+ type: String,
61
+ default: Variant.Filled
62
+ };
63
+ const _hoisted_1$b = ["src", "alt"];
8
64
  const _sfc_main$y = /* @__PURE__ */ defineComponent({
9
65
  __name: "VAvatar",
10
66
  props: {
11
67
  initials: { type: String, default: "" },
12
68
  fill: { type: String, default: "" },
69
+ classInitials: { type: String, default: "" },
13
70
  src: { type: String, default: "" },
14
71
  alt: { type: String, default: "" },
15
72
  fallback: { type: String, default: "" },
16
- width: { type: String, default: "w-16" },
17
- rounded: { type: String, default: "rounded-token" }
73
+ classImage: { type: String, default: "" },
74
+ size: sizeProp,
75
+ variant: variantProp,
76
+ unstyled: unstyledProp
18
77
  },
19
78
  setup(__props) {
20
79
  const props = __props;
@@ -22,24 +81,47 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
22
81
  const fillInitials = computed(() => {
23
82
  if (props.fill)
24
83
  return props.fill;
25
- const attrs = useAttrs();
26
- const classString = attrs.class;
27
- if (classString == null ? void 0 : classString.includes("variant-filled")) {
28
- return "fill-on-surface-token dark:fill-base-token";
84
+ const variantString = props.variant;
85
+ const type = variantString == null ? void 0 : variantString.split("-")[1];
86
+ if (variantString == null ? void 0 : variantString.includes("filled")) {
87
+ if (!type)
88
+ return "fill-white dark:fill-black";
89
+ return "fill-white";
90
+ }
91
+ return "fill-black dark:fill-white";
92
+ });
93
+ const avatarSize = computed(() => {
94
+ switch (props.size) {
95
+ case Size.XS:
96
+ return "w-8";
97
+ case Size.SM:
98
+ return "w-12";
99
+ case Size.MD:
100
+ return "w-16";
101
+ case Size.LG:
102
+ return "w-20";
103
+ case Size.XL:
104
+ return "w-24";
29
105
  }
30
- return "dark:fill-on-surface-token fill-base-token";
31
106
  });
107
+ const { settings: settings2 } = useSettings();
108
+ const isUnstyled = settings2.global.unstyled || settings2.components.avatar.unstyled || props.unstyled;
32
109
  return (_ctx, _cache) => {
33
110
  return openBlock(), createElementBlock("figure", {
34
- class: normalizeClass(`avatar isolate flex aspect-square items-center justify-center overflow-hidden font-semibold ${__props.rounded} ${__props.width}`)
111
+ "data-test": "avatar",
112
+ class: normalizeClass(`vuetiful-avatar ${unref(isUnstyled) ? "" : "isolate flex aspect-square items-center justify-center overflow-hidden font-semibold rounded-token"} ${unref(avatarSize)} variant-${__props.variant}`)
35
113
  }, [
36
114
  __props.src ? (openBlock(), createElementBlock("img", {
37
115
  key: 0,
38
- class: "avatar-image",
116
+ class: normalizeClass(`vuetiful-avatar-image ${__props.classImage}`),
39
117
  src: imgSrc.value,
40
118
  alt: __props.alt,
41
119
  onError: _cache[0] || (_cache[0] = () => imgSrc.value = __props.fallback)
42
- }, null, 40, _hoisted_1$h)) : (openBlock(), createElementBlock("svg", _hoisted_2$9, [
120
+ }, null, 42, _hoisted_1$b)) : (openBlock(), createElementBlock("svg", {
121
+ key: 1,
122
+ class: normalizeClass(`vuetiful-avatar-initials ${unref(isUnstyled) ? "" : "h-full w-full"} ${__props.classInitials}`),
123
+ viewBox: "0 0 512 512"
124
+ }, [
43
125
  createElementVNode("text", {
44
126
  x: "50%",
45
127
  y: "50%",
@@ -47,90 +129,128 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
47
129
  "text-anchor": "middle",
48
130
  "font-weight": "bold",
49
131
  "font-size": 150,
50
- class: normalizeClass(`avatar-text ${unref(fillInitials)}`)
132
+ class: normalizeClass(`vuetiful-avatar-text ${unref(fillInitials)}`)
51
133
  }, toDisplayString(String(__props.initials).substring(0, 2).toUpperCase()), 3)
52
- ]))
134
+ ], 2))
53
135
  ], 2);
54
136
  };
55
137
  }
56
138
  });
57
- var _export_sfc = (sfc, props) => {
58
- const target = sfc.__vccOpts || sfc;
59
- for (const [key, val] of props) {
60
- target[key] = val;
61
- }
62
- return target;
139
+ const usePlatform = () => {
140
+ const isBrowser2 = typeof window !== "undefined";
141
+ return {
142
+ isBrowser: isBrowser2
143
+ };
63
144
  };
64
- const _sfc_main$x = {};
65
- const _hoisted_1$g = {
66
- class: /* @__PURE__ */ normalizeClass(`vuetiful-badge badge`)
145
+ const { isBrowser: isBrowser$1 } = usePlatform();
146
+ const MODE = {
147
+ LIGHT: true,
148
+ DARK: false
67
149
  };
68
- function _sfc_render$4(_ctx, _cache) {
69
- return openBlock(), createElementBlock("div", _hoisted_1$g, [
70
- renderSlot(_ctx.$slots, "default")
71
- ]);
72
- }
73
- var VBadge = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["render", _sfc_render$4]]);
74
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
75
- __name: "VButton",
76
- props: {
77
- icon: {
78
- type: Boolean,
79
- default: false
80
- },
81
- tag: {
82
- type: String,
83
- default: "button"
150
+ const modeOsPrefers = ref(MODE.DARK);
151
+ const currentMode = ref(MODE.DARK);
152
+ const modeUserPrefers = ref(void 0);
153
+ const isDark = computed(() => currentMode.value === MODE.DARK);
154
+ const useDarkMode = () => {
155
+ const getModeOsPrefers = () => {
156
+ let prefersLightMode = false;
157
+ if (isBrowser$1)
158
+ prefersLightMode = window.matchMedia("(prefers-color-scheme: light)").matches;
159
+ setModeOsPrefers(prefersLightMode);
160
+ return prefersLightMode;
161
+ };
162
+ const getModeUserPrefers = () => {
163
+ if (isBrowser$1) {
164
+ const mode = localStorage.getItem("modeUserPrefers");
165
+ if (mode !== null)
166
+ modeUserPrefers.value = mode === "true";
84
167
  }
85
- },
86
- emits: ["click"],
87
- setup(__props, { emit }) {
88
- const activate = () => {
89
- emit("click");
90
- };
91
- const clickHandler = (event) => {
92
- event.preventDefault();
93
- activate();
94
- };
95
- const keydownHandler = (event) => {
96
- if (["Enter", " "].includes(event.key))
97
- event.preventDefault();
98
- if (event.key === "Enter")
99
- activate();
100
- };
101
- const keyupHandler = (event) => {
102
- if (event.key === " ") {
103
- event.preventDefault();
104
- activate();
105
- }
168
+ return modeUserPrefers.value;
169
+ };
170
+ const getModeAutoPrefers = () => {
171
+ const os = getModeOsPrefers();
172
+ const user = getModeUserPrefers();
173
+ if (user === void 0)
174
+ return os;
175
+ return user;
176
+ };
177
+ const setModeOsPrefers = (value) => {
178
+ modeOsPrefers.value = value;
179
+ if (isBrowser$1) {
180
+ localStorage.setItem("modeOsPrefers", value.toString());
181
+ }
182
+ };
183
+ const setModeUserPrefers = (value) => {
184
+ modeUserPrefers.value = value;
185
+ if (isBrowser$1) {
186
+ localStorage.setItem("modeUserPrefers", value.toString());
187
+ }
188
+ };
189
+ const setModeCurrent = (value) => {
190
+ const elemHtmlClasses = document.documentElement.classList;
191
+ const classDark = "dark";
192
+ value === MODE.LIGHT ? elemHtmlClasses.remove(classDark) : elemHtmlClasses.add(classDark);
193
+ currentMode.value = value;
194
+ };
195
+ const initializeMode = () => {
196
+ const mode = getModeAutoPrefers();
197
+ setModeCurrent(mode);
198
+ };
199
+ const autoModeWatcher = () => {
200
+ const mql = window.matchMedia("(prefers-color-scheme: light)");
201
+ const setMode = (value) => {
202
+ const elemHtmlClasses = document.documentElement.classList;
203
+ const classDark = `dark`;
204
+ value === MODE.LIGHT ? elemHtmlClasses.remove(classDark) : elemHtmlClasses.add(classDark);
205
+ setModeCurrent(value);
106
206
  };
107
- return (_ctx, _cache) => {
108
- return openBlock(), createBlock(resolveDynamicComponent(__props.tag), {
109
- tabindex: "0",
110
- role: "button",
111
- class: normalizeClass(`vuetiful-button ${__props.icon ? "btn-icon" : "btn"} border-token hover:cursor-pointer`),
112
- onClick: clickHandler,
113
- onKeydown: keydownHandler,
114
- onKeyup: keyupHandler
115
- }, {
116
- default: withCtx(() => [
117
- renderSlot(_ctx.$slots, "default")
118
- ]),
119
- _: 3
120
- }, 40, ["class"]);
207
+ setMode(mql.matches);
208
+ mql.onchange = () => {
209
+ setMode(mql.matches);
121
210
  };
122
- }
211
+ };
212
+ return {
213
+ modeOsPrefers: readonly(modeOsPrefers),
214
+ modeUserPrefers: readonly(modeUserPrefers),
215
+ currentMode: readonly(currentMode),
216
+ isDark: readonly(isDark),
217
+ getModeOsPrefers,
218
+ getModeUserPrefers,
219
+ getModeAutoPrefers,
220
+ setModeUserPrefers,
221
+ setModeCurrent,
222
+ autoModeWatcher,
223
+ initializeMode,
224
+ MODE
225
+ };
226
+ };
227
+ const drawer = reactive({
228
+ id: "default",
229
+ open: false,
230
+ position: "left",
231
+ duration: 300,
232
+ regionBackdrop: "",
233
+ regionDrawer: ""
123
234
  });
124
- const _sfc_main$v = {};
125
- const _hoisted_1$f = {
126
- class: /* @__PURE__ */ normalizeClass(`vuetiful-chip chip`)
235
+ const useDrawer = () => {
236
+ const open = (settings2) => {
237
+ var _a, _b, _c, _d, _e;
238
+ drawer.open = true;
239
+ drawer.id = (_a = settings2 == null ? void 0 : settings2.id) != null ? _a : "default";
240
+ drawer.duration = (_b = settings2 == null ? void 0 : settings2.duration) != null ? _b : 300;
241
+ drawer.regionBackdrop = (_c = settings2 == null ? void 0 : settings2.regionBackdrop) != null ? _c : "";
242
+ drawer.regionDrawer = (_d = settings2 == null ? void 0 : settings2.regionDrawer) != null ? _d : "";
243
+ drawer.position = (_e = settings2 == null ? void 0 : settings2.position) != null ? _e : "left";
244
+ };
245
+ const close = () => {
246
+ drawer.open = false;
247
+ };
248
+ return {
249
+ drawer: readonly(drawer),
250
+ open,
251
+ close
252
+ };
127
253
  };
128
- function _sfc_render$3(_ctx, _cache) {
129
- return openBlock(), createElementBlock("div", _hoisted_1$f, [
130
- renderSlot(_ctx.$slots, "default")
131
- ]);
132
- }
133
- var VChip = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render$3]]);
134
254
  var deepFreezeEs6 = { exports: {} };
135
255
  function deepFreeze(obj) {
136
256
  if (obj instanceof Map) {
@@ -46470,100 +46590,205 @@ const useHighlight = () => {
46470
46590
  highlight: highlight2
46471
46591
  };
46472
46592
  };
46473
- var githubDark = "";
46474
- const _hoisted_1$e = { class: "code-block max-w-full bg-neutral-900/90 text-sm text-white shadow rounded-container-token" };
46475
- const _hoisted_2$8 = {
46476
- class: /* @__PURE__ */ normalizeClass(`code-block-language`)
46593
+ const selectedRailTile = ref("");
46594
+ const useRail = () => {
46595
+ return {
46596
+ selectedRailTile
46597
+ };
46477
46598
  };
46478
- const _hoisted_3$5 = ["innerHTML"];
46479
- const _sfc_main$u = /* @__PURE__ */ defineComponent({
46480
- __name: "VCodeBlock",
46481
- props: {
46482
- language: {
46483
- type: String,
46484
- default: "plaintext"
46599
+ const settings = reactive({
46600
+ global: {
46601
+ unstyled: false
46602
+ },
46603
+ components: {
46604
+ radioGroup: {
46605
+ unstyled: false
46485
46606
  },
46486
- code: {
46487
- type: String,
46488
- default: ""
46607
+ radioItem: {
46608
+ unstyled: false
46489
46609
  },
46490
- preventOverflow: {
46491
- type: Boolean,
46492
- default: false
46610
+ switch: {
46611
+ unstyled: false
46493
46612
  },
46494
- headerClass: {
46495
- type: String,
46496
- default: ""
46613
+ avatar: {
46614
+ unstyled: false
46497
46615
  },
46498
- preClass: {
46499
- type: String,
46500
- default: ""
46616
+ badge: {
46617
+ unstyled: false
46501
46618
  },
46502
- buttonClass: {
46503
- type: String,
46504
- default: "btn-sm"
46619
+ button: {
46620
+ unstyled: false
46505
46621
  },
46506
- buttonText: {
46507
- type: String,
46508
- default: "Copy"
46622
+ chip: {
46623
+ unstyled: false
46509
46624
  },
46510
- buttonCopiedText: {
46511
- type: String,
46512
- default: "\u{1F44D}"
46625
+ codeBlock: {
46626
+ unstyled: false
46627
+ },
46628
+ listbox: {
46629
+ unstyled: false
46630
+ },
46631
+ listboxItem: {
46632
+ unstyled: false
46633
+ },
46634
+ accordion: {
46635
+ unstyled: false
46636
+ },
46637
+ accordionItem: {
46638
+ unstyled: false
46639
+ },
46640
+ alert: {
46641
+ unstyled: false
46642
+ },
46643
+ card: {
46644
+ unstyled: false
46645
+ },
46646
+ cardHeader: {
46647
+ unstyled: false
46648
+ },
46649
+ cardBody: {
46650
+ unstyled: false
46651
+ },
46652
+ cardFooter: {
46653
+ unstyled: false
46654
+ },
46655
+ tabs: {
46656
+ unstyled: false
46657
+ },
46658
+ tab: {
46659
+ unstyled: false
46513
46660
  }
46661
+ }
46662
+ });
46663
+ const useSettings = () => {
46664
+ const updateSettings = (partialSettings) => {
46665
+ for (const key in partialSettings) {
46666
+ if (key in settings) {
46667
+ Object.assign(settings[key], partialSettings[key]);
46668
+ }
46669
+ }
46670
+ };
46671
+ return {
46672
+ updateSettings,
46673
+ settings
46674
+ };
46675
+ };
46676
+ const _sfc_main$x = /* @__PURE__ */ defineComponent({
46677
+ __name: "VBadge",
46678
+ props: {
46679
+ variant: variantProp,
46680
+ unstyled: unstyledProp
46514
46681
  },
46515
- emits: ["copy"],
46682
+ setup(__props) {
46683
+ const props = __props;
46684
+ const { settings: settings2 } = useSettings();
46685
+ const isUnstyled = settings2.global.unstyled || settings2.components.badge.unstyled || props.unstyled;
46686
+ return (_ctx, _cache) => {
46687
+ return openBlock(), createElementBlock("div", {
46688
+ class: normalizeClass(`vuetiful-badge ${unref(isUnstyled) ? "" : "badge"} variant-${__props.variant}`)
46689
+ }, [
46690
+ renderSlot(_ctx.$slots, "default")
46691
+ ], 2);
46692
+ };
46693
+ }
46694
+ });
46695
+ const _sfc_main$w = /* @__PURE__ */ defineComponent({
46696
+ __name: "VButton",
46697
+ props: {
46698
+ icon: {
46699
+ type: Boolean,
46700
+ default: false
46701
+ },
46702
+ tag: {
46703
+ type: String,
46704
+ default: "button"
46705
+ },
46706
+ size: sizeProp,
46707
+ variant: variantProp,
46708
+ unstyled: unstyledProp
46709
+ },
46710
+ emits: ["click"],
46516
46711
  setup(__props, { emit }) {
46517
46712
  const props = __props;
46518
- const { highlight: highlight2 } = useHighlight();
46519
- const copyState = ref(false);
46520
- function languageFormatter(lang) {
46521
- if (lang === "js")
46522
- return "javascript";
46523
- if (lang === "ts")
46524
- return "typescript";
46525
- if (["sh", "bash", "zsh", "shell"].includes(lang))
46526
- return "console";
46527
- return lang;
46528
- }
46529
- function onCopyClick() {
46530
- copyState.value = true;
46531
- setTimeout(() => {
46532
- copyState.value = false;
46533
- }, 2e3);
46534
- emit("copy");
46535
- }
46713
+ const activate = () => {
46714
+ emit("click");
46715
+ };
46716
+ const clickHandler = (event) => {
46717
+ event.preventDefault();
46718
+ activate();
46719
+ };
46720
+ const keydownHandler = (event) => {
46721
+ if (["Enter", " "].includes(event.key))
46722
+ event.preventDefault();
46723
+ if (event.key === "Enter")
46724
+ activate();
46725
+ };
46726
+ const keyupHandler = (event) => {
46727
+ if (event.key === " ") {
46728
+ event.preventDefault();
46729
+ activate();
46730
+ }
46731
+ };
46732
+ const btnSize = computed(() => {
46733
+ switch (props.size) {
46734
+ case "xs":
46735
+ return "px-2.5 py-1.5 text-xs";
46736
+ case "sm":
46737
+ return "px-3 py-2 text-sm leading-4";
46738
+ case "md":
46739
+ return "px-4 py-2 text-sm";
46740
+ case "lg":
46741
+ return "px-4 py-2 text-base";
46742
+ case "xl":
46743
+ return "px-6 py-3 text-base";
46744
+ }
46745
+ });
46746
+ const { settings: settings2 } = useSettings();
46747
+ const isUnstyled = settings2.global.unstyled || settings2.components.button.unstyled || props.unstyled;
46536
46748
  return (_ctx, _cache) => {
46537
- return openBlock(), createElementBlock("div", _hoisted_1$e, [
46538
- createElementVNode("header", {
46539
- class: normalizeClass(`code-block-header flex items-center justify-between p-2 pb-0 pl-4 text-xs uppercase text-white/50 ${__props.headerClass}`)
46540
- }, [
46541
- createElementVNode("span", _hoisted_2$8, toDisplayString(languageFormatter(__props.language)), 1),
46542
- withDirectives((openBlock(), createBlock(unref(_sfc_main$w), {
46543
- class: normalizeClass(`code-block-btn ${__props.buttonClass}`),
46544
- onClick: _cache[0] || (_cache[0] = ($event) => onCopyClick())
46545
- }, {
46546
- default: withCtx(() => [
46547
- createTextVNode(toDisplayString(!copyState.value ? __props.buttonText : __props.buttonCopiedText), 1)
46548
- ]),
46549
- _: 1
46550
- }, 8, ["class"])), [
46551
- [unref(clipboard), props.code]
46552
- ])
46553
- ], 2),
46554
- createElementVNode("pre", {
46555
- class: normalizeClass(`code-block-pre ${__props.preventOverflow ? "whitespace-pre-wrap break-all" : "overflow-auto"} p-4 pt-1 ${__props.preClass}`)
46556
- }, [
46557
- createElementVNode("code", {
46558
- class: normalizeClass(`code-block-code language-${__props.language}`),
46559
- innerHTML: unref(highlight2)(props.code, props.language)
46560
- }, null, 10, _hoisted_3$5)
46561
- ], 2)
46562
- ]);
46749
+ return openBlock(), createBlock(resolveDynamicComponent(__props.tag), {
46750
+ tabindex: "0",
46751
+ role: "button",
46752
+ class: normalizeClass(`vuetiful-button ${unref(isUnstyled) ? "" : `${__props.icon ? "btn-icon" : "btn"} border-token hover:cursor-pointer`} ${unref(btnSize)} variant-${__props.variant}`),
46753
+ onClick: clickHandler,
46754
+ onKeydown: keydownHandler,
46755
+ onKeyup: keyupHandler
46756
+ }, {
46757
+ default: withCtx(() => [
46758
+ renderSlot(_ctx.$slots, "default")
46759
+ ]),
46760
+ _: 3
46761
+ }, 40, ["class"]);
46762
+ };
46763
+ }
46764
+ });
46765
+ const _sfc_main$v = /* @__PURE__ */ defineComponent({
46766
+ __name: "VChip",
46767
+ props: {
46768
+ unstyled: unstyledProp,
46769
+ variant: variantProp
46770
+ },
46771
+ setup(__props) {
46772
+ const props = __props;
46773
+ const { settings: settings2 } = useSettings();
46774
+ const isUnstyled = settings2.global.unstyled || settings2.components.chip.unstyled || props.unstyled;
46775
+ return (_ctx, _cache) => {
46776
+ return openBlock(), createElementBlock("div", {
46777
+ class: normalizeClass(`vuetiful-chip ${unref(isUnstyled) ? "" : "chip"} variant-${__props.variant}`)
46778
+ }, [
46779
+ renderSlot(_ctx.$slots, "default")
46780
+ ], 2);
46563
46781
  };
46564
46782
  }
46565
46783
  });
46566
- const _sfc_main$t = defineComponent({
46784
+ var _export_sfc = (sfc, props) => {
46785
+ const target = sfc.__vccOpts || sfc;
46786
+ for (const [key, val] of props) {
46787
+ target[key] = val;
46788
+ }
46789
+ return target;
46790
+ };
46791
+ const _sfc_main$u = defineComponent({
46567
46792
  props: {
46568
46793
  bgLight: {
46569
46794
  type: String,
@@ -46654,9 +46879,9 @@ const _sfc_main$t = defineComponent({
46654
46879
  };
46655
46880
  }
46656
46881
  });
46657
- const _hoisted_1$d = ["aria-checked", "title"];
46658
- const _hoisted_2$7 = ["d"];
46659
- function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
46882
+ const _hoisted_1$a = ["aria-checked", "title"];
46883
+ const _hoisted_2$6 = ["d"];
46884
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
46660
46885
  return openBlock(), createElementBlock("div", {
46661
46886
  class: normalizeClass(`lightswitch-track ${_ctx.classesTrack}`),
46662
46887
  onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onToggleHandler && _ctx.onToggleHandler(...args)),
@@ -46680,12 +46905,12 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
46680
46905
  createElementVNode("path", {
46681
46906
  fill: "currentColor",
46682
46907
  d: _ctx.currentMode ? _ctx.svgPath.sun : _ctx.svgPath.moon
46683
- }, null, 8, _hoisted_2$7)
46908
+ }, null, 8, _hoisted_2$6)
46684
46909
  ], 2))
46685
46910
  ], 2)
46686
- ], 42, _hoisted_1$d);
46911
+ ], 42, _hoisted_1$a);
46687
46912
  }
46688
- var VLightSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render$2]]);
46913
+ var VLightSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render]]);
46689
46914
  function u$2(r2, n2, ...a2) {
46690
46915
  if (r2 in n2) {
46691
46916
  let e2 = n2[r2];
@@ -47796,7 +48021,7 @@ let j = Symbol("TabsSSRContext"), xe = defineComponent({ name: "TabGroup", emits
47796
48021
  return !m2.value && a2.unmount && !a2.static ? h$1(f$1, { as: "span", ...h2 }) : H$2({ ourProps: h2, theirProps: w2, slot: r2, attrs: v2, slots: i2, features: N$1.Static | N$1.RenderStrategy, visible: m2.value, name: "TabPanel" });
47797
48022
  };
47798
48023
  } });
47799
- const _sfc_main$s = /* @__PURE__ */ defineComponent({
48024
+ const _sfc_main$t = /* @__PURE__ */ defineComponent({
47800
48025
  __name: "VRadioDescription",
47801
48026
  props: {
47802
48027
  as: {
@@ -47806,7 +48031,10 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
47806
48031
  },
47807
48032
  setup(__props) {
47808
48033
  return (_ctx, _cache) => {
47809
- return openBlock(), createBlock(unref(Se$1), { as: __props.as }, {
48034
+ return openBlock(), createBlock(unref(Se$1), {
48035
+ as: __props.as,
48036
+ class: "vuetiful-radio-group-description"
48037
+ }, {
47810
48038
  default: withCtx(() => [
47811
48039
  renderSlot(_ctx.$slots, "default")
47812
48040
  ]),
@@ -47815,7 +48043,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
47815
48043
  };
47816
48044
  }
47817
48045
  });
47818
- const _sfc_main$r = /* @__PURE__ */ defineComponent({
48046
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
47819
48047
  __name: "VRadioGroup",
47820
48048
  props: {
47821
48049
  as: {
@@ -47846,6 +48074,10 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
47846
48074
  type: String,
47847
48075
  default: "text-surface-900 dark:text-surface-50"
47848
48076
  },
48077
+ classItem: {
48078
+ type: String,
48079
+ default: ""
48080
+ },
47849
48081
  unstyled: {
47850
48082
  type: Boolean,
47851
48083
  default: false
@@ -47869,13 +48101,16 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
47869
48101
  );
47870
48102
  provide("active", props.active);
47871
48103
  provide("hover", props.hover);
48104
+ provide("classItem", props.classItem);
48105
+ const { settings: settings2 } = useSettings();
48106
+ const isUnstyled = settings2.global.unstyled || settings2.components.radioGroup.unstyled || props.unstyled;
47872
48107
  return (_ctx, _cache) => {
47873
48108
  return openBlock(), createBlock(unref(ke), {
47874
48109
  "data-test": "radio-group",
47875
48110
  as: __props.as,
47876
48111
  disabled: __props.disabled,
47877
48112
  by: __props.by,
47878
- class: normalizeClass(`${__props.unstyled ? "" : `radio-group ${__props.background} ${__props.text} inline-flex gap-1 p-1 border-token border-surface-400-500-token rounded-container-token`}`),
48113
+ class: normalizeClass(`vuetiful-radio-group inline-flex ${unref(isUnstyled) ? "" : `gap-1 p-1 border-token border-surface-400-500-token rounded-container-token`} ${__props.background} ${__props.text}`),
47879
48114
  modelValue: parentModelValue.value,
47880
48115
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => parentModelValue.value = $event)
47881
48116
  }, {
@@ -47887,7 +48122,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
47887
48122
  };
47888
48123
  }
47889
48124
  });
47890
- const _sfc_main$q = /* @__PURE__ */ defineComponent({
48125
+ const _sfc_main$r = /* @__PURE__ */ defineComponent({
47891
48126
  __name: "VRadioItem",
47892
48127
  props: {
47893
48128
  value: {
@@ -47900,14 +48135,18 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
47900
48135
  }
47901
48136
  },
47902
48137
  setup(__props) {
48138
+ const props = __props;
47903
48139
  const active = inject("active");
47904
48140
  const hover = inject("hover");
48141
+ const classItem = inject("classItem");
48142
+ const { settings: settings2 } = useSettings();
48143
+ const isUnstyled = settings2.global.unstyled || settings2.components.radioItem.unstyled || props.unstyled;
47905
48144
  return (_ctx, _cache) => {
47906
48145
  return openBlock(), createBlock(unref(Ee), { value: __props.value }, {
47907
48146
  default: withCtx(({ checked, disabled }) => [
47908
48147
  createElementVNode("div", {
47909
48148
  "data-test": "radio-item",
47910
- class: normalizeClass(`radio-item ${__props.unstyled ? "" : `px-4 py-1 text-center text-base rounded-token ${checked ? unref(active) : unref(hover)} ${disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"}`}`)
48149
+ class: normalizeClass(`vuetiful-radio-item ${unref(isUnstyled) ? "" : `px-4 py-1 text-center text-base rounded-token`} ${checked ? unref(active) : unref(hover)} ${disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"} ${unref(classItem)}`)
47911
48150
  }, [
47912
48151
  renderSlot(_ctx.$slots, "default")
47913
48152
  ], 2)
@@ -47917,7 +48156,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
47917
48156
  };
47918
48157
  }
47919
48158
  });
47920
- const _sfc_main$p = /* @__PURE__ */ defineComponent({
48159
+ const _sfc_main$q = /* @__PURE__ */ defineComponent({
47921
48160
  __name: "VRadioLabel",
47922
48161
  props: {
47923
48162
  as: {
@@ -47927,7 +48166,10 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
47927
48166
  },
47928
48167
  setup(__props) {
47929
48168
  return (_ctx, _cache) => {
47930
- return openBlock(), createBlock(unref(we), { as: __props.as }, {
48169
+ return openBlock(), createBlock(unref(we), {
48170
+ as: __props.as,
48171
+ class: "vuetiful-radio-label"
48172
+ }, {
47931
48173
  default: withCtx(() => [
47932
48174
  renderSlot(_ctx.$slots, "default")
47933
48175
  ]),
@@ -47936,11 +48178,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
47936
48178
  };
47937
48179
  }
47938
48180
  });
47939
- const _hoisted_1$c = {
48181
+ const _hoisted_1$9 = {
47940
48182
  key: 0,
47941
48183
  class: "sr-only"
47942
48184
  };
47943
- const _sfc_main$o = /* @__PURE__ */ defineComponent({
48185
+ const _sfc_main$p = /* @__PURE__ */ defineComponent({
47944
48186
  __name: "VSwitch",
47945
48187
  props: {
47946
48188
  modelValue: {
@@ -47951,15 +48193,11 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
47951
48193
  type: Boolean,
47952
48194
  default: false
47953
48195
  },
47954
- size: {
47955
- type: String,
47956
- default: "md"
47957
- },
47958
- switchClass: {
48196
+ classTrack: {
47959
48197
  type: String,
47960
48198
  default: "variant-filled"
47961
48199
  },
47962
- thumbClass: {
48200
+ classThumb: {
47963
48201
  type: String,
47964
48202
  default: "bg-surface-100-800-token"
47965
48203
  },
@@ -47970,7 +48208,9 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
47970
48208
  name: {
47971
48209
  type: String,
47972
48210
  default: ""
47973
- }
48211
+ },
48212
+ size: sizeProp,
48213
+ unstyled: unstyledProp
47974
48214
  },
47975
48215
  emits: ["update:modelValue"],
47976
48216
  setup(__props, { emit }) {
@@ -48000,13 +48240,14 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
48000
48240
  return "w-20 h-10";
48001
48241
  case "xl":
48002
48242
  return "w-24 h-12";
48003
- default:
48004
- return props.size;
48005
48243
  }
48006
48244
  });
48245
+ const { settings: settings2 } = useSettings();
48246
+ const isUnstyled = settings2.global.unstyled || settings2.components.switch.unstyled || props.unstyled;
48007
48247
  return (_ctx, _cache) => {
48008
48248
  return openBlock(), createBlock(unref(ue), {
48009
- class: normalizeClass(`slide-toggle rounded-container-token ${__props.disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"}`),
48249
+ "data-test": "switch",
48250
+ class: normalizeClass(`vuetiful-slide-toggle ${unref(isUnstyled) ? "" : `rounded-container-token ${__props.disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"}`}`),
48010
48251
  name: __props.name,
48011
48252
  as: __props.as,
48012
48253
  modelValue: parentModelValue.value,
@@ -48014,13 +48255,19 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
48014
48255
  }, {
48015
48256
  default: withCtx(({ checked }) => [
48016
48257
  createElementVNode("div", {
48017
- class: normalizeClass(`slide-toggle-track flex transition-all duration-[150ms] border-token rounded-token ${unref(trackSize)} ${__props.disabled ? "cursor-not-allowed" : "cursor-pointer"} ${__props.switchClass}`)
48258
+ "data-test": "switch-track",
48259
+ class: normalizeClass(`vuetiful-slide-toggle-track flex ${unref(isUnstyled) ? "" : `transition-all duration-[150ms] border-token rounded-token`}
48260
+ ${__props.disabled ? "cursor-not-allowed" : "cursor-pointer"}
48261
+ ${unref(trackSize)} ${__props.classTrack}`)
48018
48262
  }, [
48019
- _ctx.$slots.default ? (openBlock(), createElementBlock("span", _hoisted_1$c, [
48263
+ _ctx.$slots.default ? (openBlock(), createElementBlock("span", _hoisted_1$9, [
48020
48264
  renderSlot(_ctx.$slots, "default")
48021
48265
  ])) : createCommentVNode("", true),
48022
48266
  createElementVNode("div", {
48023
- class: normalizeClass(`slide-toggle-thumb h-full w-[50%] scale-[0.8] shadow transition-all duration-[150ms] rounded-token ${checked ? "translate-x-full" : "opacity-90"} ${__props.disabled ? "cursor-not-allowed" : "cursor-pointer"} ${__props.thumbClass} bg-opacity-90`)
48267
+ "data-test": "switch-thumb",
48268
+ class: normalizeClass(`vuetiful-slide-toggle-thumb w-[50%] scale-[0.8] ${unref(isUnstyled) ? "" : `bg-opactiy-90 shadow transition-all duration-[150ms] rounded-token `}
48269
+ ${__props.disabled ? "cursor-not-allowed" : "cursor-pointer"}
48270
+ ${checked ? "translate-x-full" : `${unref(isUnstyled) ? "" : "opacity-90"}`} ${__props.classThumb}`)
48024
48271
  }, null, 2)
48025
48272
  ], 2)
48026
48273
  ]),
@@ -48029,7 +48276,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
48029
48276
  };
48030
48277
  }
48031
48278
  });
48032
- const _sfc_main$n = /* @__PURE__ */ defineComponent({
48279
+ const _sfc_main$o = /* @__PURE__ */ defineComponent({
48033
48280
  __name: "VSwitchDescription",
48034
48281
  props: {
48035
48282
  as: {
@@ -48039,7 +48286,10 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
48039
48286
  },
48040
48287
  setup(__props) {
48041
48288
  return (_ctx, _cache) => {
48042
- return openBlock(), createBlock(unref(ce), { as: __props.as }, {
48289
+ return openBlock(), createBlock(unref(ce), {
48290
+ class: "vuetiful-switch-description",
48291
+ as: __props.as
48292
+ }, {
48043
48293
  default: withCtx(() => [
48044
48294
  renderSlot(_ctx.$slots, "default")
48045
48295
  ]),
@@ -48048,17 +48298,20 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
48048
48298
  };
48049
48299
  }
48050
48300
  });
48051
- const _sfc_main$m = /* @__PURE__ */ defineComponent({
48301
+ const _sfc_main$n = /* @__PURE__ */ defineComponent({
48052
48302
  __name: "VSwitchGroup",
48053
48303
  props: {
48054
48304
  as: {
48055
48305
  type: String,
48056
- default: "template"
48306
+ default: "div"
48057
48307
  }
48058
48308
  },
48059
48309
  setup(__props) {
48060
48310
  return (_ctx, _cache) => {
48061
- return openBlock(), createBlock(unref(ae), { as: __props.as }, {
48311
+ return openBlock(), createBlock(unref(ae), {
48312
+ class: "vuetiful-switch-group",
48313
+ as: __props.as
48314
+ }, {
48062
48315
  default: withCtx(() => [
48063
48316
  renderSlot(_ctx.$slots, "default")
48064
48317
  ]),
@@ -48067,7 +48320,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
48067
48320
  };
48068
48321
  }
48069
48322
  });
48070
- const _sfc_main$l = /* @__PURE__ */ defineComponent({
48323
+ const _sfc_main$m = /* @__PURE__ */ defineComponent({
48071
48324
  __name: "VSwitchLabel",
48072
48325
  props: {
48073
48326
  as: {
@@ -48082,6 +48335,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
48082
48335
  setup(__props) {
48083
48336
  return (_ctx, _cache) => {
48084
48337
  return openBlock(), createBlock(unref(de), {
48338
+ class: "vuetiful-switch-label",
48085
48339
  as: __props.as,
48086
48340
  passive: __props.passive
48087
48341
  }, {
@@ -48093,129 +48347,8 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
48093
48347
  };
48094
48348
  }
48095
48349
  });
48096
- const selectedRailTile = ref("");
48097
- const useRail = () => {
48098
- return {
48099
- selectedRailTile
48100
- };
48101
- };
48102
- const drawer = reactive({
48103
- id: "default",
48104
- open: false,
48105
- position: "left",
48106
- duration: 300,
48107
- regionBackdrop: "",
48108
- regionDrawer: ""
48109
- });
48110
- const useDrawer = () => {
48111
- const open = (settings) => {
48112
- var _a, _b, _c, _d, _e;
48113
- drawer.open = true;
48114
- drawer.id = (_a = settings == null ? void 0 : settings.id) != null ? _a : "default";
48115
- drawer.duration = (_b = settings == null ? void 0 : settings.duration) != null ? _b : 300;
48116
- drawer.regionBackdrop = (_c = settings == null ? void 0 : settings.regionBackdrop) != null ? _c : "";
48117
- drawer.regionDrawer = (_d = settings == null ? void 0 : settings.regionDrawer) != null ? _d : "";
48118
- drawer.position = (_e = settings == null ? void 0 : settings.position) != null ? _e : "left";
48119
- };
48120
- const close = () => {
48121
- drawer.open = false;
48122
- };
48123
- return {
48124
- drawer: readonly(drawer),
48125
- open,
48126
- close
48127
- };
48128
- };
48129
- const usePlatform = () => {
48130
- const isBrowser2 = typeof window !== "undefined";
48131
- return {
48132
- isBrowser: isBrowser2
48133
- };
48134
- };
48135
- const { isBrowser: isBrowser$1 } = usePlatform();
48136
- const MODE = {
48137
- LIGHT: true,
48138
- DARK: false
48139
- };
48140
- const modeOsPrefers = ref(MODE.DARK);
48141
- const currentMode = ref(MODE.DARK);
48142
- const modeUserPrefers = ref(void 0);
48143
- const isDark = computed(() => currentMode.value === MODE.DARK);
48144
- const useDarkMode = () => {
48145
- const getModeOsPrefers = () => {
48146
- let prefersLightMode = false;
48147
- if (isBrowser$1)
48148
- prefersLightMode = window.matchMedia("(prefers-color-scheme: light)").matches;
48149
- setModeOsPrefers(prefersLightMode);
48150
- return prefersLightMode;
48151
- };
48152
- const getModeUserPrefers = () => {
48153
- if (isBrowser$1) {
48154
- const mode = localStorage.getItem("modeUserPrefers");
48155
- if (mode !== null)
48156
- modeUserPrefers.value = mode === "true";
48157
- }
48158
- return modeUserPrefers.value;
48159
- };
48160
- const getModeAutoPrefers = () => {
48161
- const os = getModeOsPrefers();
48162
- const user = getModeUserPrefers();
48163
- if (user === void 0)
48164
- return os;
48165
- return user;
48166
- };
48167
- const setModeOsPrefers = (value) => {
48168
- modeOsPrefers.value = value;
48169
- if (isBrowser$1) {
48170
- localStorage.setItem("modeOsPrefers", value.toString());
48171
- }
48172
- };
48173
- const setModeUserPrefers = (value) => {
48174
- modeUserPrefers.value = value;
48175
- if (isBrowser$1) {
48176
- localStorage.setItem("modeUserPrefers", value.toString());
48177
- }
48178
- };
48179
- const setModeCurrent = (value) => {
48180
- const elemHtmlClasses = document.documentElement.classList;
48181
- const classDark = "dark";
48182
- value === MODE.LIGHT ? elemHtmlClasses.remove(classDark) : elemHtmlClasses.add(classDark);
48183
- currentMode.value = value;
48184
- };
48185
- const initializeMode = () => {
48186
- const mode = getModeAutoPrefers();
48187
- setModeCurrent(mode);
48188
- };
48189
- const autoModeWatcher = () => {
48190
- const mql = window.matchMedia("(prefers-color-scheme: light)");
48191
- const setMode = (value) => {
48192
- const elemHtmlClasses = document.documentElement.classList;
48193
- const classDark = `dark`;
48194
- value === MODE.LIGHT ? elemHtmlClasses.remove(classDark) : elemHtmlClasses.add(classDark);
48195
- setModeCurrent(value);
48196
- };
48197
- setMode(mql.matches);
48198
- mql.onchange = () => {
48199
- setMode(mql.matches);
48200
- };
48201
- };
48202
- return {
48203
- modeOsPrefers: readonly(modeOsPrefers),
48204
- modeUserPrefers: readonly(modeUserPrefers),
48205
- currentMode: readonly(currentMode),
48206
- isDark: readonly(isDark),
48207
- getModeOsPrefers,
48208
- getModeUserPrefers,
48209
- getModeAutoPrefers,
48210
- setModeUserPrefers,
48211
- setModeCurrent,
48212
- autoModeWatcher,
48213
- initializeMode,
48214
- MODE
48215
- };
48216
- };
48217
- const _hoisted_1$b = ["aria-labelledby", "aria-describedby"];
48218
- const _sfc_main$k = /* @__PURE__ */ defineComponent({
48350
+ const _hoisted_1$8 = ["aria-labelledby", "aria-describedby"];
48351
+ const _sfc_main$l = /* @__PURE__ */ defineComponent({
48219
48352
  __name: "VDrawer",
48220
48353
  props: {
48221
48354
  regionBackdrop: {
@@ -48279,7 +48412,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
48279
48412
  "aria-describedby": unref(describedby)
48280
48413
  }, [
48281
48414
  renderSlot(_ctx.$slots, "default")
48282
- ], 10, _hoisted_1$b)) : createCommentVNode("", true)
48415
+ ], 10, _hoisted_1$8)) : createCommentVNode("", true)
48283
48416
  ]),
48284
48417
  _: 3
48285
48418
  }, 8, ["name"]),
@@ -48303,9 +48436,9 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
48303
48436
  }
48304
48437
  });
48305
48438
  var VPreview_vue_vue_type_style_index_0_scoped_true_lang = "";
48306
- const _withScopeId$3 = (n2) => (pushScopeId("data-v-0d055d3d"), n2 = n2(), popScopeId(), n2);
48307
- const _hoisted_1$a = { class: "vuetiful-previewer overflow-hidden shadow-2xl shadow-surface-500/10 rounded-container-token dark:shadow-black/10" };
48308
- const _hoisted_2$6 = { class: "flex items-center gap-2" };
48439
+ const _withScopeId$3 = (n2) => (pushScopeId("data-v-73195296"), n2 = n2(), popScopeId(), n2);
48440
+ const _hoisted_1$7 = { class: "vuetiful-previewer overflow-hidden shadow-2xl shadow-surface-500/10 rounded-container-token dark:shadow-black/10" };
48441
+ const _hoisted_2$5 = { class: "flex items-center gap-2" };
48309
48442
  const _hoisted_3$4 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48310
48443
  class: "icon",
48311
48444
  xmlns: "http://www.w3.org/2000/svg",
@@ -48313,21 +48446,21 @@ const _hoisted_3$4 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ create
48313
48446
  }, [
48314
48447
  /* @__PURE__ */ createElementVNode("path", { d: "M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z" })
48315
48448
  ], -1));
48316
- const _hoisted_4$2 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48449
+ const _hoisted_4$1 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48317
48450
  class: "icon",
48318
48451
  xmlns: "http://www.w3.org/2000/svg",
48319
48452
  viewBox: "0 0 640 512"
48320
48453
  }, [
48321
48454
  /* @__PURE__ */ createElementVNode("path", { d: "M392.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm80.6 120.1c-12.5 12.5-12.5 32.8 0 45.3L562.7 256l-89.4 89.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0zm-306.7 0c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3l112 112c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256l89.4-89.4c12.5-12.5 12.5-32.8 0-45.3z" })
48322
48455
  ], -1));
48323
- const _hoisted_5$2 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48456
+ const _hoisted_5$1 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48324
48457
  class: "icon",
48325
48458
  xmlns: "http://www.w3.org/2000/svg",
48326
48459
  viewBox: "0 0 384 512"
48327
48460
  }, [
48328
48461
  /* @__PURE__ */ createElementVNode("path", { d: "M16 64C16 28.7 44.7 0 80 0H304c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H80c-35.3 0-64-28.7-64-64V64zM144 448c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16s-7.2-16-16-16H160c-8.8 0-16 7.2-16 16zM304 64H80V384H304V64z" })
48329
48462
  ], -1));
48330
- const _hoisted_6$2 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48463
+ const _hoisted_6$1 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ createElementVNode("svg", {
48331
48464
  class: "icon",
48332
48465
  xmlns: "http://www.w3.org/2000/svg",
48333
48466
  viewBox: "0 0 576 512"
@@ -48355,7 +48488,7 @@ const _hoisted_9$1 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ create
48355
48488
  }, [
48356
48489
  /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z" })
48357
48490
  ], -1));
48358
- const _sfc_main$j = /* @__PURE__ */ defineComponent({
48491
+ const _sfc_main$k = /* @__PURE__ */ defineComponent({
48359
48492
  __name: "VPreview",
48360
48493
  props: {
48361
48494
  hideMobileToggle: {
@@ -48411,17 +48544,17 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48411
48544
  const swatches = ref(false);
48412
48545
  const toggleSwatches = () => swatches.value = !swatches.value;
48413
48546
  return (_ctx, _cache) => {
48414
- return openBlock(), createElementBlock("div", _hoisted_1$a, [
48547
+ return openBlock(), createElementBlock("div", _hoisted_1$7, [
48415
48548
  createElementVNode("header", {
48416
48549
  class: normalizeClass(`vuetiful-previewer-header flex items-center justify-between gap-4 p-4 bg-surface-200-700-token ${__props.regionHeader}`)
48417
48550
  }, [
48418
- createElementVNode("div", _hoisted_2$6, [
48419
- createVNode(unref(_sfc_main$r), {
48551
+ createElementVNode("div", _hoisted_2$5, [
48552
+ createVNode(unref(_sfc_main$s), {
48420
48553
  modelValue: tabView.value,
48421
48554
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => tabView.value = $event)
48422
48555
  }, {
48423
48556
  default: withCtx(() => [
48424
- createVNode(unref(_sfc_main$q), {
48557
+ createVNode(unref(_sfc_main$r), {
48425
48558
  "data-test": "radio-item-preview",
48426
48559
  value: "preview",
48427
48560
  title: "Preview"
@@ -48433,14 +48566,14 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48433
48566
  ]),
48434
48567
  _: 3
48435
48568
  }),
48436
- createVNode(unref(_sfc_main$q), {
48569
+ createVNode(unref(_sfc_main$r), {
48437
48570
  "data-test": "radio-item-code",
48438
48571
  value: "code",
48439
48572
  title: "Code"
48440
48573
  }, {
48441
48574
  default: withCtx(() => [
48442
48575
  renderSlot(_ctx.$slots, "code-item", {}, () => [
48443
- _hoisted_4$2
48576
+ _hoisted_4$1
48444
48577
  ], true)
48445
48578
  ]),
48446
48579
  _: 3
@@ -48448,28 +48581,28 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48448
48581
  ]),
48449
48582
  _: 3
48450
48583
  }, 8, ["modelValue"]),
48451
- !__props.hideMobileToggle && tabView.value === "preview" ? (openBlock(), createBlock(unref(_sfc_main$r), {
48584
+ !__props.hideMobileToggle && tabView.value === "preview" ? (openBlock(), createBlock(unref(_sfc_main$s), {
48452
48585
  key: 0,
48453
48586
  class: "hidden sm:!inline-flex",
48454
48587
  modelValue: radioSize.value,
48455
48588
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => radioSize.value = $event)
48456
48589
  }, {
48457
48590
  default: withCtx(() => [
48458
- createVNode(unref(_sfc_main$q), {
48591
+ createVNode(unref(_sfc_main$r), {
48459
48592
  "data-test": "radio-item-mobile",
48460
48593
  value: "mobile"
48461
48594
  }, {
48462
48595
  default: withCtx(() => [
48463
48596
  renderSlot(_ctx.$slots, "mobile-item", {}, () => [
48464
- _hoisted_5$2
48597
+ _hoisted_5$1
48465
48598
  ], true)
48466
48599
  ]),
48467
48600
  _: 3
48468
48601
  }),
48469
- createVNode(unref(_sfc_main$q), { value: "full" }, {
48602
+ createVNode(unref(_sfc_main$r), { value: "full" }, {
48470
48603
  default: withCtx(() => [
48471
48604
  renderSlot(_ctx.$slots, "desktop-item", {}, () => [
48472
- _hoisted_6$2
48605
+ _hoisted_6$1
48473
48606
  ], true)
48474
48607
  ]),
48475
48608
  _: 3
@@ -48481,7 +48614,11 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48481
48614
  !__props.hideSwatches ? (openBlock(), createBlock(unref(_sfc_main$w), {
48482
48615
  key: 0,
48483
48616
  "data-test": "swatch-button",
48484
- class: normalizeClass(`${swatches.value ? "variant-filled" : "variant-ghost"} px-4 py-1 border-token border-surface-400-500-token`),
48617
+ variant: swatches.value ? "filled" : "",
48618
+ class: normalizeClass([
48619
+ "px-4 py-1 border-token border-surface-400-500-token",
48620
+ swatches.value ? "" : "text-center text-base rounded-token hover:variant-ghost hover:text-surface-900 dark:hover:text-surface-50"
48621
+ ]),
48485
48622
  onClick: toggleSwatches,
48486
48623
  title: "Backgrounds"
48487
48624
  }, {
@@ -48491,9 +48628,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48491
48628
  ], true)
48492
48629
  ]),
48493
48630
  _: 3
48494
- }, 8, ["class"])) : createCommentVNode("", true)
48631
+ }, 8, ["variant", "class"])) : createCommentVNode("", true)
48495
48632
  ], 2),
48496
- swatches.value ? (openBlock(), createBlock(unref(_sfc_main$r), {
48633
+ swatches.value ? (openBlock(), createBlock(unref(_sfc_main$s), {
48497
48634
  key: 0,
48498
48635
  "data-test": "swatches",
48499
48636
  class: normalizeClass(`vuetiful-previewer-swatches variant-soft grid grid-cols-6 gap-2 !rounded-none p-4 sm:grid-cols-12`),
@@ -48504,7 +48641,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48504
48641
  }, {
48505
48642
  default: withCtx(() => [
48506
48643
  (openBlock(true), createElementBlock(Fragment, null, renderList(Object.entries(backgrounds), ([key, value], index2) => {
48507
- return openBlock(), createBlock(unref(_sfc_main$q), {
48644
+ return openBlock(), createBlock(unref(_sfc_main$r), {
48508
48645
  value: key,
48509
48646
  key: index2,
48510
48647
  class: normalizeClass(`${value} flex aspect-square cursor-pointer items-center justify-center rounded ring-[1px] ring-surface-500/50`),
@@ -48547,7 +48684,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48547
48684
  tabView.value === "code" ? (openBlock(), createElementBlock("div", {
48548
48685
  key: 2,
48549
48686
  "data-test": "previewer-source",
48550
- class: normalizeClass(`vuetiful-previewer-source p-4 ${backgrounds["neutral"]} ${__props.regionSource}`)
48687
+ class: normalizeClass(`vuetiful-previewer-source p-4 md:p-10 ${backgrounds["neutral"]} ${__props.regionSource}`)
48551
48688
  }, [
48552
48689
  renderSlot(_ctx.$slots, "source", {}, () => [
48553
48690
  createTextVNode("(source)")
@@ -48557,8 +48694,8 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48557
48694
  };
48558
48695
  }
48559
48696
  });
48560
- var VPreview = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-0d055d3d"]]);
48561
- const _sfc_main$i = /* @__PURE__ */ defineComponent({
48697
+ var VPreview = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-73195296"]]);
48698
+ const _sfc_main$j = /* @__PURE__ */ defineComponent({
48562
48699
  __name: "VRail",
48563
48700
  props: {
48564
48701
  active: {
@@ -48573,26 +48710,26 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
48573
48710
  setup(__props) {
48574
48711
  const props = __props;
48575
48712
  const { selectedRailTile: selectedRailTile2 } = useRail();
48576
- provide("active", props.active);
48577
- provide("hover", props.hover);
48713
+ provide("activeRail", props.active);
48714
+ provide("hoverRail", props.hover);
48578
48715
  return (_ctx, _cache) => {
48579
- return openBlock(), createBlock(unref(_sfc_main$r), {
48580
- unstyled: "",
48581
- active: __props.active,
48582
- hover: __props.hover,
48716
+ return openBlock(), createBlock(unref(_sfc_main$s), {
48583
48717
  modelValue: unref(selectedRailTile2),
48584
48718
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(selectedRailTile2) ? selectedRailTile2.value = $event : null),
48585
- class: "vuetiful-rail flex h-full w-[70px] flex-col overflow-y-auto sm:w-20"
48719
+ unstyled: "",
48720
+ hover: "",
48721
+ active: "",
48722
+ class: "flex h-full w-[70px] flex-col overflow-y-auto"
48586
48723
  }, {
48587
48724
  default: withCtx(() => [
48588
48725
  renderSlot(_ctx.$slots, "default")
48589
48726
  ]),
48590
48727
  _: 3
48591
- }, 8, ["active", "hover", "modelValue"]);
48728
+ }, 8, ["modelValue"]);
48592
48729
  };
48593
48730
  }
48594
48731
  });
48595
- const _sfc_main$h = /* @__PURE__ */ defineComponent({
48732
+ const _sfc_main$i = /* @__PURE__ */ defineComponent({
48596
48733
  __name: "VRailTile",
48597
48734
  props: {
48598
48735
  value: {
@@ -48614,13 +48751,13 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
48614
48751
  },
48615
48752
  setup(__props) {
48616
48753
  const { selectedRailTile: selectedRailTile2 } = useRail();
48617
- const active = inject("active");
48618
- const hover = inject("hover");
48754
+ const activeRail = inject("activeRail");
48755
+ const hoverRail = inject("hoverRail");
48619
48756
  return (_ctx, _cache) => {
48620
- return openBlock(), createBlock(unref(_sfc_main$q), {
48621
- value: __props.value,
48757
+ return openBlock(), createBlock(unref(_sfc_main$r), {
48622
48758
  unstyled: "",
48623
- class: normalizeClass(`vuetiful-rail-tile grid aspect-square w-full cursor-pointer place-content-center place-items-center space-y-1.5 ${unref(hover)} ${unref(selectedRailTile2) === __props.value ? `${unref(active)}` : ""}`)
48759
+ value: __props.value,
48760
+ class: normalizeClass(`vuetiful-rail-tile grid aspect-square w-full cursor-pointer place-content-center place-items-center ${unref(selectedRailTile2) === __props.value ? `${unref(activeRail)}` : `${unref(hoverRail)}`}`)
48624
48761
  }, {
48625
48762
  default: withCtx(() => [
48626
48763
  _ctx.$slots.default ? (openBlock(), createElementBlock("div", {
@@ -48639,9 +48776,9 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
48639
48776
  };
48640
48777
  }
48641
48778
  });
48642
- const _hoisted_1$9 = { class: "vuetiful-shell flex h-full w-full flex-col overflow-hidden" };
48643
- const _hoisted_2$5 = { class: "vuetiful-shell-content flex h-full w-full flex-auto overflow-hidden" };
48644
- const _sfc_main$g = defineComponent({
48779
+ const _hoisted_1$6 = { class: "vuetiful-shell flex h-full w-full flex-col overflow-hidden" };
48780
+ const _hoisted_2$4 = { class: "vuetiful-shell-content flex h-full w-full flex-auto overflow-hidden" };
48781
+ const _sfc_main$h = defineComponent({
48645
48782
  __name: "VShell",
48646
48783
  props: {
48647
48784
  regionPage: { type: String, default: "" },
@@ -48656,14 +48793,14 @@ const _sfc_main$g = defineComponent({
48656
48793
  setup(__props) {
48657
48794
  return (_ctx, _cache) => {
48658
48795
  var _a;
48659
- return openBlock(), createElementBlock("div", _hoisted_1$9, [
48796
+ return openBlock(), createElementBlock("div", _hoisted_1$6, [
48660
48797
  _ctx.$slots.fixedHeader ? (openBlock(), createElementBlock("header", {
48661
48798
  key: 0,
48662
48799
  class: normalizeClass(`vuetiful-fixed-header ${__props.slotFixedHeader}`)
48663
48800
  }, [
48664
48801
  renderSlot(_ctx.$slots, "fixedHeader")
48665
48802
  ], 2)) : createCommentVNode("", true),
48666
- createElementVNode("div", _hoisted_2$5, [
48803
+ createElementVNode("div", _hoisted_2$4, [
48667
48804
  _ctx.$slots.sidebarLeft ? (openBlock(), createElementBlock("aside", {
48668
48805
  key: 0,
48669
48806
  class: normalizeClass(`vuetiful-sidebar-left overflow-y-auto overflow-x-hidden ${__props.slotSidebarLeft}`)
@@ -48710,9 +48847,9 @@ const _sfc_main$g = defineComponent({
48710
48847
  }
48711
48848
  });
48712
48849
  var VListboxButton_vue_vue_type_style_index_0_scoped_true_lang = "";
48713
- const _withScopeId$2 = (n2) => (pushScopeId("data-v-85546624"), n2 = n2(), popScopeId(), n2);
48714
- const _hoisted_1$8 = { key: 0 };
48715
- const _hoisted_2$4 = /* @__PURE__ */ _withScopeId$2(() => /* @__PURE__ */ createElementVNode("svg", {
48850
+ const _withScopeId$2 = (n2) => (pushScopeId("data-v-5635c35e"), n2 = n2(), popScopeId(), n2);
48851
+ const _hoisted_1$5 = { key: 0 };
48852
+ const _hoisted_2$3 = /* @__PURE__ */ _withScopeId$2(() => /* @__PURE__ */ createElementVNode("svg", {
48716
48853
  class: "icon",
48717
48854
  xmlns: "http://www.w3.org/2000/svg",
48718
48855
  viewBox: "0 0 512 512"
@@ -48726,7 +48863,7 @@ const _hoisted_3$3 = /* @__PURE__ */ _withScopeId$2(() => /* @__PURE__ */ create
48726
48863
  }, [
48727
48864
  /* @__PURE__ */ createElementVNode("path", { d: "M233.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L256 173.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z" })
48728
48865
  ], -1));
48729
- const _sfc_main$f = /* @__PURE__ */ defineComponent({
48866
+ const _sfc_main$g = /* @__PURE__ */ defineComponent({
48730
48867
  __name: "VListboxButton",
48731
48868
  props: {
48732
48869
  as: {
@@ -48739,16 +48876,19 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
48739
48876
  }
48740
48877
  },
48741
48878
  setup(__props) {
48879
+ const unstyled = inject("unstyled");
48880
+ const { settings: settings2 } = useSettings();
48881
+ const isUnstyled = settings2.global.unstyled || settings2.components.listbox.unstyled || unstyled;
48742
48882
  return (_ctx, _cache) => {
48743
48883
  return openBlock(), createBlock(unref(Fe), {
48744
48884
  as: __props.as,
48745
- class: "variant-filled btn flex w-full justify-between active:scale-[100%]"
48885
+ class: normalizeClass(`vuetiful-listbox-button ${unref(isUnstyled) ? "flex" : "variant-filled btn flex w-full justify-between active:scale-[100%]"}`)
48746
48886
  }, {
48747
48887
  default: withCtx(({ open }) => [
48748
48888
  renderSlot(_ctx.$slots, "default", {}, void 0, true),
48749
- !__props.hideIcon ? (openBlock(), createElementBlock("span", _hoisted_1$8, [
48889
+ !__props.hideIcon ? (openBlock(), createElementBlock("span", _hoisted_1$5, [
48750
48890
  !open ? renderSlot(_ctx.$slots, "open-icon", { key: 0 }, () => [
48751
- _hoisted_2$4
48891
+ _hoisted_2$3
48752
48892
  ], true) : createCommentVNode("", true),
48753
48893
  open ? renderSlot(_ctx.$slots, "close-icon", { key: 1 }, () => [
48754
48894
  _hoisted_3$3
@@ -48756,12 +48896,12 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
48756
48896
  ])) : createCommentVNode("", true)
48757
48897
  ]),
48758
48898
  _: 3
48759
- }, 8, ["as"]);
48899
+ }, 8, ["as", "class"]);
48760
48900
  };
48761
48901
  }
48762
48902
  });
48763
- var VListboxButton = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-85546624"]]);
48764
- const _sfc_main$e = /* @__PURE__ */ defineComponent({
48903
+ var VListboxButton = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-5635c35e"]]);
48904
+ const _sfc_main$f = /* @__PURE__ */ defineComponent({
48765
48905
  __name: "VListboxItems",
48766
48906
  props: {
48767
48907
  as: {
@@ -48771,32 +48911,36 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
48771
48911
  static: {
48772
48912
  type: Boolean,
48773
48913
  default: false
48914
+ },
48915
+ unstyled: {
48916
+ type: Boolean,
48917
+ default: false
48774
48918
  }
48775
48919
  },
48776
48920
  setup(__props) {
48921
+ const props = __props;
48777
48922
  const background = inject("background");
48778
48923
  const text = inject("text");
48779
48924
  const horizontal = inject("horizontal");
48925
+ const classItems = inject("classItems");
48926
+ const { settings: settings2 } = useSettings();
48927
+ const isUnstyled = settings2.global.unstyled || settings2.components.listbox.unstyled || props.unstyled;
48780
48928
  return (_ctx, _cache) => {
48781
48929
  return openBlock(), createBlock(unref(Be), {
48782
48930
  as: __props.as,
48783
48931
  static: __props.static,
48784
- class: normalizeClass(`p-4 border-token border-surface-400-500-token rounded-container-token ${unref(background)} ${unref(text)}`)
48932
+ class: normalizeClass(`z-10 ${unref(isUnstyled) ? "" : `rounded-container-token' gap-1 p-4 border-token border-surface-400-500-token`} ${unref(background)} ${unref(text)} ${unref(horizontal) ? "flex" : "flex-col"} ${unref(classItems)}`),
48933
+ "data-test": "listbox-items"
48785
48934
  }, {
48786
48935
  default: withCtx(() => [
48787
- createElementVNode("div", {
48788
- "data-test": "listbox-items",
48789
- class: normalizeClass(`flex ${unref(horizontal) ? "flex" : "flex-col"} gap-1`)
48790
- }, [
48791
- renderSlot(_ctx.$slots, "default")
48792
- ], 2)
48936
+ renderSlot(_ctx.$slots, "default")
48793
48937
  ]),
48794
48938
  _: 3
48795
48939
  }, 8, ["as", "static", "class"]);
48796
48940
  };
48797
48941
  }
48798
48942
  });
48799
- const _sfc_main$d = /* @__PURE__ */ defineComponent({
48943
+ const _sfc_main$e = /* @__PURE__ */ defineComponent({
48800
48944
  __name: "VListboxLabel",
48801
48945
  props: {
48802
48946
  as: {
@@ -48806,7 +48950,10 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
48806
48950
  },
48807
48951
  setup(__props) {
48808
48952
  return (_ctx, _cache) => {
48809
- return openBlock(), createBlock(unref(Ae), { as: __props.as }, {
48953
+ return openBlock(), createBlock(unref(Ae), {
48954
+ class: "vuetiful-listbox-label",
48955
+ as: __props.as
48956
+ }, {
48810
48957
  default: withCtx(() => [
48811
48958
  renderSlot(_ctx.$slots, "default")
48812
48959
  ]),
@@ -48815,27 +48962,39 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
48815
48962
  };
48816
48963
  }
48817
48964
  });
48818
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
48965
+ const _sfc_main$d = /* @__PURE__ */ defineComponent({
48819
48966
  __name: "VListbox",
48820
48967
  props: {
48968
+ modelValue: je.props["modelValue"],
48821
48969
  by: {
48822
48970
  type: String
48823
48971
  },
48824
48972
  display: {
48825
48973
  type: String
48826
48974
  },
48827
- labelText: {
48975
+ textLabel: {
48828
48976
  type: String
48829
48977
  },
48830
- labelClasses: {
48831
- type: Boolean,
48832
- default: false
48978
+ classLabel: {
48979
+ type: String,
48980
+ default: ""
48833
48981
  },
48834
- buttonText: {
48982
+ textButton: {
48835
48983
  type: String,
48836
48984
  default: "Select an option"
48837
48985
  },
48838
- modelValue: je.props["modelValue"],
48986
+ classButton: {
48987
+ type: String,
48988
+ default: ""
48989
+ },
48990
+ classItem: {
48991
+ type: String,
48992
+ default: ""
48993
+ },
48994
+ classItems: {
48995
+ type: String,
48996
+ default: ""
48997
+ },
48839
48998
  horizontal: {
48840
48999
  type: Boolean,
48841
49000
  default: false
@@ -48850,7 +49009,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
48850
49009
  },
48851
49010
  hover: {
48852
49011
  type: String,
48853
- default: "variant-ghost"
49012
+ default: "hover:variant-ghost"
48854
49013
  },
48855
49014
  background: {
48856
49015
  type: String,
@@ -48859,7 +49018,8 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
48859
49018
  text: {
48860
49019
  type: String,
48861
49020
  default: "text-surface-900 dark:text-surface-50"
48862
- }
49021
+ },
49022
+ unstyled: unstyledProp
48863
49023
  },
48864
49024
  emits: ["update:modelValue"],
48865
49025
  setup(__props, { emit }) {
@@ -48882,44 +49042,49 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
48882
49042
  provide("background", props.background);
48883
49043
  provide("text", props.text);
48884
49044
  provide("horizontal", props.horizontal);
49045
+ provide("unstyled", props.unstyled);
49046
+ provide("classItem", props.classItem);
49047
+ provide("classItems", props.classItems);
48885
49048
  const showText = computed(() => {
48886
49049
  var _a;
48887
49050
  if (props.display && parentModelValue.value)
48888
49051
  return parentModelValue.value[props.display];
48889
49052
  const length = (_a = parentModelValue.value) == null ? void 0 : _a.length;
48890
49053
  if (props.multiple && length === 0)
48891
- return props.buttonText;
49054
+ return props.textButton;
48892
49055
  if (props.multiple && length === 1)
48893
49056
  return parentModelValue.value[0];
48894
49057
  if (props.multiple && length > 1)
48895
49058
  return `${length} options selected`;
48896
49059
  if (parentModelValue.value)
48897
49060
  return parentModelValue.value;
48898
- return props.buttonText;
49061
+ return props.textButton;
48899
49062
  });
49063
+ const { settings: settings2 } = useSettings();
49064
+ const isUnstyled = settings2.global.unstyled || settings2.components.listbox.unstyled || props.unstyled;
48900
49065
  return (_ctx, _cache) => {
48901
49066
  return openBlock(), createBlock(unref(je), {
48902
- "data-test": "v-listbox",
49067
+ "data-test": "listbox",
48903
49068
  as: "div",
48904
49069
  by: __props.by,
48905
49070
  multiple: __props.multiple,
48906
- class: "vuetiful-listbox relative rounded-container-token",
49071
+ class: normalizeClass(`vuetiful-listbox ${unref(isUnstyled) ? "" : "relative rounded-container-token"}`),
48907
49072
  modelValue: parentModelValue.value,
48908
49073
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => parentModelValue.value = $event)
48909
49074
  }, {
48910
49075
  default: withCtx(() => [
48911
- __props.labelText ? (openBlock(), createBlock(_sfc_main$d, {
49076
+ __props.textLabel ? (openBlock(), createBlock(_sfc_main$e, {
48912
49077
  key: 0,
48913
- class: normalizeClass(__props.labelClasses)
49078
+ class: normalizeClass(__props.classLabel)
48914
49079
  }, {
48915
49080
  default: withCtx(() => [
48916
- createTextVNode(toDisplayString(__props.labelText), 1)
49081
+ createTextVNode(toDisplayString(__props.textLabel), 1)
48917
49082
  ]),
48918
49083
  _: 1
48919
49084
  }, 8, ["class"])) : createCommentVNode("", true),
48920
49085
  createVNode(VListboxButton, {
48921
- "data-test": "v-listbox-button",
48922
- class: normalizeClass(`${__props.background} ${__props.text}`)
49086
+ "data-test": "listbox-button",
49087
+ class: normalizeClass(`${__props.background} ${__props.text} ${__props.classButton}`)
48923
49088
  }, {
48924
49089
  default: withCtx(() => [
48925
49090
  createTextVNode(toDisplayString(unref(showText)), 1)
@@ -48935,38 +49100,54 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
48935
49100
  "leave-to-class": "opacity-0"
48936
49101
  }, {
48937
49102
  default: withCtx(() => [
48938
- createVNode(_sfc_main$e, { class: "absolute mt-1 min-w-full" }, {
49103
+ createVNode(_sfc_main$f, {
49104
+ "data-test": "listbox-items",
49105
+ unstyled: __props.unstyled,
49106
+ class: normalizeClass(`${unref(isUnstyled) ? "" : "absolute mt-1 min-w-full"}`)
49107
+ }, {
48939
49108
  default: withCtx(() => [
48940
49109
  renderSlot(_ctx.$slots, "default")
48941
49110
  ]),
48942
49111
  _: 3
48943
- })
49112
+ }, 8, ["unstyled", "class"])
48944
49113
  ]),
48945
49114
  _: 3
48946
49115
  })
48947
49116
  ]),
48948
49117
  _: 3
48949
- }, 8, ["by", "multiple", "modelValue"]);
49118
+ }, 8, ["by", "multiple", "class", "modelValue"]);
48950
49119
  };
48951
49120
  }
48952
49121
  });
48953
- const _sfc_main$b = /* @__PURE__ */ defineComponent({
49122
+ const _sfc_main$c = /* @__PURE__ */ defineComponent({
48954
49123
  __name: "VListboxItem",
48955
49124
  props: {
48956
49125
  value: {
48957
49126
  type: [String, Number, Boolean, Object],
48958
49127
  required: true
49128
+ },
49129
+ unstyled: {
49130
+ type: Boolean,
49131
+ default: false
48959
49132
  }
48960
49133
  },
48961
49134
  setup(__props) {
49135
+ const props = __props;
48962
49136
  const activeClass = inject("active");
48963
49137
  const hoverClass = inject("hover");
49138
+ const classItem = inject("classItem");
49139
+ const { settings: settings2 } = useSettings();
49140
+ const isUnstyled = settings2.global.unstyled || settings2.components.listboxItem.unstyled || props.unstyled;
48964
49141
  return (_ctx, _cache) => {
48965
49142
  return openBlock(), createBlock(unref(Ke), { value: __props.value }, {
48966
49143
  default: withCtx(({ selected, disabled, active }) => [
48967
49144
  createElementVNode("div", {
48968
- "data-test": "v-listbox-item",
48969
- class: normalizeClass(`vuetiful-listbox-item px-4 py-1 text-base rounded-token ${selected ? unref(activeClass) : `hover:${unref(hoverClass)}`} ${disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"} ${active && !selected ? unref(hoverClass) : ""}`)
49145
+ "data-test": "listbox-item",
49146
+ class: normalizeClass(`vuetiful-listbox-item ${unref(isUnstyled) ? "" : "px-4 py-1 text-base rounded-token"}
49147
+ ${selected ? unref(activeClass) : unref(hoverClass)}
49148
+ ${disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"}
49149
+ ${active && !selected ? unref(hoverClass) : ""}
49150
+ ${unref(classItem)}`)
48970
49151
  }, [
48971
49152
  renderSlot(_ctx.$slots, "default")
48972
49153
  ], 2)
@@ -48976,37 +49157,42 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
48976
49157
  };
48977
49158
  }
48978
49159
  });
48979
- const _sfc_main$a = /* @__PURE__ */ defineComponent({
49160
+ const _sfc_main$b = /* @__PURE__ */ defineComponent({
48980
49161
  __name: "VTab",
48981
49162
  props: {
48982
49163
  disabled: {
48983
49164
  type: Boolean,
48984
49165
  default: false
48985
- }
49166
+ },
49167
+ unstyled: unstyledProp
48986
49168
  },
48987
49169
  setup(__props) {
49170
+ const props = __props;
48988
49171
  const activeClass = inject("active");
48989
49172
  const hoverClass = inject("hover");
48990
49173
  const vertical = inject("vertical");
48991
49174
  const classTab = inject("classTab");
48992
49175
  const hideSeparator = inject("hideSeparator");
49176
+ const classTabSeparator = inject("classTabSeparator");
48993
49177
  const tabClass = computed(() => {
48994
49178
  return classTab ? classTab : "w-full px-4 py-2";
48995
49179
  });
49180
+ const { settings: settings2 } = useSettings();
49181
+ const isUnstyled = settings2.global.unstyled || settings2.components.tab.unstyled || props.unstyled;
48996
49182
  return (_ctx, _cache) => {
48997
49183
  return openBlock(), createBlock(unref(ye), {
48998
49184
  disabled: __props.disabled,
48999
- class: normalizeClass(`flex ${unref(vertical) ? "flex-row justify-between" : "flex-col"}`)
49185
+ class: normalizeClass(["vuetiful-tab", `flex ${unref(vertical) ? "flex-row justify-between" : "flex-col"}`])
49000
49186
  }, {
49001
49187
  default: withCtx(({ selected }) => [
49002
49188
  createElementVNode("div", {
49003
49189
  "data-test": "slot-container",
49004
- class: normalizeClass(`text-base rounded-token ${selected ? unref(activeClass) : unref(hoverClass)} ${unref(tabClass)}`)
49190
+ class: normalizeClass(["vuetiful-tab-content", `text-base ${unref(isUnstyled) ? "" : "rounded-token"} ${selected ? unref(activeClass) : unref(hoverClass)} ${unref(tabClass)}`])
49005
49191
  }, [
49006
49192
  renderSlot(_ctx.$slots, "default")
49007
49193
  ], 2),
49008
49194
  withDirectives(createElementVNode("div", {
49009
- class: normalizeClass(`z-10 border-surface-900-50-token ${unref(vertical) ? "mr-[-2px] h-full border-r-2" : "mb-[-2px] border-b-2"}`)
49195
+ class: normalizeClass(["vuetiful-tab-separator", `z-10 ${unref(vertical) ? "mr-[-2px] h-full border-r-2" : "mb-[-2px] w-full border-b-2"} ${unref(classTabSeparator)}`])
49010
49196
  }, null, 2), [
49011
49197
  [vShow, selected && !unref(hideSeparator)]
49012
49198
  ])
@@ -49016,11 +49202,11 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
49016
49202
  };
49017
49203
  }
49018
49204
  });
49019
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
49205
+ const _sfc_main$a = /* @__PURE__ */ defineComponent({
49020
49206
  __name: "VTabPanel",
49021
49207
  setup(__props) {
49022
49208
  return (_ctx, _cache) => {
49023
- return openBlock(), createBlock(unref(ge), null, {
49209
+ return openBlock(), createBlock(unref(ge), { class: "vuetiful-tab-panel" }, {
49024
49210
  default: withCtx(() => [
49025
49211
  renderSlot(_ctx.$slots, "default")
49026
49212
  ]),
@@ -49029,7 +49215,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
49029
49215
  };
49030
49216
  }
49031
49217
  });
49032
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
49218
+ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
49033
49219
  __name: "VTabs",
49034
49220
  props: {
49035
49221
  hideSeparator: {
@@ -49062,12 +49248,17 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
49062
49248
  },
49063
49249
  classSeparator: {
49064
49250
  type: String,
49065
- default: "border border-surface-400-500-token"
49251
+ default: "border-surface-400-500-token"
49252
+ },
49253
+ classTabSeparator: {
49254
+ type: String,
49255
+ default: "border-surface-900-50-token"
49066
49256
  },
49067
49257
  defaultIndex: {
49068
49258
  type: Number,
49069
49259
  default: 0
49070
- }
49260
+ },
49261
+ unstyled: unstyledProp
49071
49262
  },
49072
49263
  setup(__props) {
49073
49264
  const props = __props;
@@ -49076,17 +49267,22 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
49076
49267
  provide("vertical", props.vertical);
49077
49268
  provide("classTab", props.classTab);
49078
49269
  provide("hideSeparator", props.hideSeparator);
49270
+ provide("classTabSeparator", props.classTabSeparator);
49271
+ const { settings: settings2 } = useSettings();
49272
+ const isUnstyled = settings2.global.unstyled || settings2.components.tabs.unstyled || props.unstyled;
49079
49273
  return (_ctx, _cache) => {
49080
49274
  return openBlock(), createBlock(unref(xe), {
49081
49275
  as: "div",
49082
49276
  vertical: __props.vertical,
49083
49277
  defaultIndex: __props.defaultIndex,
49084
- class: normalizeClass(`${__props.vertical ? "flex" : ""}`)
49278
+ class: normalizeClass(["vuetiful-tab-group", `${__props.vertical ? "flex" : ""}`])
49085
49279
  }, {
49086
49280
  default: withCtx(() => [
49087
49281
  createVNode(unref(Ie), {
49088
49282
  "data-test": "vuetiful-tab-list",
49089
- class: normalizeClass(`vuetiful-tab-list flex ${__props.vertical ? "flex-col" : ""} ${__props.vertical ? "!rounded-br-none !rounded-tr-none" : "!rounded-bl-none !rounded-br-none"} rounded-container-token ${__props.classTabs}`)
49283
+ class: normalizeClass(`vuetiful-tab-list flex ${__props.vertical ? "flex-col" : ""}
49284
+ ${unref(isUnstyled) ? "" : `${__props.vertical ? "!rounded-br-none !rounded-tr-none" : "!rounded-bl-none !rounded-br-none"} rounded-container-token `}
49285
+ ${__props.classTabs}`)
49090
49286
  }, {
49091
49287
  default: withCtx(() => [
49092
49288
  renderSlot(_ctx.$slots, "tabs")
@@ -49096,11 +49292,12 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
49096
49292
  !__props.hideSeparator ? (openBlock(), createElementBlock("div", {
49097
49293
  key: 0,
49098
49294
  "data-test": "vuetiful-tab-separator",
49099
- class: normalizeClass(`${__props.classSeparator}`)
49295
+ class: normalizeClass(`border ${__props.classSeparator}`)
49100
49296
  }, null, 2)) : createCommentVNode("", true),
49101
49297
  createVNode(unref(Se), {
49102
49298
  "data-test": "vuetiful-tab-panels",
49103
- class: normalizeClass(`vuetiful-tab-panels ${__props.vertical ? "!rounded-bl-none !rounded-tl-none" : "!rounded-tl-none !rounded-tr-none"} rounded-container-token ${__props.classPanels}`)
49299
+ class: normalizeClass(`vuetiful-tab-panels
49300
+ ${unref(isUnstyled) ? "" : `p-4 ${__props.vertical ? "!rounded-bl-none !rounded-tl-none" : "!rounded-tl-none !rounded-tr-none"} rounded-container-token`} ${__props.classPanels}`)
49104
49301
  }, {
49105
49302
  default: withCtx(() => [
49106
49303
  renderSlot(_ctx.$slots, "default")
@@ -49113,58 +49310,72 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
49113
49310
  };
49114
49311
  }
49115
49312
  });
49116
- const _hoisted_1$7 = { class: "vuetiful-accordion flex w-full flex-col gap-1" };
49117
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
49313
+ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
49118
49314
  __name: "VAccordion",
49119
49315
  props: {
49120
- hover: {
49316
+ classQuestion: {
49121
49317
  type: String,
49122
- default: "hover:variant-soft"
49318
+ default: "bg-surface-200-700-token hover:variant-soft"
49123
49319
  },
49124
- background: {
49320
+ classAnswer: {
49125
49321
  type: String,
49126
49322
  default: "bg-surface-200-700-token"
49323
+ },
49324
+ unstyled: {
49325
+ type: Boolean,
49326
+ default: false
49127
49327
  }
49128
49328
  },
49129
49329
  setup(__props) {
49130
49330
  const props = __props;
49131
- provide("hover", props.hover);
49132
- provide("background", props.background);
49331
+ provide("classQuestion", props.classQuestion);
49332
+ provide("classAnswer", props.classAnswer);
49333
+ const { settings: settings2 } = useSettings();
49334
+ const isUnstyled = settings2.global.unstyled || settings2.components.accordion.unstyled || props.unstyled;
49133
49335
  return (_ctx, _cache) => {
49134
- return openBlock(), createElementBlock("div", _hoisted_1$7, [
49336
+ return openBlock(), createElementBlock("div", {
49337
+ class: normalizeClass(`vuetiful-accordion ${unref(isUnstyled) ? "" : "flex w-full flex-col gap-1"}`)
49338
+ }, [
49135
49339
  renderSlot(_ctx.$slots, "default")
49136
- ]);
49340
+ ], 2);
49137
49341
  };
49138
49342
  }
49139
49343
  });
49140
49344
  var VAccordionItem_vue_vue_type_style_index_0_scoped_true_lang = "";
49141
- const _withScopeId$1 = (n2) => (pushScopeId("data-v-75f8b8b4"), n2 = n2(), popScopeId(), n2);
49142
- const _hoisted_1$6 = { class: "vuetiful-accordion-title" };
49143
- const _hoisted_2$3 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createElementVNode("svg", {
49144
- class: "icon",
49345
+ const _withScopeId$1 = (n2) => (pushScopeId("data-v-6c055e30"), n2 = n2(), popScopeId(), n2);
49346
+ const _hoisted_1$4 = { class: "vuetiful-accordion-title" };
49347
+ const _hoisted_2$2 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createElementVNode("svg", {
49348
+ class: "vuetiful-accordion-item-icon-plus icon",
49145
49349
  xmlns: "http://www.w3.org/2000/svg",
49146
49350
  viewBox: "0 0 448 512"
49147
49351
  }, [
49148
49352
  /* @__PURE__ */ createElementVNode("path", { d: "M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32V224H48c-17.7 0-32 14.3-32 32s14.3 32 32 32H192V432c0 17.7 14.3 32 32 32s32-14.3 32-32V288H400c17.7 0 32-14.3 32-32s-14.3-32-32-32H256V80z" })
49149
49353
  ], -1));
49150
49354
  const _hoisted_3$2 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createElementVNode("svg", {
49151
- class: "icon",
49355
+ class: "vuetiful-accordion-item-icon-minus icon",
49152
49356
  xmlns: "http://www.w3.org/2000/svg",
49153
49357
  viewBox: "0 0 448 512"
49154
49358
  }, [
49155
49359
  /* @__PURE__ */ createElementVNode("path", { d: "M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z" })
49156
49360
  ], -1));
49157
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
49361
+ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
49158
49362
  __name: "VAccordionItem",
49159
49363
  props: {
49160
49364
  title: {
49161
49365
  type: String,
49162
49366
  required: true
49367
+ },
49368
+ unstyled: {
49369
+ type: Boolean,
49370
+ default: false
49163
49371
  }
49164
49372
  },
49165
49373
  setup(__props) {
49166
- const hover = inject("hover");
49167
- const background = inject("background");
49374
+ const props = __props;
49375
+ const classQuestion = inject("classQuestion");
49376
+ const classAnswer = inject("classAnswer");
49377
+ const { settings: settings2 } = useSettings();
49378
+ const isUnstyled = settings2.global.unstyled || settings2.components.accordionItem.unstyled || props.unstyled;
49168
49379
  return (_ctx, _cache) => {
49169
49380
  return openBlock(), createBlock(unref(Q), {
49170
49381
  class: "vuetiful-accordion-item",
@@ -49172,25 +49383,23 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
49172
49383
  }, {
49173
49384
  default: withCtx(({ open }) => [
49174
49385
  createVNode(unref(V), {
49175
- class: normalizeClass([`${unref(background)} ${unref(hover)} ${open ? "!rounded-bl-none !rounded-br-none" : ""}`, "vuetiful-accordion-item-button w-full rounded-container-token"])
49386
+ class: normalizeClass([`${unref(isUnstyled) ? "" : `${open ? "!rounded-bl-none !rounded-br-none" : ""}`}
49387
+ ${unref(isUnstyled) ? "" : "items-center justify-between p-4 py-2 rounded-container-token hover:cursor-pointer"}
49388
+ ${unref(classQuestion)}`, "vuetiful-accordion-item-button flex w-full"])
49176
49389
  }, {
49177
49390
  default: withCtx(() => [
49178
- createElementVNode("div", {
49179
- class: normalizeClass(["flex items-center justify-between p-4 rounded-container-token hover:cursor-pointer", `${unref(background)} ${unref(hover)} ${open ? "!rounded-bl-none !rounded-br-none" : ""}`])
49180
- }, [
49181
- createElementVNode("span", _hoisted_1$6, toDisplayString(__props.title), 1),
49182
- !open ? renderSlot(_ctx.$slots, "open-item", { key: 0 }, () => [
49183
- _hoisted_2$3
49184
- ], true) : createCommentVNode("", true),
49185
- open ? renderSlot(_ctx.$slots, "close-item", { key: 1 }, () => [
49186
- _hoisted_3$2
49187
- ], true) : createCommentVNode("", true)
49188
- ], 2)
49391
+ createElementVNode("span", _hoisted_1$4, toDisplayString(__props.title), 1),
49392
+ !open ? renderSlot(_ctx.$slots, "open-item", { key: 0 }, () => [
49393
+ _hoisted_2$2
49394
+ ], true) : createCommentVNode("", true),
49395
+ open ? renderSlot(_ctx.$slots, "close-item", { key: 1 }, () => [
49396
+ _hoisted_3$2
49397
+ ], true) : createCommentVNode("", true)
49189
49398
  ]),
49190
49399
  _: 2
49191
49400
  }, 1032, ["class"]),
49192
49401
  createVNode(unref(X), {
49193
- class: normalizeClass(["vuetiful-accordion-item-panel p-4 pt-0 rounded-container-token", `${open ? `${unref(background)} !rounded-tl-none !rounded-tr-none` : ""}`])
49402
+ class: normalizeClass(["vuetiful-accordion-item-panel", `${open ? `${unref(isUnstyled) ? "" : "!rounded-tl-none !rounded-tr-none"}` : ""} ${unref(isUnstyled) ? "" : "p-4 py-2 rounded-container-token"} ${unref(classAnswer)}`])
49194
49403
  }, {
49195
49404
  default: withCtx(() => [
49196
49405
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
@@ -49203,56 +49412,54 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
49203
49412
  };
49204
49413
  }
49205
49414
  });
49206
- var VAccordionItem = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-75f8b8b4"]]);
49415
+ var VAccordionItem = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-6c055e30"]]);
49207
49416
  var VAlert_vue_vue_type_style_index_0_scoped_true_lang = "";
49208
- const _withScopeId = (n2) => (pushScopeId("data-v-c395555e"), n2 = n2(), popScopeId(), n2);
49209
- const _hoisted_1$5 = { key: 0 };
49210
- const _hoisted_2$2 = {
49417
+ const _withScopeId = (n2) => (pushScopeId("data-v-5df26a83"), n2 = n2(), popScopeId(), n2);
49418
+ const _hoisted_1$3 = {
49211
49419
  key: 0,
49212
49420
  class: "icon",
49213
49421
  xmlns: "http://www.w3.org/2000/svg",
49214
49422
  viewBox: "0 0 512 512"
49215
49423
  };
49216
- const _hoisted_3$1 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z" }, null, -1));
49217
- const _hoisted_4$1 = [
49218
- _hoisted_3$1
49424
+ const _hoisted_2$1 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z" }, null, -1));
49425
+ const _hoisted_3$1 = [
49426
+ _hoisted_2$1
49219
49427
  ];
49220
- const _hoisted_5$1 = {
49428
+ const _hoisted_4 = {
49221
49429
  key: 1,
49222
49430
  class: "icon",
49223
49431
  xmlns: "http://www.w3.org/2000/svg",
49224
49432
  viewBox: "0 0 512 512"
49225
49433
  };
49226
- const _hoisted_6$1 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z" }, null, -1));
49227
- const _hoisted_7 = [
49228
- _hoisted_6$1
49434
+ const _hoisted_5 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z" }, null, -1));
49435
+ const _hoisted_6 = [
49436
+ _hoisted_5
49229
49437
  ];
49230
- const _hoisted_8 = {
49438
+ const _hoisted_7 = {
49231
49439
  key: 2,
49232
49440
  class: "icon",
49233
49441
  xmlns: "http://www.w3.org/2000/svg",
49234
49442
  viewBox: "0 0 512 512"
49235
49443
  };
49236
- const _hoisted_9 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z" }, null, -1));
49237
- const _hoisted_10 = [
49238
- _hoisted_9
49444
+ const _hoisted_8 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z" }, null, -1));
49445
+ const _hoisted_9 = [
49446
+ _hoisted_8
49239
49447
  ];
49240
- const _hoisted_11 = {
49448
+ const _hoisted_10 = {
49241
49449
  key: 3,
49242
49450
  class: "icon",
49243
49451
  xmlns: "http://www.w3.org/2000/svg",
49244
49452
  viewBox: "0 0 512 512"
49245
49453
  };
49246
- const _hoisted_12 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z" }, null, -1));
49247
- const _hoisted_13 = [
49248
- _hoisted_12
49454
+ const _hoisted_11 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z" }, null, -1));
49455
+ const _hoisted_12 = [
49456
+ _hoisted_11
49249
49457
  ];
49250
- const _hoisted_14 = { class: "vuetiful-alert-message flex-auto" };
49251
- const _hoisted_15 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z" }, null, -1));
49252
- const _hoisted_16 = [
49253
- _hoisted_15
49458
+ const _hoisted_13 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z" }, null, -1));
49459
+ const _hoisted_14 = [
49460
+ _hoisted_13
49254
49461
  ];
49255
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
49462
+ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
49256
49463
  __name: "VAlert",
49257
49464
  props: {
49258
49465
  hideIcon: {
@@ -49270,6 +49477,22 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
49270
49477
  type: {
49271
49478
  type: String,
49272
49479
  default: ""
49480
+ },
49481
+ classPre: {
49482
+ type: String,
49483
+ default: ""
49484
+ },
49485
+ classMessage: {
49486
+ type: String,
49487
+ default: ""
49488
+ },
49489
+ classClose: {
49490
+ type: String,
49491
+ default: ""
49492
+ },
49493
+ unstyled: {
49494
+ type: Boolean,
49495
+ default: false
49273
49496
  }
49274
49497
  },
49275
49498
  emits: ["close"],
@@ -49285,8 +49508,8 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
49285
49508
  return "variant-filled-warning";
49286
49509
  case "error":
49287
49510
  return "variant-filled-error";
49288
- default:
49289
- return "variant-filled-primary";
49511
+ case "":
49512
+ return "";
49290
49513
  }
49291
49514
  });
49292
49515
  const close = () => emit("close");
@@ -49295,23 +49518,30 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
49295
49518
  close();
49296
49519
  }
49297
49520
  };
49521
+ const { settings: settings2 } = useSettings();
49522
+ const isUnstyled = settings2.global.unstyled || settings2.components.alert.unstyled || props.unstyled;
49298
49523
  return (_ctx, _cache) => {
49299
49524
  return __props.show ? (openBlock(), createElementBlock("aside", {
49300
49525
  key: 0,
49301
- class: normalizeClass(`vuetiful-alert flex w-full flex-row items-center gap-4 p-4 border-token rounded-container-token ${unref(typeBackground)}`)
49526
+ class: normalizeClass(`vuetiful-alert flex ${unref(isUnstyled) ? "" : "w-full items-center gap-4 p-4 border-token rounded-container-token"} ${unref(typeBackground)}`)
49302
49527
  }, [
49303
- !__props.hideIcon ? (openBlock(), createElementBlock("div", _hoisted_1$5, [
49528
+ !__props.hideIcon ? (openBlock(), createElementBlock("div", {
49529
+ key: 0,
49530
+ class: normalizeClass(`vuetiful-alert-pre ${__props.classPre}`)
49531
+ }, [
49304
49532
  _ctx.$slots.pre ? renderSlot(_ctx.$slots, "pre", { key: 0 }, void 0, true) : createCommentVNode("", true),
49305
49533
  !_ctx.$slots.pre ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
49306
- __props.type === "info" ? (openBlock(), createElementBlock("svg", _hoisted_2$2, _hoisted_4$1)) : createCommentVNode("", true),
49307
- __props.type === "success" ? (openBlock(), createElementBlock("svg", _hoisted_5$1, _hoisted_7)) : createCommentVNode("", true),
49308
- __props.type === "warning" ? (openBlock(), createElementBlock("svg", _hoisted_8, _hoisted_10)) : createCommentVNode("", true),
49309
- __props.type === "error" ? (openBlock(), createElementBlock("svg", _hoisted_11, _hoisted_13)) : createCommentVNode("", true)
49534
+ __props.type === "info" ? (openBlock(), createElementBlock("svg", _hoisted_1$3, _hoisted_3$1)) : createCommentVNode("", true),
49535
+ __props.type === "success" ? (openBlock(), createElementBlock("svg", _hoisted_4, _hoisted_6)) : createCommentVNode("", true),
49536
+ __props.type === "warning" ? (openBlock(), createElementBlock("svg", _hoisted_7, _hoisted_9)) : createCommentVNode("", true),
49537
+ __props.type === "error" ? (openBlock(), createElementBlock("svg", _hoisted_10, _hoisted_12)) : createCommentVNode("", true)
49310
49538
  ], 64)) : createCommentVNode("", true)
49311
- ])) : createCommentVNode("", true),
49312
- createElementVNode("div", _hoisted_14, [
49539
+ ], 2)) : createCommentVNode("", true),
49540
+ createElementVNode("div", {
49541
+ class: normalizeClass(`vuetiful-alert-message ${unref(isUnstyled) ? "" : "flex-auto"} ${__props.classMessage}`)
49542
+ }, [
49313
49543
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
49314
- ]),
49544
+ ], 2),
49315
49545
  renderSlot(_ctx.$slots, "actions", {}, void 0, true),
49316
49546
  __props.showClose ? (openBlock(), createElementBlock("svg", {
49317
49547
  key: 1,
@@ -49319,18 +49549,18 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
49319
49549
  tabindex: "0",
49320
49550
  onKeydown: handleKeydown,
49321
49551
  onClick: close,
49322
- class: "icon hover:cursor-pointer",
49552
+ class: normalizeClass(`vuetiful-alert-close-icon icon hover:cursor-pointer ${__props.classClose}`),
49323
49553
  xmlns: "http://www.w3.org/2000/svg",
49324
49554
  viewBox: "0 0 384 512"
49325
- }, _hoisted_16, 32)) : createCommentVNode("", true)
49555
+ }, _hoisted_14, 34)) : createCommentVNode("", true)
49326
49556
  ], 2)) : createCommentVNode("", true);
49327
49557
  };
49328
49558
  }
49329
49559
  });
49330
- var VAlert = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-c395555e"]]);
49560
+ var VAlert = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-5df26a83"]]);
49331
49561
  var VCard_vue_vue_type_style_index_0_lang = "";
49332
- const _hoisted_1$4 = ["tabindex"];
49333
- const _sfc_main$4 = /* @__PURE__ */ defineComponent({
49562
+ const _hoisted_1$2 = ["tabindex"];
49563
+ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
49334
49564
  __name: "VCard",
49335
49565
  props: {
49336
49566
  hideSeparator: {
@@ -49345,14 +49575,11 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
49345
49575
  type: String,
49346
49576
  default: "text-surface-900-50-token"
49347
49577
  },
49348
- horizontal: {
49349
- type: Boolean,
49350
- default: false
49351
- },
49352
49578
  clickable: {
49353
49579
  type: Boolean,
49354
49580
  default: false
49355
- }
49581
+ },
49582
+ unstyled: unstyledProp
49356
49583
  },
49357
49584
  emits: ["click"],
49358
49585
  setup(__props, { emit }) {
@@ -49375,61 +49602,84 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
49375
49602
  emit("click");
49376
49603
  }
49377
49604
  };
49605
+ const { settings: settings2 } = useSettings();
49606
+ const isUnstyled = settings2.global.unstyled || settings2.components.card.unstyled || props.unstyled;
49378
49607
  return (_ctx, _cache) => {
49379
49608
  return openBlock(), createElementBlock("div", {
49380
49609
  onClick,
49381
49610
  onKeydown,
49382
49611
  tabindex: __props.clickable ? 0 : void 0,
49383
- class: normalizeClass(`vuetiful-card flex border-token rounded-container-token ring-outline-token ${__props.horizontal ? "flex-row" : "flex-col"} ${__props.background} ${__props.text} ${__props.clickable ? "card-hover hover:cursor-pointer" : ""}`)
49612
+ class: normalizeClass(`vuetiful-card flex flex-col ${unref(isUnstyled) ? "" : "border-token rounded-container-token ring-outline-token"} ${__props.background} ${__props.text} ${__props.clickable ? `${unref(isUnstyled) ? "" : "card-hover"} hover:cursor-pointer` : ""}`)
49384
49613
  }, [
49385
49614
  renderSlot(_ctx.$slots, "default")
49386
- ], 42, _hoisted_1$4);
49615
+ ], 42, _hoisted_1$2);
49387
49616
  };
49388
49617
  }
49389
49618
  });
49390
- const _sfc_main$3 = {};
49391
- const _hoisted_1$3 = {
49392
- "data-test": "vuetiful-card-body-content",
49393
- class: "vuetiful-card-body p-4"
49394
- };
49395
- function _sfc_render$1(_ctx, _cache) {
49396
- return openBlock(), createElementBlock("div", _hoisted_1$3, [
49397
- renderSlot(_ctx.$slots, "default")
49398
- ]);
49399
- }
49400
- var VCardBody = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$1]]);
49401
- const _hoisted_1$2 = {
49402
- key: 0,
49403
- "data-test": "vuetiful-card-footer-separator",
49404
- class: "opacity-90"
49405
- };
49406
- const _hoisted_2$1 = {
49407
- "data-test": "vuetiful-card-footer-content",
49408
- class: "vuetiful-card-footer p-4"
49409
- };
49410
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
49619
+ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
49620
+ __name: "VCardBody",
49621
+ props: {
49622
+ unstyled: unstyledProp
49623
+ },
49624
+ setup(__props) {
49625
+ const props = __props;
49626
+ const { settings: settings2 } = useSettings();
49627
+ const isUnstyled = settings2.global.unstyled || settings2.components.cardBody.unstyled || props.unstyled;
49628
+ return (_ctx, _cache) => {
49629
+ return openBlock(), createElementBlock("div", {
49630
+ "data-test": "vuetiful-card-body-content",
49631
+ class: normalizeClass(`vuetiful-card-body ${unref(isUnstyled) ? "" : "p-4"}`)
49632
+ }, [
49633
+ renderSlot(_ctx.$slots, "default")
49634
+ ], 2);
49635
+ };
49636
+ }
49637
+ });
49638
+ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
49411
49639
  __name: "VCardFooter",
49640
+ props: {
49641
+ classSeparator: {
49642
+ type: String,
49643
+ default: "opacity-90"
49644
+ },
49645
+ unstyled: unstyledProp
49646
+ },
49412
49647
  setup(__props) {
49648
+ const props = __props;
49413
49649
  const hideSeparator = inject("hideSeparator", false);
49650
+ const attrs = useAttrs();
49651
+ const classAttribute = attrs.class;
49652
+ const { settings: settings2 } = useSettings();
49653
+ const isUnstyled = settings2.global.unstyled || settings2.components.cardBody.unstyled || props.unstyled;
49414
49654
  return (_ctx, _cache) => {
49415
49655
  return openBlock(), createElementBlock(Fragment, null, [
49416
- !unref(hideSeparator) ? (openBlock(), createElementBlock("hr", _hoisted_1$2)) : createCommentVNode("", true),
49417
- createElementVNode("div", _hoisted_2$1, [
49656
+ !unref(hideSeparator) ? (openBlock(), createElementBlock("hr", {
49657
+ key: 0,
49658
+ "data-test": "vuetiful-card-footer-separator",
49659
+ class: normalizeClass(["divider", __props.classSeparator])
49660
+ }, null, 2)) : createCommentVNode("", true),
49661
+ createElementVNode("div", {
49662
+ "data-test": "vuetiful-card-footer-content",
49663
+ class: normalizeClass(`vuetiful-card-footer ${unref(isUnstyled) ? "" : "p-4"} ${unref(classAttribute)}`)
49664
+ }, [
49418
49665
  renderSlot(_ctx.$slots, "default")
49419
- ])
49666
+ ], 2)
49420
49667
  ], 64);
49421
49668
  };
49422
49669
  }
49423
49670
  });
49424
49671
  var VCardHeader_vue_vue_type_style_index_0_lang = "";
49425
- const _hoisted_1$1 = {
49426
- key: 0,
49427
- "data-test": "vuetiful-card-header-separator",
49428
- class: "opacity-90"
49429
- };
49430
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
49672
+ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
49431
49673
  __name: "VCardHeader",
49674
+ props: {
49675
+ classSeparator: {
49676
+ type: String,
49677
+ default: "opacity-90"
49678
+ },
49679
+ unstyled: unstyledProp
49680
+ },
49432
49681
  setup(__props) {
49682
+ const props = __props;
49433
49683
  const headerRef = ref();
49434
49684
  const hasImageAsChild = computed(() => {
49435
49685
  var _a;
@@ -49440,204 +49690,255 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
49440
49690
  return childrenArray.some((child) => child.tagName === "IMG");
49441
49691
  });
49442
49692
  const hideSeparator = inject("hideSeparator", false);
49693
+ const attrs = useAttrs();
49694
+ const classAttribute = attrs.class;
49695
+ const { settings: settings2 } = useSettings();
49696
+ const isUnstyled = settings2.global.unstyled || settings2.components.cardHeader.unstyled || props.unstyled;
49443
49697
  return (_ctx, _cache) => {
49444
49698
  return openBlock(), createElementBlock(Fragment, null, [
49445
49699
  createElementVNode("div", {
49446
49700
  ref_key: "headerRef",
49447
49701
  ref: headerRef,
49448
49702
  "data-test": "vuetiful-card-header-content",
49449
- class: normalizeClass(`vuetiful-card-header ${unref(hasImageAsChild) ? "" : "p-4"}`)
49703
+ class: normalizeClass(`vuetiful-card-header ${unref(hasImageAsChild) ? "" : `${unref(isUnstyled) ? "" : "p-4"}`} ${unref(classAttribute)}`)
49450
49704
  }, [
49451
49705
  renderSlot(_ctx.$slots, "default")
49452
49706
  ], 2),
49453
- !unref(hideSeparator) ? (openBlock(), createElementBlock("hr", _hoisted_1$1)) : createCommentVNode("", true)
49707
+ !unref(hideSeparator) ? (openBlock(), createElementBlock("hr", {
49708
+ key: 0,
49709
+ "data-test": "vuetiful-card-header-separator",
49710
+ class: normalizeClass(["divider", __props.classSeparator])
49711
+ }, null, 2)) : createCommentVNode("", true)
49454
49712
  ], 64);
49455
49713
  };
49456
49714
  }
49457
49715
  });
49716
+ var githubDark = "";
49717
+ const _hoisted_1$1 = ["innerHTML"];
49718
+ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
49719
+ __name: "VCodeBlock",
49720
+ props: {
49721
+ language: {
49722
+ type: String,
49723
+ default: "plaintext"
49724
+ },
49725
+ code: {
49726
+ type: String,
49727
+ default: ""
49728
+ },
49729
+ preventOverflow: {
49730
+ type: Boolean,
49731
+ default: false
49732
+ },
49733
+ classHeader: {
49734
+ type: String,
49735
+ default: ""
49736
+ },
49737
+ classLanguage: {
49738
+ type: String,
49739
+ default: ""
49740
+ },
49741
+ classPre: {
49742
+ type: String,
49743
+ default: ""
49744
+ },
49745
+ classCode: {
49746
+ type: String,
49747
+ default: ""
49748
+ },
49749
+ classButton: {
49750
+ type: String,
49751
+ default: ""
49752
+ },
49753
+ buttonText: {
49754
+ type: String,
49755
+ default: "Copy"
49756
+ },
49757
+ buttonCopiedText: {
49758
+ type: String,
49759
+ default: "\u{1F44D}"
49760
+ },
49761
+ unstyled: unstyledProp
49762
+ },
49763
+ emits: ["copy"],
49764
+ setup(__props, { emit }) {
49765
+ const props = __props;
49766
+ const { highlight: highlight2 } = useHighlight();
49767
+ const copyState = ref(false);
49768
+ function languageFormatter(lang) {
49769
+ if (lang === "js")
49770
+ return "javascript";
49771
+ if (lang === "ts")
49772
+ return "typescript";
49773
+ if (["sh", "bash", "zsh", "shell"].includes(lang))
49774
+ return "console";
49775
+ return lang;
49776
+ }
49777
+ function onCopyClick() {
49778
+ copyState.value = true;
49779
+ setTimeout(() => {
49780
+ copyState.value = false;
49781
+ }, 2e3);
49782
+ emit("copy");
49783
+ }
49784
+ const { settings: settings2 } = useSettings();
49785
+ const isUnstyled = settings2.global.unstyled || settings2.components.codeBlock.unstyled || props.unstyled;
49786
+ return (_ctx, _cache) => {
49787
+ return openBlock(), createElementBlock("div", {
49788
+ class: normalizeClass(`vuetiful-code-block code-block ${unref(isUnstyled) ? "" : "max-w-full bg-[#171717] text-sm text-white shadow rounded-container-token"}`)
49789
+ }, [
49790
+ createElementVNode("header", {
49791
+ class: normalizeClass(`vuetiful-code-block-header ${unref(isUnstyled) ? "" : "flex items-center justify-between p-2 pb-0 pl-4 text-xs uppercase text-[#a4a4a4]"} ${__props.classHeader}`)
49792
+ }, [
49793
+ createElementVNode("span", {
49794
+ class: normalizeClass(`vuetiful-code-block-language ${__props.classLanguage}`)
49795
+ }, toDisplayString(languageFormatter(__props.language)), 3),
49796
+ withDirectives((openBlock(), createBlock(unref(_sfc_main$w), {
49797
+ size: "sm",
49798
+ class: normalizeClass(`vuetiful-code-block-button ${__props.classButton ? __props.classButton : "bg-[#171717] dark:bg-[#171717] text-[#a4a4a4] dark:text-[#a4a4a4]"}`),
49799
+ onClick: _cache[0] || (_cache[0] = ($event) => onCopyClick())
49800
+ }, {
49801
+ default: withCtx(() => [
49802
+ createTextVNode(toDisplayString(!copyState.value ? __props.buttonText : __props.buttonCopiedText), 1)
49803
+ ]),
49804
+ _: 1
49805
+ }, 8, ["class"])), [
49806
+ [unref(clipboard), __props.code]
49807
+ ])
49808
+ ], 2),
49809
+ createElementVNode("pre", {
49810
+ class: normalizeClass(`vuetiful-code-block-pre ${unref(isUnstyled) ? "" : "!rounded-t-none bg-transparent p-4 !pt-0"} ${__props.preventOverflow ? "whitespace-pre-wrap break-all" : "overflow-auto"} ${__props.classPre}`)
49811
+ }, [
49812
+ createElementVNode("code", {
49813
+ class: normalizeClass(`vuetiful-code-block-code language-${__props.language} ${__props.classCode}`),
49814
+ innerHTML: unref(highlight2)(__props.code, __props.language)
49815
+ }, null, 10, _hoisted_1$1)
49816
+ ], 2)
49817
+ ], 2);
49818
+ };
49819
+ }
49820
+ });
49458
49821
  var components = /* @__PURE__ */ Object.freeze({
49459
49822
  __proto__: null,
49460
49823
  [Symbol.toStringTag]: "Module",
49461
49824
  VAvatar: _sfc_main$y,
49462
49825
  VButton: _sfc_main$w,
49463
- VBadge,
49464
- VChip,
49465
- VCodeBlock: _sfc_main$u,
49826
+ VBadge: _sfc_main$x,
49827
+ VChip: _sfc_main$v,
49466
49828
  VLightSwitch,
49467
- VRadioGroup: _sfc_main$r,
49468
- VRadioItem: _sfc_main$q,
49469
- VRadioLabel: _sfc_main$p,
49470
- VRadioDescription: _sfc_main$s,
49471
- VSwitchGroup: _sfc_main$m,
49472
- VSwitchLabel: _sfc_main$l,
49473
- VSwitchDescription: _sfc_main$n,
49474
- VSwitch: _sfc_main$o,
49475
- VAccordion: _sfc_main$7,
49829
+ VRadioGroup: _sfc_main$s,
49830
+ VRadioItem: _sfc_main$r,
49831
+ VRadioLabel: _sfc_main$q,
49832
+ VRadioDescription: _sfc_main$t,
49833
+ VSwitchGroup: _sfc_main$n,
49834
+ VSwitchLabel: _sfc_main$m,
49835
+ VSwitchDescription: _sfc_main$o,
49836
+ VSwitch: _sfc_main$p,
49837
+ VAccordion: _sfc_main$8,
49476
49838
  VAccordionItem,
49477
49839
  VAlert,
49478
- VCard: _sfc_main$4,
49479
- VCardBody,
49480
- VCardFooter: _sfc_main$2,
49481
- VCardHeader: _sfc_main$1,
49482
- VDrawer: _sfc_main$k,
49483
- VListbox: _sfc_main$c,
49840
+ VCard: _sfc_main$5,
49841
+ VCardBody: _sfc_main$4,
49842
+ VCardFooter: _sfc_main$3,
49843
+ VCardHeader: _sfc_main$2,
49844
+ VCodeBlock: _sfc_main$1,
49845
+ VDrawer: _sfc_main$l,
49846
+ VListbox: _sfc_main$d,
49484
49847
  VListboxButton,
49485
- VListboxItem: _sfc_main$b,
49486
- VListboxItems: _sfc_main$e,
49487
- VListboxLabel: _sfc_main$d,
49848
+ VListboxItem: _sfc_main$c,
49849
+ VListboxItems: _sfc_main$f,
49850
+ VListboxLabel: _sfc_main$e,
49488
49851
  VPreview,
49489
- VRail: _sfc_main$i,
49490
- VRailTile: _sfc_main$h,
49491
- VShell: _sfc_main$g,
49492
- VTab: _sfc_main$a,
49493
- VTabPanel: _sfc_main$9,
49494
- VTabs: _sfc_main$8
49852
+ VRail: _sfc_main$j,
49853
+ VRailTile: _sfc_main$i,
49854
+ VShell: _sfc_main$h,
49855
+ VTab: _sfc_main$b,
49856
+ VTabPanel: _sfc_main$a,
49857
+ VTabs: _sfc_main$9
49495
49858
  });
49496
49859
  var main = "";
49497
49860
  var tailwind = "";
49498
- const _sfc_main = defineComponent({
49499
- components: {
49500
- VLightSwitch,
49501
- VButton: _sfc_main$w
49502
- },
49861
+ const _hoisted_1 = { class: "vuetiful-theme-switcher" };
49862
+ const _hoisted_2 = { class: "flex items-center justify-between" };
49863
+ const _hoisted_3 = /* @__PURE__ */ createElementVNode("div", { class: "text-lg" }, "Mode", -1);
49864
+ const _sfc_main = /* @__PURE__ */ defineComponent({
49865
+ __name: "theme-switcher",
49503
49866
  props: {
49504
- bgLight: {
49505
- type: String,
49506
- default: "bg-surface-50"
49507
- },
49508
- bgDark: {
49867
+ background: {
49509
49868
  type: String,
49510
- default: "bg-surface-900"
49869
+ default: "bg-surface-50-900-token"
49511
49870
  },
49512
- textOnLight: {
49513
- type: String,
49514
- default: "text-surface-900"
49515
- },
49516
- textOnDark: {
49871
+ text: {
49517
49872
  type: String,
49518
- default: "text-surface-50"
49873
+ default: "text-surface-900-50-token"
49519
49874
  },
49520
- width: {
49875
+ widthPopup: {
49521
49876
  type: String,
49522
49877
  default: "w-60"
49523
49878
  },
49524
- height: {
49879
+ heightList: {
49525
49880
  type: String,
49526
49881
  default: "max-h-64 lg:max-h-[500px]"
49527
49882
  },
49528
- ring: {
49529
- type: String,
49530
- default: "ring-[1px] ring-surface-500/30"
49531
- },
49532
- rounded: {
49883
+ classButton: {
49533
49884
  type: String,
49534
- default: "rounded-token"
49885
+ default: ""
49535
49886
  },
49536
- roundedContainer: {
49887
+ classList: {
49537
49888
  type: String,
49538
- default: "rounded-container-token"
49889
+ default: ""
49539
49890
  },
49540
- buttonClasses: {
49891
+ classListItem: {
49541
49892
  type: String,
49542
- default: "w-24"
49893
+ default: ""
49543
49894
  }
49544
49895
  },
49545
- setup(props) {
49896
+ setup(__props) {
49546
49897
  const { initializeTheme, loadTheme, themes: themes2, chosenTheme: chosenTheme2 } = useTheme();
49547
- const { currentMode: currentMode2, MODE: MODE2 } = useDarkMode();
49548
49898
  const showPopup = ref(false);
49549
49899
  onMounted(() => {
49550
49900
  initializeTheme();
49551
49901
  });
49552
- const cTransition = `transition-all duration-[200ms]`;
49553
- function onKeyDown(event) {
49554
- if (["Enter", "Space"].includes(event.code)) {
49555
- event.preventDefault();
49556
- event.currentTarget.click();
49557
- }
49558
- }
49559
- const background = computed(() => {
49560
- return currentMode2.value === MODE2.LIGHT ? props.bgLight : props.bgDark;
49561
- });
49562
- const text = computed(() => {
49563
- return currentMode2.value === MODE2.LIGHT ? props.textOnLight : props.textOnDark;
49564
- });
49565
- const classes = computed(() => {
49566
- return `${cTransition}
49567
- ${background.value}
49568
- ${text.value}
49569
- ${props.width}
49570
- ${props.ring}
49571
- ${props.roundedContainer}`;
49572
- });
49573
- const listClasses = computed(() => {
49574
- return `${cTransition}
49575
- ${props.height}`;
49576
- });
49577
- const listItemClasses = computed(() => {
49578
- return `${cTransition}
49579
- ${props.ring}
49580
- ${props.rounded}`;
49581
- });
49582
- return {
49583
- onKeyDown,
49584
- loadTheme,
49585
- currentMode: currentMode2,
49586
- classes,
49587
- chosenTheme: chosenTheme2,
49588
- themes: themes2,
49589
- showPopup,
49590
- listClasses,
49591
- listItemClasses
49592
- };
49593
- }
49594
- });
49595
- const _hoisted_1 = { class: "cc-theme-switcher" };
49596
- const _hoisted_2 = { class: "space-y-4" };
49597
- const _hoisted_3 = { class: "flex items-center justify-between" };
49598
- const _hoisted_4 = /* @__PURE__ */ createElementVNode("h6", null, "Mode", -1);
49599
- const _hoisted_5 = { class: "flex flex-col gap-4" };
49600
- const _hoisted_6 = ["onClick"];
49601
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
49602
- const _component_VButton = resolveComponent("VButton");
49603
- const _component_v_light_switch = resolveComponent("v-light-switch");
49604
- return openBlock(), createElementBlock("div", _hoisted_1, [
49605
- createVNode(_component_VButton, {
49606
- class: normalizeClass(`cc-theme-switcher__button ${_ctx.buttonClasses}`),
49607
- onClick: _cache[0] || (_cache[0] = ($event) => _ctx.showPopup = !_ctx.showPopup)
49608
- }, {
49609
- default: withCtx(() => [
49610
- createTextVNode(" Theme ")
49611
- ]),
49612
- _: 1
49613
- }, 8, ["class"]),
49614
- _ctx.showPopup ? (openBlock(), createElementBlock("div", {
49615
- key: 0,
49616
- class: normalizeClass(["cc-theme-switcher__popup absolute z-10 mt-1 p-4 shadow-xl", _ctx.classes])
49617
- }, [
49618
- createElementVNode("div", _hoisted_2, [
49619
- createElementVNode("section", _hoisted_3, [
49620
- _hoisted_4,
49621
- createVNode(_component_v_light_switch)
49622
- ]),
49623
- createElementVNode("nav", {
49624
- class: normalizeClass(["list-nav -m-4 overflow-y-auto p-4", _ctx.listClasses])
49902
+ return (_ctx, _cache) => {
49903
+ return openBlock(), createElementBlock("div", _hoisted_1, [
49904
+ createVNode(unref(_sfc_main$w), {
49905
+ class: normalizeClass(`vuetiful-theme-switcher__button ${__props.classButton}`),
49906
+ onClick: _cache[0] || (_cache[0] = ($event) => showPopup.value = !showPopup.value)
49907
+ }, {
49908
+ default: withCtx(() => [
49909
+ createTextVNode(" Theme ")
49910
+ ]),
49911
+ _: 1
49912
+ }, 8, ["class"]),
49913
+ showPopup.value ? (openBlock(), createElementBlock("div", {
49914
+ key: 0,
49915
+ class: normalizeClass(["vuetiful-theme-switcher__popup absolute z-10 mt-1 space-y-4 p-4 shadow-xl rounded-container-token", `${__props.background} ${__props.text} ${__props.widthPopup} ${__props.classList}`])
49625
49916
  }, [
49626
- createElementVNode("ul", _hoisted_5, [
49627
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.themes, (theme, index2) => {
49628
- return openBlock(), createElementBlock("li", {
49629
- class: normalizeClass(["h-full w-full p-2 text-center capitalize hover:cursor-pointer hover:bg-primary-100 hover:text-primary-900", `${_ctx.listItemClasses} ${_ctx.chosenTheme === theme.name ? "bg-primary-50 text-primary-900" : "bg-surface-200 text-surface-900"}`]),
49917
+ createElementVNode("section", _hoisted_2, [
49918
+ _hoisted_3,
49919
+ createVNode(unref(VLightSwitch))
49920
+ ]),
49921
+ createElementVNode("nav", {
49922
+ class: normalizeClass(["vuetiful-theme-switcher__popup-list -m-4 flex flex-col gap-4 overflow-y-auto p-4", `${__props.heightList} ${__props.classList}`])
49923
+ }, [
49924
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(themes2), (theme, index2) => {
49925
+ return openBlock(), createBlock(unref(_sfc_main$w), {
49926
+ class: normalizeClass(["vuetiful-theme-switcher__popup-list-item h-full w-full p-2 text-center capitalize hover:cursor-pointer", `${__props.classListItem} ${unref(chosenTheme2) === theme.name ? "variant-filled-surface" : ""}`]),
49630
49927
  key: index2,
49631
- onClick: ($event) => _ctx.loadTheme(theme.name)
49632
- }, toDisplayString(theme.name), 11, _hoisted_6);
49928
+ onClick: ($event) => unref(loadTheme)(theme.name)
49929
+ }, {
49930
+ default: withCtx(() => [
49931
+ createTextVNode(toDisplayString(theme.name), 1)
49932
+ ]),
49933
+ _: 2
49934
+ }, 1032, ["class", "onClick"]);
49633
49935
  }), 128))
49634
- ])
49635
- ], 2)
49636
- ])
49637
- ], 2)) : createCommentVNode("", true)
49638
- ]);
49639
- }
49640
- var themeSwitcher = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
49936
+ ], 2)
49937
+ ], 2)) : createCommentVNode("", true)
49938
+ ]);
49939
+ };
49940
+ }
49941
+ });
49641
49942
  const { isBrowser } = usePlatform();
49642
49943
  const THEMES = {
49643
49944
  VUETIFUL: "vuetiful",
@@ -49738,4 +50039,4 @@ function install(app) {
49738
50039
  }
49739
50040
  }
49740
50041
  var index = { install };
49741
- export { themeSwitcher as ThemeSwitcher, _sfc_main$7 as VAccordion, VAccordionItem, VAlert, _sfc_main$y as VAvatar, VBadge, _sfc_main$w as VButton, _sfc_main$4 as VCard, VCardBody, _sfc_main$2 as VCardFooter, _sfc_main$1 as VCardHeader, VChip, _sfc_main$u as VCodeBlock, _sfc_main$k as VDrawer, VLightSwitch, _sfc_main$c as VListbox, VListboxButton, _sfc_main$b as VListboxItem, _sfc_main$e as VListboxItems, _sfc_main$d as VListboxLabel, VPreview, _sfc_main$s as VRadioDescription, _sfc_main$r as VRadioGroup, _sfc_main$q as VRadioItem, _sfc_main$p as VRadioLabel, _sfc_main$i as VRail, _sfc_main$h as VRailTile, _sfc_main$g as VShell, _sfc_main$o as VSwitch, _sfc_main$n as VSwitchDescription, _sfc_main$m as VSwitchGroup, _sfc_main$l as VSwitchLabel, _sfc_main$a as VTab, _sfc_main$9 as VTabPanel, _sfc_main$8 as VTabs, index as default, useDarkMode, useDrawer, useHighlight, useRail, useTheme, clipboard as vClipboard };
50042
+ export { _sfc_main as ThemeSwitcher, _sfc_main$8 as VAccordion, VAccordionItem, VAlert, _sfc_main$y as VAvatar, _sfc_main$x as VBadge, _sfc_main$w as VButton, _sfc_main$5 as VCard, _sfc_main$4 as VCardBody, _sfc_main$3 as VCardFooter, _sfc_main$2 as VCardHeader, _sfc_main$v as VChip, _sfc_main$1 as VCodeBlock, _sfc_main$l as VDrawer, VLightSwitch, _sfc_main$d as VListbox, VListboxButton, _sfc_main$c as VListboxItem, _sfc_main$f as VListboxItems, _sfc_main$e as VListboxLabel, VPreview, _sfc_main$t as VRadioDescription, _sfc_main$s as VRadioGroup, _sfc_main$r as VRadioItem, _sfc_main$q as VRadioLabel, _sfc_main$j as VRail, _sfc_main$i as VRailTile, _sfc_main$h as VShell, _sfc_main$p as VSwitch, _sfc_main$o as VSwitchDescription, _sfc_main$n as VSwitchGroup, _sfc_main$m as VSwitchLabel, _sfc_main$b as VTab, _sfc_main$a as VTabPanel, _sfc_main$9 as VTabs, index as default, useDarkMode, useDrawer, useHighlight, useRail, useSettings, useTheme, clipboard as vClipboard };