@vuetify/v0 1.2.0 → 1.2.2

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 (173) hide show
  1. package/README.md +34 -0
  2. package/dist/{adapter-TiGrumDi.mjs → adapter-B6R54NMr.mjs} +1 -1
  3. package/dist/{adapter-D5nT3bLw.d.mts → adapter-BC1VWu0H.d.mts} +0 -1
  4. package/dist/{adapter-PDTe5nFT.d.mts → adapter-BP7jNtvH.d.mts} +3 -4
  5. package/dist/{adapter-CqS8xexO.d.mts → adapter-Bi799Zn7.d.mts} +2 -3
  6. package/dist/{adapter-ClB-53_F.d.mts → adapter-CbkRdMju.d.mts} +0 -1
  7. package/dist/{adapter-BiQV5j8B.mjs → adapter-DMzQI6ma.mjs} +8 -6
  8. package/dist/{adapter-BXunW_mw.d.mts → adapter-w8SEWO2v.d.mts} +1 -2
  9. package/dist/{adapter-BuSfpxur.mjs → adapter-z5dFxm0f.mjs} +1 -1
  10. package/dist/browser/index.d.ts +1288 -1112
  11. package/dist/browser/index.js +619 -523
  12. package/dist/components/index.d.mts +2 -2
  13. package/dist/components/index.mjs +1 -1
  14. package/dist/{components-DBhVg-t1.mjs → components-CSFzUH3d.mjs} +407 -384
  15. package/dist/composables/index.d.mts +22 -22
  16. package/dist/composables/index.mjs +40 -40
  17. package/dist/{composables-ZGhVN2EJ.mjs → composables-CLNFa1uu.mjs} +55 -47
  18. package/dist/{consola-cad-VEV2.mjs → consola-B9K6H_EB.mjs} +1 -1
  19. package/dist/{consola-CdMU53rU.d.mts → consola-BGm_oQkS.d.mts} +1 -2
  20. package/dist/constants/index.d.mts +1 -1
  21. package/dist/constants/index.mjs +2 -2
  22. package/dist/{createDataTable-VmQEDn-7.mjs → createDataTable-CfJCltDt.mjs} +15 -13
  23. package/dist/{createGroup-B_LL7xRr.mjs → createGroup-CKE5o-VH.mjs} +17 -5
  24. package/dist/{createPlugin-Oo6t-vBw.mjs → createPlugin-YYkwbiUd.mjs} +3 -2
  25. package/dist/{createRegistry-DVdvep0v.mjs → createRegistry-D31hPifx.mjs} +10 -7
  26. package/dist/{createSelection-BNdDz8oY.mjs → createSelection-DdTgggyM.mjs} +5 -3
  27. package/dist/{createSingle-DHyIQ9Cj.mjs → createSingle-hQWwVTVX.mjs} +4 -3
  28. package/dist/{createTokens-DoISbwd7.mjs → createTokens-DuZrXRfN.mjs} +6 -5
  29. package/dist/data-table/adapters/client/index.d.mts +1 -1
  30. package/dist/data-table/adapters/client/index.mjs +1 -1
  31. package/dist/data-table/adapters/index.d.mts +6 -5
  32. package/dist/data-table/adapters/index.mjs +4 -4
  33. package/dist/data-table/adapters/server/index.d.mts +1 -1
  34. package/dist/data-table/adapters/server/index.mjs +1 -1
  35. package/dist/data-table/adapters/virtual/index.d.mts +1 -1
  36. package/dist/data-table/adapters/virtual/index.mjs +1 -1
  37. package/dist/data-table/index.d.mts +6 -6
  38. package/dist/data-table/index.mjs +5 -5
  39. package/dist/date/index.d.mts +1 -2
  40. package/dist/date/index.mjs +3 -3
  41. package/dist/features/adapters/flagsmith/index.d.mts +1 -1
  42. package/dist/features/adapters/flagsmith/index.mjs +1 -1
  43. package/dist/features/adapters/launchdarkly/index.d.mts +1 -1
  44. package/dist/features/adapters/launchdarkly/index.mjs +2 -1
  45. package/dist/features/adapters/posthog/index.d.mts +1 -1
  46. package/dist/features/adapters/posthog/index.mjs +3 -2
  47. package/dist/features/index.d.mts +3 -3
  48. package/dist/features/index.mjs +2 -2
  49. package/dist/{flagsmith-DcIDrI7_.d.mts → flagsmith-BA8q5LAx.d.mts} +1 -2
  50. package/dist/{globals-DaoKtIGF.mjs → globals-DVcr1oW0.mjs} +1 -1
  51. package/dist/{htmlElements-CHXZfsZu.mjs → htmlElements-Bt1XN_d8.mjs} +1 -1
  52. package/dist/{index-H_hl6-4b.d.mts → index-ClUa0Bl7.d.mts} +0 -1
  53. package/dist/{index-Cx0cWGlx.d.mts → index-Ct0Pmzpx.d.mts} +182 -64
  54. package/dist/{index-Di9e8sOm.d.mts → index-DDwX_0Um.d.mts} +6 -6
  55. package/dist/{index-DjRE4lLl.d.mts → index-DMQv04YO.d.mts} +19 -12
  56. package/dist/{index-D0ub61GV.d.mts → index-Dlr9_rf1.d.mts} +2 -3
  57. package/dist/index-DmDf_FmM.d.mts +4 -0
  58. package/dist/{index-Cm6CbqI6.d.mts → index-DqAML7MT.d.mts} +1103 -1059
  59. package/dist/{index-DtiaWx5U.d.mts → index-XNZrgWCq.d.mts} +1 -2
  60. package/dist/{index-DSPkZ0ql.d.mts → index-Y6VfllT2.d.mts} +26 -21
  61. package/dist/index-h87SNntw.d.mts +2 -0
  62. package/dist/index.d.mts +25 -25
  63. package/dist/index.mjs +43 -43
  64. package/dist/json/attributes.json +14 -2
  65. package/dist/json/tags.json +3 -0
  66. package/dist/json/web-types.json +32 -3
  67. package/dist/{launchdarkly-CUzunYol.d.mts → launchdarkly-CWhPi3lZ.d.mts} +1 -2
  68. package/dist/locale/adapters/index.d.mts +4 -3
  69. package/dist/locale/adapters/index.mjs +2 -2
  70. package/dist/locale/adapters/v0/index.d.mts +1 -1
  71. package/dist/locale/adapters/v0/index.mjs +1 -1
  72. package/dist/locale/adapters/vue-i18n/index.d.mts +1 -2
  73. package/dist/locale/adapters/vue-i18n/index.mjs +1 -1
  74. package/dist/locale/index.d.mts +4 -4
  75. package/dist/locale/index.mjs +3 -3
  76. package/dist/locale/messages/en/index.d.mts +3 -0
  77. package/dist/locale/messages/en/index.mjs +1 -0
  78. package/dist/logger/adapters/consola/index.d.mts +1 -1
  79. package/dist/logger/adapters/consola/index.mjs +1 -1
  80. package/dist/logger/adapters/index.d.mts +4 -4
  81. package/dist/logger/adapters/index.mjs +4 -4
  82. package/dist/logger/adapters/pino/index.d.mts +1 -1
  83. package/dist/logger/adapters/pino/index.mjs +1 -1
  84. package/dist/logger/adapters/v0/index.d.mts +1 -1
  85. package/dist/logger/adapters/v0/index.mjs +1 -1
  86. package/dist/logger/index.d.mts +6 -6
  87. package/dist/logger/index.mjs +5 -5
  88. package/dist/notifications/index.d.mts +1 -2
  89. package/dist/notifications/index.mjs +4 -2
  90. package/dist/palettes/ant/generate/index.d.mts +0 -1
  91. package/dist/palettes/ant/generate/index.mjs +1 -1
  92. package/dist/palettes/ant/index.d.mts +1 -2
  93. package/dist/palettes/index.d.mts +3 -4
  94. package/dist/palettes/leonardo/generate/index.d.mts +0 -1
  95. package/dist/palettes/leonardo/generate/index.mjs +1 -1
  96. package/dist/palettes/material/generate/index.d.mts +0 -1
  97. package/dist/palettes/material/generate/index.mjs +1 -1
  98. package/dist/palettes/material/index.d.mts +1 -2
  99. package/dist/palettes/md1/index.d.mts +1 -2
  100. package/dist/palettes/md2/index.d.mts +1 -2
  101. package/dist/palettes/radix/index.d.mts +1 -2
  102. package/dist/palettes/tailwind/index.d.mts +1 -2
  103. package/dist/permissions/adapters/index.d.mts +1 -1
  104. package/dist/permissions/adapters/index.mjs +1 -1
  105. package/dist/permissions/adapters/v0/index.d.mts +1 -1
  106. package/dist/permissions/adapters/v0/index.mjs +1 -1
  107. package/dist/permissions/index.d.mts +1 -1
  108. package/dist/permissions/index.mjs +2 -2
  109. package/dist/{pino-BscMO3RR.mjs → pino-DOI2Y-WP.mjs} +1 -1
  110. package/dist/{pino-DjeWBFnj.d.mts → pino-cSCLlizQ.d.mts} +1 -2
  111. package/dist/popover/adapters/floating-ui/index.d.mts +1 -2
  112. package/dist/popover/adapters/floating-ui/index.mjs +4 -3
  113. package/dist/popover/index.d.mts +3 -3
  114. package/dist/popover/index.mjs +2 -2
  115. package/dist/{posthog-CJAYssdr.d.mts → posthog-Bzaj2Jbd.d.mts} +1 -2
  116. package/dist/rules/index.d.mts +2 -2
  117. package/dist/rules/index.mjs +1 -1
  118. package/dist/{server-m7iD1vOr.mjs → server-CSXNc-my.mjs} +1 -1
  119. package/dist/{server-5vbJ7GGs.d.mts → server-bE0UxPFS.d.mts} +1 -2
  120. package/dist/storage/adapters/index.d.mts +2 -2
  121. package/dist/storage/adapters/index.mjs +1 -1
  122. package/dist/storage/adapters/memory/index.d.mts +1 -1
  123. package/dist/storage/adapters/memory/index.mjs +1 -1
  124. package/dist/storage/index.d.mts +4 -4
  125. package/dist/storage/index.mjs +2 -2
  126. package/dist/theme/adapters/index.d.mts +1 -1
  127. package/dist/theme/adapters/index.mjs +3 -3
  128. package/dist/theme/adapters/unhead/index.d.mts +1 -1
  129. package/dist/theme/adapters/unhead/index.mjs +1 -1
  130. package/dist/theme/adapters/v0/index.d.mts +1 -1
  131. package/dist/theme/adapters/v0/index.mjs +1 -1
  132. package/dist/theme/index.d.mts +1 -1
  133. package/dist/theme/index.mjs +4 -4
  134. package/dist/{toArray-MY9Kb1Qy.mjs → toArray-DCZRopC6.mjs} +1 -1
  135. package/dist/types/index.d.mts +1 -1
  136. package/dist/{unhead-C8zbWr45.mjs → unhead-hPXFvbDX.mjs} +2 -2
  137. package/dist/{useEventListener-2eAMwUdw.mjs → useEventListener-DI-1-WPJ.mjs} +2 -2
  138. package/dist/{useFeatures-DLafCOWt.mjs → useFeatures-CuTiM9YA.mjs} +4 -4
  139. package/dist/{useLocale-K_45ulPt.mjs → useLocale-OjumdVbi.mjs} +4 -4
  140. package/dist/{useLogger-YyWuYvrH.mjs → useLogger-CuGy-g9B.mjs} +3 -3
  141. package/dist/{useNotifications-Kh_KvM7j.mjs → useNotifications-BuZuDxSy.mjs} +6 -5
  142. package/dist/{usePermissions-BCGwsOES.mjs → usePermissions-CabbzZd_.mjs} +4 -4
  143. package/dist/{usePopover-BTo0AGIQ.mjs → usePopover-7WMiJ9Zt.mjs} +15 -12
  144. package/dist/{useRovingFocus-CkRnVmJ1.mjs → useRovingFocus-DuYBgzOA.mjs} +132 -94
  145. package/dist/{useRules-BuE5ffOJ.mjs → useRules-Bg7yBYP5.mjs} +5 -5
  146. package/dist/{useStorage-BT8-mjVs.mjs → useStorage-BtuW9p_Q.mjs} +7 -6
  147. package/dist/{useTheme-DkK6tPqY.mjs → useTheme-CfrtMZFH.mjs} +6 -6
  148. package/dist/{useTimer-CGVXk397.mjs → useTimer-aOp5haHg.mjs} +1 -1
  149. package/dist/utilities/index.d.mts +1 -1
  150. package/dist/utilities/index.mjs +66 -43
  151. package/dist/{v0-D0Exc2bO.mjs → v0-B9gSaems.mjs} +2 -2
  152. package/dist/{v0-SuxTihEe.mjs → v0-BusOrX6s.mjs} +2 -2
  153. package/dist/{v0-GI9U-rPA.d.mts → v0-CMqoGujd.d.mts} +1 -2
  154. package/dist/{v0-yZ2ZUtVF.mjs → v0-DoHWpAZn.mjs} +1 -1
  155. package/dist/{v0-CDW1Ktk-.d.mts → v0-IFGH9KS0.d.mts} +1 -2
  156. package/dist/{v0-B_53w7Fu.mjs → v0-Lo13oRUf.mjs} +2 -2
  157. package/dist/{v0-DfFK-p4X.d.mts → v0-QlSKvaAH.d.mts} +1 -2
  158. package/dist/{virtual-Bbu26O_h.mjs → virtual-Bsnip0cm.mjs} +1 -1
  159. package/dist/{virtual-JIdFLpTQ.d.mts → virtual-DrLIdUr1.d.mts} +1 -2
  160. package/package.json +10 -10
  161. package/dist/index-CX869wwk.d.mts +0 -1
  162. package/dist/index-CsuikFeJ.d.mts +0 -1
  163. /package/dist/{adapter-Chznb9Ju.mjs → adapter-B5mEUP5W.mjs} +0 -0
  164. /package/dist/{adapter-CrRJuxRk.mjs → adapter-B5teFrQH.mjs} +0 -0
  165. /package/dist/{adapter-D8zizQVP.mjs → adapter-BTNELv6-.mjs} +0 -0
  166. /package/dist/{adapter-ryk5H6YZ.d.mts → adapter-CHvvxw4c.d.mts} +0 -0
  167. /package/dist/{adapter-8UADsA3-.mjs → adapter-CxCiZYZO.mjs} +0 -0
  168. /package/dist/{createTrinity-z-3q9QWR.mjs → createTrinity-DJROWgXU.mjs} +0 -0
  169. /package/dist/{index-u_qSc2xS.d.mts → index-Bmr3SnAx.d.mts} +0 -0
  170. /package/dist/{index-Djhiy3nS.d.mts → index-Cyv2jtYx.d.mts} +0 -0
  171. /package/dist/{memory-CR6zvuaP.mjs → memory-C-Hi69Zc.mjs} +0 -0
  172. /package/dist/{memory-B7z1RR9r.d.mts → memory-DyA22X2q.d.mts} +0 -0
  173. /package/dist/{v0-Ch0yBKEj.mjs → v0-C4TLCYZJ.mjs} +0 -0
@@ -22,13 +22,13 @@ const SELF_CLOSING_TAGS = /* @__PURE__ */ new Set([
22
22
  /**
23
23
  * Check if an element is self-closing
24
24
  */
25
- /* @__NO_SIDE_EFFECTS__ */
25
+ /* #__NO_SIDE_EFFECTS__ */
26
26
  function isSelfClosingTag(tag) {
27
27
  return SELF_CLOSING_TAGS.has(tag.toLowerCase());
28
28
  }
29
29
  //#endregion
30
30
  //#region src/utilities/color.ts
31
- /* @__NO_SIDE_EFFECTS__ */
31
+ /* #__NO_SIDE_EFFECTS__ */
32
32
  function hexToRgb(hex) {
33
33
  const clean = hex.startsWith("#") ? hex.slice(1) : hex;
34
34
  if (clean.length === 3 || clean.length === 4) {
@@ -62,7 +62,7 @@ function hexToRgb(hex) {
62
62
  a
63
63
  };
64
64
  }
65
- /* @__NO_SIDE_EFFECTS__ */
65
+ /* #__NO_SIDE_EFFECTS__ */
66
66
  function rgbToHex({ r, g, b, a }) {
67
67
  const hex = "#" + [
68
68
  r,
@@ -98,7 +98,7 @@ function luminance(rgb) {
98
98
  function clamp$1(y) {
99
99
  return y > blkThrs ? y : y + Math.pow(blkThrs - y, blkClmp);
100
100
  }
101
- /* @__NO_SIDE_EFFECTS__ */
101
+ /* #__NO_SIDE_EFFECTS__ */
102
102
  function apca(text, background) {
103
103
  const txtY = clamp$1(luminance(text));
104
104
  const bgY = clamp$1(luminance(background));
@@ -109,7 +109,7 @@ function apca(text, background) {
109
109
  return contrast < loBoWoffset ? 0 : (contrast - loBoWoffset) * 100;
110
110
  } else {
111
111
  contrast = (Math.pow(bgY, revBG) - Math.pow(txtY, revTXT)) * scaleWoB;
112
- return contrast > -loWoBoffset ? 0 : (contrast + loWoBoffset) * 100;
112
+ return contrast > -.027 ? 0 : (contrast + loWoBoffset) * 100;
113
113
  }
114
114
  }
115
115
  const BLACK = {
@@ -122,7 +122,7 @@ const WHITE = {
122
122
  g: 255,
123
123
  b: 255
124
124
  };
125
- /* @__NO_SIDE_EFFECTS__ */
125
+ /* #__NO_SIDE_EFFECTS__ */
126
126
  function foreground(hex) {
127
127
  const rgb = /* @__PURE__ */ hexToRgb(hex);
128
128
  return Math.abs(/* @__PURE__ */ apca(BLACK, rgb)) > Math.abs(/* @__PURE__ */ apca(WHITE, rgb)) ? "#000000" : "#ffffff";
@@ -210,11 +210,38 @@ function project(ranges, map) {
210
210
  }
211
211
  return projected;
212
212
  }
213
+ function search(text, query, ignoreCase, foldQuery, foldTarget, matchAll) {
214
+ const folded = foldQuery ? fold(query) : query;
215
+ const needle = ignoreCase ? lower(folded) : folded;
216
+ if (needle.length === 0) return [];
217
+ if (!foldTarget) {
218
+ if (!ignoreCase) return collect(text, needle, matchAll);
219
+ const lowered = lower(text);
220
+ if (lowered.length === text.length) return collect(lowered, needle, matchAll);
221
+ }
222
+ const { folded: haystack, map } = foldWithMap(text, ignoreCase, foldTarget);
223
+ return project(collect(haystack, needle, matchAll), map);
224
+ }
225
+ function mergeRanges(a, b) {
226
+ const combined = [...a, ...b].toSorted((x, y) => x[0] - y[0] || x[1] - y[1]);
227
+ const merged = [];
228
+ for (const range of combined) {
229
+ const last = merged.at(-1);
230
+ if (last && range[0] < last[1]) continue;
231
+ merged.push(range);
232
+ }
233
+ return merged;
234
+ }
213
235
  /**
214
236
  * Finds `[start, end]` index pairs where `query` occurs in `text`, optionally
215
237
  * folding accents on either side. Returned indices always address the original
216
238
  * `text`, even when folding or case-conversion changed its length.
217
239
  *
240
+ * Directional folding (`'query'` or `'target'`) only transforms one side, but
241
+ * a spelling that's already identical on both sides — accents and all — is
242
+ * merged in verbatim, so folding one side never hides a match the other side
243
+ * already has.
244
+ *
218
245
  * @param text The string to search.
219
246
  * @param query The term to look for. An empty query yields no ranges.
220
247
  * @param options Optional `ignoreCase`, `ignoreAccents`, `matchAll`.
@@ -229,23 +256,19 @@ function project(ranges, map) {
229
256
  *
230
257
  * findMatchRanges('Łódź', 'Lo', { ignoreAccents: 'target' })
231
258
  * // [[0, 2]]
259
+ *
260
+ * findMatchRanges('… Kraków …', 'Kraków', { ignoreAccents: 'query' })
261
+ * // [[2, 8]] — typing the exact accented name always finds itself
232
262
  * ```
233
263
  */
234
- /* @__NO_SIDE_EFFECTS__ */
264
+ /* #__NO_SIDE_EFFECTS__ */
235
265
  function findMatchRanges(text, query, options = {}) {
236
266
  const { ignoreCase = false, ignoreAccents = false, matchAll = false } = options;
237
267
  const foldQuery = ignoreAccents === true || ignoreAccents === "query";
238
268
  const foldTarget = ignoreAccents === true || ignoreAccents === "target";
239
- const folded = foldQuery ? fold(query) : query;
240
- const needle = ignoreCase ? lower(folded) : folded;
241
- if (needle.length === 0) return [];
242
- if (!foldTarget) {
243
- if (!ignoreCase) return collect(text, needle, matchAll);
244
- const lowered = lower(text);
245
- if (lowered.length === text.length) return collect(lowered, needle, matchAll);
246
- }
247
- const { folded: haystack, map } = foldWithMap(text, ignoreCase, foldTarget);
248
- return project(collect(haystack, needle, matchAll), map);
269
+ if (foldQuery === foldTarget) return search(text, query, ignoreCase, foldQuery, foldTarget, matchAll);
270
+ const merged = mergeRanges(search(text, query, ignoreCase, false, false, true), search(text, query, ignoreCase, foldQuery, foldTarget, true));
271
+ return matchAll ? merged : merged.slice(0, 1);
249
272
  }
250
273
  //#endregion
251
274
  //#region src/constants/globals.ts
@@ -255,7 +278,7 @@ const SUPPORTS_MATCH_MEDIA = IN_BROWSER && "matchMedia" in window && typeof wind
255
278
  const SUPPORTS_OBSERVER = IN_BROWSER && "ResizeObserver" in window;
256
279
  const SUPPORTS_INTERSECTION_OBSERVER = IN_BROWSER && "IntersectionObserver" in window;
257
280
  const SUPPORTS_MUTATION_OBSERVER = IN_BROWSER && "MutationObserver" in window;
258
- const version = "1.2.0";
281
+ const version = "1.2.2";
259
282
  /* v8 ignore next -- build-time constant, __DEV__ short-circuits in tests */
260
283
  const __LOGGER_ENABLED__ = false;
261
284
  //#endregion
@@ -276,17 +299,24 @@ function getInstanceCompat() {
276
299
  if (INSTANCE_KEY in vueExports) return vueExports[INSTANCE_KEY];
277
300
  return Vue.getCurrentInstance();
278
301
  }
279
- /* @__NO_SIDE_EFFECTS__ */
302
+ /* #__NO_SIDE_EFFECTS__ */
280
303
  function instanceExists() {
281
304
  return !/* @__PURE__ */ isNull(getInstanceCompat());
282
305
  }
283
- /* @__NO_SIDE_EFFECTS__ */
306
+ /* #__NO_SIDE_EFFECTS__ */
284
307
  function instanceName() {
285
308
  return getInstanceCompat()?.type?.name;
286
309
  }
287
310
  //#endregion
288
311
  //#region src/utilities/helpers.ts
289
312
  /**
313
+ * @module utilities/helpers
314
+ *
315
+ * @remarks
316
+ * Collection of utility functions for type checking, object manipulation,
317
+ * and common transformations. All exports are tree-shakeable.
318
+ */
319
+ /**
290
320
  * Checks if a value is a function
291
321
  *
292
322
  * @param item The value to check
@@ -298,7 +328,7 @@ function instanceName() {
298
328
  * isFunction('string') // false
299
329
  * ```
300
330
  */
301
- /* @__NO_SIDE_EFFECTS__ */
331
+ /* #__NO_SIDE_EFFECTS__ */
302
332
  function isFunction(item) {
303
333
  return typeof item === "function";
304
334
  }
@@ -314,7 +344,7 @@ function isFunction(item) {
314
344
  * isString(123) // false
315
345
  * ```
316
346
  */
317
- /* @__NO_SIDE_EFFECTS__ */
347
+ /* #__NO_SIDE_EFFECTS__ */
318
348
  function isString(item) {
319
349
  return typeof item === "string";
320
350
  }
@@ -333,7 +363,7 @@ function isString(item) {
333
363
  *
334
364
  * @see {@link isNaN} to check for NaN specifically
335
365
  */
336
- /* @__NO_SIDE_EFFECTS__ */
366
+ /* #__NO_SIDE_EFFECTS__ */
337
367
  function isNumber(item) {
338
368
  return typeof item === "number";
339
369
  }
@@ -350,7 +380,7 @@ function isNumber(item) {
350
380
  * isBoolean(0) // false
351
381
  * ```
352
382
  */
353
- /* @__NO_SIDE_EFFECTS__ */
383
+ /* #__NO_SIDE_EFFECTS__ */
354
384
  function isBoolean(item) {
355
385
  return typeof item === "boolean";
356
386
  }
@@ -380,7 +410,7 @@ function isBoolean(item) {
380
410
  * @see {@link isArray} to check for arrays
381
411
  * @see {@link isNull} to check for null
382
412
  */
383
- /* @__NO_SIDE_EFFECTS__ */
413
+ /* #__NO_SIDE_EFFECTS__ */
384
414
  function isObject(item) {
385
415
  return typeof item === "object" && item !== null && !Array.isArray(item);
386
416
  }
@@ -404,7 +434,7 @@ function isObject(item) {
404
434
  * supported. If you specifically want native Promise instances, use
405
435
  * `instanceof Promise` directly.
406
436
  */
407
- /* @__NO_SIDE_EFFECTS__ */
437
+ /* #__NO_SIDE_EFFECTS__ */
408
438
  function isThenable(item) {
409
439
  return /* @__PURE__ */ isObject(item) && "then" in item && /* @__PURE__ */ isFunction(item.then);
410
440
  }
@@ -436,7 +466,7 @@ function isThenable(item) {
436
466
  * first branch (a predicate must be assignable to its parameter's type) without
437
467
  * letting an array argument capture the inference site.
438
468
  */
439
- /* @__NO_SIDE_EFFECTS__ */
469
+ /* #__NO_SIDE_EFFECTS__ */
440
470
  function isArray(item) {
441
471
  return Array.isArray(item);
442
472
  }
@@ -453,7 +483,7 @@ function isArray(item) {
453
483
  * isElement(null) // false
454
484
  * ```
455
485
  */
456
- /* @__NO_SIDE_EFFECTS__ */
486
+ /* #__NO_SIDE_EFFECTS__ */
457
487
  function isElement(item) {
458
488
  return typeof Element !== "undefined" && item instanceof Element;
459
489
  }
@@ -471,9 +501,9 @@ function isElement(item) {
471
501
  * const active = getActiveElement()
472
502
  * ```
473
503
  */
474
- /* @__NO_SIDE_EFFECTS__ */
504
+ /* #__NO_SIDE_EFFECTS__ */
475
505
  function getActiveElement() {
476
- if (typeof document === "undefined") return null;
506
+ if (!IN_BROWSER) return null;
477
507
  let active = document.activeElement;
478
508
  while (active?.shadowRoot?.activeElement) active = active.shadowRoot.activeElement;
479
509
  return active;
@@ -493,7 +523,7 @@ function getActiveElement() {
493
523
  * @see {@link isUndefined} to check for undefined
494
524
  * @see {@link isNullOrUndefined} to check for either
495
525
  */
496
- /* @__NO_SIDE_EFFECTS__ */
526
+ /* #__NO_SIDE_EFFECTS__ */
497
527
  function isNull(item) {
498
528
  return item === null;
499
529
  }
@@ -517,7 +547,7 @@ function isNull(item) {
517
547
  * @see {@link isNull} to check for null only
518
548
  * @see {@link isUndefined} to check for undefined only
519
549
  */
520
- /* @__NO_SIDE_EFFECTS__ */
550
+ /* #__NO_SIDE_EFFECTS__ */
521
551
  function isNullOrUndefined(item) {
522
552
  return item == null;
523
553
  }
@@ -536,7 +566,7 @@ function isNullOrUndefined(item) {
536
566
  * @see {@link isNull} to check for null
537
567
  * @see {@link isNullOrUndefined} to check for either
538
568
  */
539
- /* @__NO_SIDE_EFFECTS__ */
569
+ /* #__NO_SIDE_EFFECTS__ */
540
570
  function isUndefined(item) {
541
571
  return item === void 0;
542
572
  }
@@ -555,7 +585,7 @@ function isUndefined(item) {
555
585
  * isPrimitive(null) // false
556
586
  * ```
557
587
  */
558
- /* @__NO_SIDE_EFFECTS__ */
588
+ /* #__NO_SIDE_EFFECTS__ */
559
589
  function isPrimitive(item) {
560
590
  return typeof item === "string" || typeof item === "number" || typeof item === "boolean";
561
591
  }
@@ -571,7 +601,7 @@ function isPrimitive(item) {
571
601
  * isSymbol('symbol') // false
572
602
  * ```
573
603
  */
574
- /* @__NO_SIDE_EFFECTS__ */
604
+ /* #__NO_SIDE_EFFECTS__ */
575
605
  function isSymbol(item) {
576
606
  return typeof item === "symbol";
577
607
  }
@@ -595,7 +625,7 @@ function isSymbol(item) {
595
625
  *
596
626
  * @see {@link isNumber} to check if a value is a number type
597
627
  */
598
- /* @__NO_SIDE_EFFECTS__ */
628
+ /* #__NO_SIDE_EFFECTS__ */
599
629
  function isNaN(item) {
600
630
  return /* @__PURE__ */ isNumber(item) && Number.isNaN(item);
601
631
  }
@@ -636,7 +666,7 @@ function isPlainObject(value) {
636
666
  * mergeDeep({ arr: [1, 2] }, { arr: [3] }) // { arr: [3] }
637
667
  * ```
638
668
  */
639
- /* @__NO_SIDE_EFFECTS__ */
669
+ /* #__NO_SIDE_EFFECTS__ */
640
670
  function mergeDeep(target, ...sources) {
641
671
  const out = {};
642
672
  for (const key in target) if (Object.hasOwn(target, key)) out[key] = target[key];
@@ -675,7 +705,7 @@ let idCounter = 0;
675
705
  * const id = useId() // 'v0-0', 'v0-1', etc.
676
706
  * ```
677
707
  */
678
- /* @__NO_SIDE_EFFECTS__ */
708
+ /* #__NO_SIDE_EFFECTS__ */
679
709
  function useId() {
680
710
  if (/* @__PURE__ */ instanceExists()) return useId$1();
681
711
  return `v0-${idCounter++}`;
@@ -695,7 +725,7 @@ function useId() {
695
725
  * clamp(15, 0, 10) // 10
696
726
  * ```
697
727
  */
698
- /* @__NO_SIDE_EFFECTS__ */
728
+ /* #__NO_SIDE_EFFECTS__ */
699
729
  function clamp(value, min = 0, max = 1) {
700
730
  if (!Number.isFinite(value)) return min;
701
731
  return Math.max(min, Math.min(max, value));
@@ -715,7 +745,7 @@ function clamp(value, min = 0, max = 1) {
715
745
  * range(0) // []
716
746
  * ```
717
747
  */
718
- /* @__NO_SIDE_EFFECTS__ */
748
+ /* #__NO_SIDE_EFFECTS__ */
719
749
  function range(length, start = 0) {
720
750
  return Array.from({ length }, (_, index) => start + index);
721
751
  }
@@ -751,7 +781,7 @@ function range(length, start = 0) {
751
781
  * pxToNumber('0px', 100) // 0
752
782
  * ```
753
783
  */
754
- /* @__NO_SIDE_EFFECTS__ */
784
+ /* #__NO_SIDE_EFFECTS__ */
755
785
  function pxToNumber(value, fallback = 0) {
756
786
  if (!/* @__PURE__ */ isString(value)) return fallback;
757
787
  const parsed = Number.parseFloat(value);
@@ -763,7 +793,7 @@ function pxToNumber(value, fallback = 0) {
763
793
  *
764
794
  * @internal
765
795
  */
766
- /* @__NO_SIDE_EFFECTS__ */
796
+ /* #__NO_SIDE_EFFECTS__ */
767
797
  function resolveIds(ids, getter) {
768
798
  const result = [];
769
799
  for (const id of ids) {
@@ -777,7 +807,7 @@ function resolveIds(ids, getter) {
777
807
  *
778
808
  * @internal
779
809
  */
780
- /* @__NO_SIDE_EFFECTS__ */
810
+ /* #__NO_SIDE_EFFECTS__ */
781
811
  function resolveIndexes(items) {
782
812
  const result = [];
783
813
  for (const item of items) {
@@ -899,7 +929,7 @@ var V0Error = class extends Error {
899
929
  * }
900
930
  * ```
901
931
  */
902
- /* @__NO_SIDE_EFFECTS__ */
932
+ /* #__NO_SIDE_EFFECTS__ */
903
933
  function isV0Error(value, code) {
904
934
  if (!(value instanceof V0Error)) return false;
905
935
  return /* @__PURE__ */ isUndefined(code) || value.code === code;
@@ -929,7 +959,7 @@ function isV0Error(value, code) {
929
959
  * serving as the foundation for all other components that need polymorphic
930
960
  * rendering capabilities.
931
961
  */
932
- const _sfc_main$12 = /* @__PURE__ */ defineComponent({
962
+ const _sfc_main$12 = /*@__PURE__*/ defineComponent({
933
963
  name: "Atom",
934
964
  __name: "Atom",
935
965
  props: {
@@ -946,7 +976,7 @@ const _sfc_main$12 = /* @__PURE__ */ defineComponent({
946
976
  const isSelfClosing = toRef(() => /* @__PURE__ */ isString(__props.as) && /* @__PURE__ */ isSelfClosingTag(__props.as));
947
977
  const slotProps = toRef(() => attrs);
948
978
  return (_ctx, _cache) => {
949
- return __props.renderless || unref(isNull)(__props.as) ? renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 0 }, slotProps.value))) : !isSelfClosing.value ? (openBlock(), createBlock(resolveDynamicComponent(__props.as), mergeProps({ key: 1 }, slotProps.value, {
979
+ return __props.renderless || unref(isNull)(__props.as) ? renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)), void 0, void 0, 0) : !isSelfClosing.value ? (openBlock(), createBlock(resolveDynamicComponent(__props.as), mergeProps({ key: 1 }, slotProps.value, {
950
980
  ref_key: "element",
951
981
  ref: element
952
982
  }), {
@@ -962,7 +992,7 @@ const _sfc_main$12 = /* @__PURE__ */ defineComponent({
962
992
  });
963
993
  //#endregion
964
994
  //#region src/components/Alert/AlertDescription.vue
965
- const _sfc_main = /* @__PURE__ */ defineComponent({
995
+ const _sfc_main = /*@__PURE__*/ defineComponent({
966
996
  name: "AlertDescription",
967
997
  __name: "AlertDescription",
968
998
  props: {
@@ -984,7 +1014,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
984
1014
  });
985
1015
  //#endregion
986
1016
  //#region src/components/Alert/AlertRoot.vue
987
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1017
+ const _sfc_main$9 = /*@__PURE__*/ defineComponent({
988
1018
  name: "AlertRoot",
989
1019
  __name: "AlertRoot",
990
1020
  props: {
@@ -1011,7 +1041,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1011
1041
  });
1012
1042
  //#endregion
1013
1043
  //#region src/components/Alert/AlertTitle.vue
1014
- const _sfc_main$10 = /* @__PURE__ */ defineComponent({
1044
+ const _sfc_main$10 = /*@__PURE__*/ defineComponent({
1015
1045
  name: "AlertTitle",
1016
1046
  __name: "AlertTitle",
1017
1047
  props: {
@@ -1225,10 +1255,10 @@ function createContext(keyOrOptions, defaultValue) {
1225
1255
  //#endregion
1226
1256
  //#region src/components/AlertDialog/AlertDialogRoot.vue
1227
1257
  const [useAlertDialogContext, provideAlertDialogContext] = createContext();
1228
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
1258
+ const _sfc_main$7 = /*@__PURE__*/ defineComponent({
1229
1259
  name: "AlertDialogRoot",
1230
1260
  __name: "AlertDialogRoot",
1231
- props: /* @__PURE__ */ mergeModels({
1261
+ props: /*@__PURE__*/ mergeModels({
1232
1262
  namespace: { default: "v0:alert-dialog" },
1233
1263
  id: {},
1234
1264
  as: { default: null },
@@ -1240,7 +1270,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
1240
1270
  },
1241
1271
  "modelModifiers": {}
1242
1272
  }),
1243
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
1273
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
1244
1274
  setup(__props) {
1245
1275
  const id = __props.id ?? /* @__PURE__ */ useId();
1246
1276
  const isOpen = useModel(__props, "modelValue");
@@ -1289,7 +1319,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
1289
1319
  });
1290
1320
  //#endregion
1291
1321
  //#region src/components/AlertDialog/AlertDialogAction.vue
1292
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
1322
+ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
1293
1323
  name: "AlertDialogAction",
1294
1324
  __name: "AlertDialogAction",
1295
1325
  props: {
@@ -1352,7 +1382,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
1352
1382
  });
1353
1383
  //#endregion
1354
1384
  //#region src/components/AlertDialog/AlertDialogActivator.vue
1355
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
1385
+ const _sfc_main$2 = /*@__PURE__*/ defineComponent({
1356
1386
  name: "AlertDialogActivator",
1357
1387
  __name: "AlertDialogActivator",
1358
1388
  props: {
@@ -1397,7 +1427,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
1397
1427
  });
1398
1428
  //#endregion
1399
1429
  //#region src/components/AlertDialog/AlertDialogCancel.vue
1400
- const _sfc_main$3 = /* @__PURE__ */ defineComponent({
1430
+ const _sfc_main$3 = /*@__PURE__*/ defineComponent({
1401
1431
  name: "AlertDialogCancel",
1402
1432
  __name: "AlertDialogCancel",
1403
1433
  props: {
@@ -2126,8 +2156,10 @@ function createRegistry(options) {
2126
2156
  value = patch.value;
2127
2157
  valueIsIndex = false;
2128
2158
  }
2129
- if (valueIsIndex !== existing.valueIsIndex) if (valueIsIndex) indexDependentCount++;
2130
- else indexDependentCount--;
2159
+ if (valueIsIndex !== existing.valueIsIndex) {
2160
+ if (valueIsIndex) indexDependentCount++;
2161
+ else indexDependentCount--;
2162
+ }
2131
2163
  if (!Object.is(value, existing.value)) {
2132
2164
  unassign(existing.value, id);
2133
2165
  assign(value, id);
@@ -2276,12 +2308,12 @@ function createRegistry(options) {
2276
2308
  const valueIsIndex = registration.valueIsIndex ?? valueIsUndefined;
2277
2309
  if (valueIsIndex) indexDependentCount++;
2278
2310
  const input = {
2311
+ unregister: () => unregister(id),
2279
2312
  ...registration,
2280
2313
  id,
2281
2314
  index,
2282
2315
  value,
2283
- valueIsIndex,
2284
- unregister: () => unregister(id)
2316
+ valueIsIndex
2285
2317
  };
2286
2318
  const ticket = reactive ? shallowReactive(input) : input;
2287
2319
  if (auto) minted.add(ticket);
@@ -2618,6 +2650,7 @@ function createModel(_options = {}) {
2618
2650
  const id = registration.id ?? /* @__PURE__ */ useId();
2619
2651
  const item = {
2620
2652
  disabled: false,
2653
+ unregister: () => unregister(id),
2621
2654
  ...registration,
2622
2655
  isSelected: toRef(() => selected(id)),
2623
2656
  id
@@ -3308,7 +3341,7 @@ function useTokens(namespace = "v0:tokens") {
3308
3341
  * @param prefix An optional prefix to prepend to each token ID.
3309
3342
  * @returns An array of flattened tokens, each with an ID and value.
3310
3343
  */
3311
- /* @__NO_SIDE_EFFECTS__ */
3344
+ /* #__NO_SIDE_EFFECTS__ */
3312
3345
  function flatten(tokens, prefix = "", flat = false) {
3313
3346
  const flattened = [];
3314
3347
  const stack = [{
@@ -3547,7 +3580,7 @@ const [createLocaleContext, createLocalePlugin, useLocale] = createPluginContext
3547
3580
  });
3548
3581
  //#endregion
3549
3582
  //#region src/components/AlertDialog/AlertDialogClose.vue
3550
- const _sfc_main$4 = /* @__PURE__ */ defineComponent({
3583
+ const _sfc_main$4 = /*@__PURE__*/ defineComponent({
3551
3584
  name: "AlertDialogClose",
3552
3585
  __name: "AlertDialogClose",
3553
3586
  props: {
@@ -3631,7 +3664,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
3631
3664
  * console.log(valueAsArray) // ['Example Value']
3632
3665
  * ```
3633
3666
  */
3634
- /* @__NO_SIDE_EFFECTS__ */
3667
+ /* #__NO_SIDE_EFFECTS__ */
3635
3668
  function toArray(value) {
3636
3669
  return /* @__PURE__ */ isNullOrUndefined(value) ? [] : /* @__PURE__ */ isArray(value) ? value : [value];
3637
3670
  }
@@ -4071,7 +4104,7 @@ function useClickOutside(target, handler, options = {}) {
4071
4104
  * toElement(component) // Element | undefined (from $el)
4072
4105
  * ```
4073
4106
  */
4074
- /* @__NO_SIDE_EFFECTS__ */
4107
+ /* #__NO_SIDE_EFFECTS__ */
4075
4108
  function toElement(target) {
4076
4109
  if (!target) return void 0;
4077
4110
  if (/* @__PURE__ */ isElement(target)) return target;
@@ -4434,7 +4467,7 @@ function useToggleScope(source, fn) {
4434
4467
  }
4435
4468
  //#endregion
4436
4469
  //#region src/components/AlertDialog/AlertDialogContent.vue
4437
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
4470
+ const _sfc_main$5 = /*@__PURE__*/ defineComponent({
4438
4471
  name: "AlertDialogContent",
4439
4472
  __name: "AlertDialogContent",
4440
4473
  props: {
@@ -4535,7 +4568,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
4535
4568
  });
4536
4569
  //#endregion
4537
4570
  //#region src/components/AlertDialog/AlertDialogDescription.vue
4538
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
4571
+ const _sfc_main$6 = /*@__PURE__*/ defineComponent({
4539
4572
  name: "AlertDialogDescription",
4540
4573
  __name: "AlertDialogDescription",
4541
4574
  props: {
@@ -4565,7 +4598,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
4565
4598
  });
4566
4599
  //#endregion
4567
4600
  //#region src/components/AlertDialog/AlertDialogTitle.vue
4568
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
4601
+ const _sfc_main$8 = /*@__PURE__*/ defineComponent({
4569
4602
  name: "AlertDialogTitle",
4570
4603
  __name: "AlertDialogTitle",
4571
4604
  props: {
@@ -4779,7 +4812,7 @@ const AlertDialog = {
4779
4812
  };
4780
4813
  //#endregion
4781
4814
  //#region src/components/AspectRatio/AspectRatio.vue
4782
- const _sfc_main$11 = /* @__PURE__ */ defineComponent({
4815
+ const _sfc_main$11 = /*@__PURE__*/ defineComponent({
4783
4816
  name: "AspectRatio",
4784
4817
  __name: "AspectRatio",
4785
4818
  props: {
@@ -5055,7 +5088,7 @@ function createObserver(target, userCallback, config) {
5055
5088
  * with no layout box resolves its lengths to `''`, and this runs on whatever
5056
5089
  * `getComputedStyle` returns.
5057
5090
  */
5058
- /* @__NO_SIDE_EFFECTS__ */
5091
+ /* #__NO_SIDE_EFFECTS__ */
5059
5092
  function measure(el) {
5060
5093
  const rect = el.getBoundingClientRect();
5061
5094
  const style = getComputedStyle(el);
@@ -5311,7 +5344,7 @@ function useElementSize(target) {
5311
5344
  */
5312
5345
  function createOverflow(options = {}) {
5313
5346
  const { container: _container, gap = 0, reserved = 0, itemWidth, reverse } = options;
5314
- const container = /* @__PURE__ */ isUndefined(_container) ? shallowRef() : toRef(_container);
5347
+ const container = /* @__PURE__ */ isUndefined(_container) ? shallowRef() : toRef(() => /* @__PURE__ */ toElement(_container) ?? null);
5315
5348
  const widths = shallowRef(/* @__PURE__ */ new Map());
5316
5349
  const { width } = useElementSize(container);
5317
5350
  function measure(index, el) {
@@ -5444,7 +5477,7 @@ function useOverflow(namespace = "v0:overflow") {
5444
5477
  //#endregion
5445
5478
  //#region src/components/Avatar/AvatarGroup.vue
5446
5479
  const [useAvatarGroup, provideAvatarGroup] = createContext();
5447
- const _sfc_main$14 = /* @__PURE__ */ defineComponent({
5480
+ const _sfc_main$14 = /*@__PURE__*/ defineComponent({
5448
5481
  name: "AvatarGroup",
5449
5482
  __name: "AvatarGroup",
5450
5483
  props: {
@@ -5556,7 +5589,7 @@ const _sfc_main$14 = /* @__PURE__ */ defineComponent({
5556
5589
  //#endregion
5557
5590
  //#region src/components/Avatar/AvatarRoot.vue
5558
5591
  const [useAvatarRoot, provideAvatarRoot] = createContext();
5559
- const _sfc_main$17 = /* @__PURE__ */ defineComponent({
5592
+ const _sfc_main$17 = /*@__PURE__*/ defineComponent({
5560
5593
  name: "AvatarRoot",
5561
5594
  __name: "AvatarRoot",
5562
5595
  props: {
@@ -5635,7 +5668,7 @@ const _sfc_main$17 = /* @__PURE__ */ defineComponent({
5635
5668
  });
5636
5669
  //#endregion
5637
5670
  //#region src/components/Avatar/AvatarFallback.vue
5638
- const _sfc_main$13 = /* @__PURE__ */ defineComponent({
5671
+ const _sfc_main$13 = /*@__PURE__*/ defineComponent({
5639
5672
  name: "AvatarFallback",
5640
5673
  __name: "AvatarFallback",
5641
5674
  props: {
@@ -5771,7 +5804,7 @@ function useImage(options) {
5771
5804
  }
5772
5805
  //#endregion
5773
5806
  //#region src/components/Avatar/AvatarImage.vue
5774
- const _sfc_main$15 = /* @__PURE__ */ defineComponent({
5807
+ const _sfc_main$15 = /*@__PURE__*/ defineComponent({
5775
5808
  name: "AvatarImage",
5776
5809
  __name: "AvatarImage",
5777
5810
  props: {
@@ -5863,7 +5896,7 @@ const _sfc_main$15 = /* @__PURE__ */ defineComponent({
5863
5896
  * is set, this component self-measures and feeds its width back to the
5864
5897
  * group so createOverflow can reserve space for it (wired in Task 4).
5865
5898
  */
5866
- const _sfc_main$16 = /* @__PURE__ */ defineComponent({
5899
+ const _sfc_main$16 = /*@__PURE__*/ defineComponent({
5867
5900
  name: "AvatarIndicator",
5868
5901
  __name: "AvatarIndicator",
5869
5902
  props: {
@@ -6398,7 +6431,8 @@ function createGroup(_options = {}) {
6398
6431
  unselect: () => unselect(id),
6399
6432
  toggle: () => toggle(id),
6400
6433
  mix: () => mix(id),
6401
- unmix: () => unmix(id)
6434
+ unmix: () => unmix(id),
6435
+ unregister: () => unregister(id)
6402
6436
  };
6403
6437
  const ticket = selection.register(item);
6404
6438
  if (toValue(registration.indeterminate)) mix(id);
@@ -6421,6 +6455,14 @@ function createGroup(_options = {}) {
6421
6455
  mixedIds.clear();
6422
6456
  selection.reset();
6423
6457
  }
6458
+ function clear() {
6459
+ mixedIds.clear();
6460
+ selection.clear();
6461
+ }
6462
+ function dispose() {
6463
+ mixedIds.clear();
6464
+ selection.dispose();
6465
+ }
6424
6466
  const selectableItems = computed(() => {
6425
6467
  return proxy.values.filter((item) => !toValue(item.disabled));
6426
6468
  });
@@ -6462,6 +6504,8 @@ function createGroup(_options = {}) {
6462
6504
  offboard,
6463
6505
  onboard,
6464
6506
  reset,
6507
+ clear,
6508
+ dispose,
6465
6509
  selectAll,
6466
6510
  unselectAll,
6467
6511
  toggleAll,
@@ -6540,7 +6584,7 @@ function useGroup(namespace = "v0:group") {
6540
6584
  //#endregion
6541
6585
  //#region src/components/Breadcrumbs/BreadcrumbsRoot.vue
6542
6586
  const [useBreadcrumbsRoot, provideBreadcrumbsRoot] = createContext();
6543
- const _sfc_main$25 = /* @__PURE__ */ defineComponent({
6587
+ const _sfc_main$25 = /*@__PURE__*/ defineComponent({
6544
6588
  name: "BreadcrumbsRoot",
6545
6589
  __name: "BreadcrumbsRoot",
6546
6590
  props: {
@@ -6624,7 +6668,7 @@ const _sfc_main$25 = /* @__PURE__ */ defineComponent({
6624
6668
  const fD = firstDividerWidth.value;
6625
6669
  const eW = ellipsisWidth.value;
6626
6670
  const reserved = fI + __props.gap + fD + __props.gap + eW + __props.gap;
6627
- if (capacity === Infinity || capacity >= measuredCount) {
6671
+ if (ellipsisTickets.length === 0 || capacity === Infinity || capacity >= measuredCount) {
6628
6672
  hiddenCount.value = 0;
6629
6673
  if (expanded.value) expanded.value = false;
6630
6674
  for (const t of ellipsisTickets) group.unselect(t.id);
@@ -6702,7 +6746,7 @@ const _sfc_main$25 = /* @__PURE__ */ defineComponent({
6702
6746
  });
6703
6747
  //#endregion
6704
6748
  //#region src/components/Breadcrumbs/BreadcrumbsActivator.vue
6705
- const _sfc_main$18 = /* @__PURE__ */ defineComponent({
6749
+ const _sfc_main$18 = /*@__PURE__*/ defineComponent({
6706
6750
  name: "BreadcrumbsActivator",
6707
6751
  __name: "BreadcrumbsActivator",
6708
6752
  props: {
@@ -6756,7 +6800,7 @@ const _sfc_main$18 = /* @__PURE__ */ defineComponent({
6756
6800
  });
6757
6801
  //#endregion
6758
6802
  //#region src/components/Breadcrumbs/BreadcrumbsDivider.vue
6759
- const _sfc_main$19 = /* @__PURE__ */ defineComponent({
6803
+ const _sfc_main$19 = /*@__PURE__*/ defineComponent({
6760
6804
  name: "BreadcrumbsDivider",
6761
6805
  __name: "BreadcrumbsDivider",
6762
6806
  props: {
@@ -6805,7 +6849,7 @@ const _sfc_main$19 = /* @__PURE__ */ defineComponent({
6805
6849
  });
6806
6850
  //#endregion
6807
6851
  //#region src/components/Breadcrumbs/BreadcrumbsEllipsis.vue
6808
- const _sfc_main$20 = /* @__PURE__ */ defineComponent({
6852
+ const _sfc_main$20 = /*@__PURE__*/ defineComponent({
6809
6853
  name: "BreadcrumbsEllipsis",
6810
6854
  __name: "BreadcrumbsEllipsis",
6811
6855
  props: {
@@ -6863,7 +6907,7 @@ const _sfc_main$20 = /* @__PURE__ */ defineComponent({
6863
6907
  });
6864
6908
  //#endregion
6865
6909
  //#region src/components/Breadcrumbs/BreadcrumbsItem.vue
6866
- const _sfc_main$21 = /* @__PURE__ */ defineComponent({
6910
+ const _sfc_main$21 = /*@__PURE__*/ defineComponent({
6867
6911
  name: "BreadcrumbsItem",
6868
6912
  __name: "BreadcrumbsItem",
6869
6913
  props: {
@@ -6918,7 +6962,7 @@ const _sfc_main$21 = /* @__PURE__ */ defineComponent({
6918
6962
  });
6919
6963
  //#endregion
6920
6964
  //#region src/components/Breadcrumbs/BreadcrumbsLink.vue
6921
- const _sfc_main$22 = /* @__PURE__ */ defineComponent({
6965
+ const _sfc_main$22 = /*@__PURE__*/ defineComponent({
6922
6966
  name: "BreadcrumbsLink",
6923
6967
  __name: "BreadcrumbsLink",
6924
6968
  props: {
@@ -6939,7 +6983,7 @@ const _sfc_main$22 = /* @__PURE__ */ defineComponent({
6939
6983
  });
6940
6984
  //#endregion
6941
6985
  //#region src/components/Breadcrumbs/BreadcrumbsList.vue
6942
- const _sfc_main$23 = /* @__PURE__ */ defineComponent({
6986
+ const _sfc_main$23 = /*@__PURE__*/ defineComponent({
6943
6987
  name: "BreadcrumbsList",
6944
6988
  __name: "BreadcrumbsList",
6945
6989
  props: {
@@ -6961,7 +7005,7 @@ const _sfc_main$23 = /* @__PURE__ */ defineComponent({
6961
7005
  });
6962
7006
  //#endregion
6963
7007
  //#region src/components/Breadcrumbs/BreadcrumbsPage.vue
6964
- const _sfc_main$24 = /* @__PURE__ */ defineComponent({
7008
+ const _sfc_main$24 = /*@__PURE__*/ defineComponent({
6965
7009
  name: "BreadcrumbsPage",
6966
7010
  __name: "BreadcrumbsPage",
6967
7011
  props: {
@@ -7304,10 +7348,10 @@ function useProxyModel(context, model, options) {
7304
7348
  //#endregion
7305
7349
  //#region src/components/Button/ButtonGroup.vue
7306
7350
  const [useButtonGroup, provideButtonGroup] = createContext();
7307
- const _sfc_main$27 = /* @__PURE__ */ defineComponent({
7351
+ const _sfc_main$27 = /*@__PURE__*/ defineComponent({
7308
7352
  name: "ButtonGroup",
7309
7353
  __name: "ButtonGroup",
7310
- props: /* @__PURE__ */ mergeModels({
7354
+ props: /*@__PURE__*/ mergeModels({
7311
7355
  namespace: { default: "v0:button:group" },
7312
7356
  disabled: {
7313
7357
  type: Boolean,
@@ -7330,7 +7374,7 @@ const _sfc_main$27 = /* @__PURE__ */ defineComponent({
7330
7374
  "modelValue": {},
7331
7375
  "modelModifiers": {}
7332
7376
  }),
7333
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
7377
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
7334
7378
  setup(__props) {
7335
7379
  const model = useModel(__props, "modelValue");
7336
7380
  const selection = createSelection({
@@ -7381,7 +7425,7 @@ const visuallyHiddenStyle$6 = {
7381
7425
  whiteSpace: "nowrap",
7382
7426
  border: "0"
7383
7427
  };
7384
- const _sfc_main$28 = /* @__PURE__ */ defineComponent({
7428
+ const _sfc_main$28 = /*@__PURE__*/ defineComponent({
7385
7429
  name: "ButtonHiddenInput",
7386
7430
  __name: "ButtonHiddenInput",
7387
7431
  props: {
@@ -7566,7 +7610,7 @@ function useTimer(handler, options = {}) {
7566
7610
  //#endregion
7567
7611
  //#region src/components/Button/ButtonRoot.vue
7568
7612
  const [useButtonRoot, provideButtonRoot] = createContext();
7569
- const _sfc_main$31 = /* @__PURE__ */ defineComponent({
7613
+ const _sfc_main$31 = /*@__PURE__*/ defineComponent({
7570
7614
  name: "ButtonRoot",
7571
7615
  inheritAttrs: false,
7572
7616
  __name: "ButtonRoot",
@@ -7691,7 +7735,7 @@ const _sfc_main$31 = /* @__PURE__ */ defineComponent({
7691
7735
  });
7692
7736
  //#endregion
7693
7737
  //#region src/components/Button/ButtonContent.vue
7694
- const _sfc_main$26 = /* @__PURE__ */ defineComponent({
7738
+ const _sfc_main$26 = /*@__PURE__*/ defineComponent({
7695
7739
  name: "ButtonContent",
7696
7740
  __name: "ButtonContent",
7697
7741
  props: {
@@ -7709,7 +7753,7 @@ const _sfc_main$26 = /* @__PURE__ */ defineComponent({
7709
7753
  });
7710
7754
  //#endregion
7711
7755
  //#region src/components/Button/ButtonIcon.vue
7712
- const _sfc_main$29 = /* @__PURE__ */ defineComponent({
7756
+ const _sfc_main$29 = /*@__PURE__*/ defineComponent({
7713
7757
  name: "ButtonIcon",
7714
7758
  __name: "ButtonIcon",
7715
7759
  props: {
@@ -7740,7 +7784,7 @@ const _sfc_main$29 = /* @__PURE__ */ defineComponent({
7740
7784
  });
7741
7785
  //#endregion
7742
7786
  //#region src/components/Button/ButtonLoading.vue
7743
- const _sfc_main$30 = /* @__PURE__ */ defineComponent({
7787
+ const _sfc_main$30 = /*@__PURE__*/ defineComponent({
7744
7788
  name: "ButtonLoading",
7745
7789
  __name: "ButtonLoading",
7746
7790
  props: {
@@ -7766,7 +7810,7 @@ const _sfc_main$30 = /* @__PURE__ */ defineComponent({
7766
7810
  onBeforeUnmount(() => ticket.unregister());
7767
7811
  const slotProps = toRef(() => ({ isSelected: ticket.isSelected.value }));
7768
7812
  return (_ctx, _cache) => {
7769
- return unref(ticket).isSelected.value ? renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 0 }, slotProps.value))) : createCommentVNode("v-if", true);
7813
+ return unref(ticket).isSelected.value ? renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)), void 0, void 0, 0) : createCommentVNode("v-if", true);
7770
7814
  };
7771
7815
  }
7772
7816
  });
@@ -8049,6 +8093,7 @@ function createStep(_options = {}) {
8049
8093
  function step(count = 1) {
8050
8094
  const length = registry.size;
8051
8095
  if (!length) return;
8096
+ registry.lookup(0);
8052
8097
  const currentIndex = registry.selectedIndex.value;
8053
8098
  const direction = Math.sign(count || 1);
8054
8099
  let hops = 0;
@@ -8140,10 +8185,10 @@ function useStep(namespace = "v0:step") {
8140
8185
  //#endregion
8141
8186
  //#region src/components/Carousel/CarouselRoot.vue
8142
8187
  const [useCarouselRoot, provideCarouselRoot] = createContext();
8143
- const _sfc_main$38 = /* @__PURE__ */ defineComponent({
8188
+ const _sfc_main$38 = /*@__PURE__*/ defineComponent({
8144
8189
  name: "CarouselRoot",
8145
8190
  __name: "CarouselRoot",
8146
- props: /* @__PURE__ */ mergeModels({
8191
+ props: /*@__PURE__*/ mergeModels({
8147
8192
  id: { default: () => /* @__PURE__ */ useId() },
8148
8193
  label: {},
8149
8194
  namespace: { default: "v0:carousel" },
@@ -8271,7 +8316,7 @@ const _sfc_main$38 = /* @__PURE__ */ defineComponent({
8271
8316
  });
8272
8317
  //#endregion
8273
8318
  //#region src/components/Carousel/CarouselViewport.vue
8274
- const _sfc_main$39 = /* @__PURE__ */ defineComponent({
8319
+ const _sfc_main$39 = /*@__PURE__*/ defineComponent({
8275
8320
  name: "CarouselViewport",
8276
8321
  inheritAttrs: false,
8277
8322
  __name: "CarouselViewport",
@@ -8466,7 +8511,7 @@ const _sfc_main$39 = /* @__PURE__ */ defineComponent({
8466
8511
  });
8467
8512
  //#endregion
8468
8513
  //#region src/components/Carousel/CarouselItem.vue
8469
- const _sfc_main$33 = /* @__PURE__ */ defineComponent({
8514
+ const _sfc_main$33 = /*@__PURE__*/ defineComponent({
8470
8515
  name: "CarouselItem",
8471
8516
  inheritAttrs: false,
8472
8517
  __name: "CarouselItem",
@@ -8544,7 +8589,7 @@ const _sfc_main$33 = /* @__PURE__ */ defineComponent({
8544
8589
  });
8545
8590
  //#endregion
8546
8591
  //#region src/components/Carousel/CarouselPrevious.vue
8547
- const _sfc_main$36 = /* @__PURE__ */ defineComponent({
8592
+ const _sfc_main$36 = /*@__PURE__*/ defineComponent({
8548
8593
  name: "CarouselPrevious",
8549
8594
  inheritAttrs: false,
8550
8595
  __name: "CarouselPrevious",
@@ -8606,7 +8651,7 @@ const _sfc_main$36 = /* @__PURE__ */ defineComponent({
8606
8651
  });
8607
8652
  //#endregion
8608
8653
  //#region src/components/Carousel/CarouselNext.vue
8609
- const _sfc_main$35 = /* @__PURE__ */ defineComponent({
8654
+ const _sfc_main$35 = /*@__PURE__*/ defineComponent({
8610
8655
  name: "CarouselNext",
8611
8656
  inheritAttrs: false,
8612
8657
  __name: "CarouselNext",
@@ -8671,7 +8716,7 @@ const _sfc_main$35 = /* @__PURE__ */ defineComponent({
8671
8716
  });
8672
8717
  //#endregion
8673
8718
  //#region src/components/Carousel/CarouselIndicator.vue
8674
- const _sfc_main$32 = /* @__PURE__ */ defineComponent({
8719
+ const _sfc_main$32 = /*@__PURE__*/ defineComponent({
8675
8720
  name: "CarouselIndicator",
8676
8721
  inheritAttrs: false,
8677
8722
  __name: "CarouselIndicator",
@@ -8785,7 +8830,7 @@ const _sfc_main$32 = /* @__PURE__ */ defineComponent({
8785
8830
  });
8786
8831
  //#endregion
8787
8832
  //#region src/components/Carousel/CarouselProgress.vue
8788
- const _sfc_main$37 = /* @__PURE__ */ defineComponent({
8833
+ const _sfc_main$37 = /*@__PURE__*/ defineComponent({
8789
8834
  name: "CarouselProgress",
8790
8835
  inheritAttrs: false,
8791
8836
  __name: "CarouselProgress",
@@ -8851,7 +8896,7 @@ const _sfc_main$37 = /* @__PURE__ */ defineComponent({
8851
8896
  });
8852
8897
  //#endregion
8853
8898
  //#region src/components/Carousel/CarouselLiveRegion.vue
8854
- const _sfc_main$34 = /* @__PURE__ */ defineComponent({
8899
+ const _sfc_main$34 = /*@__PURE__*/ defineComponent({
8855
8900
  name: "CarouselLiveRegion",
8856
8901
  inheritAttrs: false,
8857
8902
  __name: "CarouselLiveRegion",
@@ -9126,10 +9171,10 @@ const Carousel = {
9126
9171
  //#endregion
9127
9172
  //#region src/components/Checkbox/CheckboxGroup.vue
9128
9173
  const [useCheckboxGroup, provideCheckboxGroup] = createContext();
9129
- const _sfc_main$40 = /* @__PURE__ */ defineComponent({
9174
+ const _sfc_main$40 = /*@__PURE__*/ defineComponent({
9130
9175
  name: "CheckboxGroup",
9131
9176
  __name: "CheckboxGroup",
9132
- props: /* @__PURE__ */ mergeModels({
9177
+ props: /*@__PURE__*/ mergeModels({
9133
9178
  namespace: { default: "v0:checkbox:group" },
9134
9179
  disabled: {
9135
9180
  type: Boolean,
@@ -9152,7 +9197,7 @@ const _sfc_main$40 = /* @__PURE__ */ defineComponent({
9152
9197
  "modelValue": {},
9153
9198
  "modelModifiers": {}
9154
9199
  }),
9155
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
9200
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
9156
9201
  setup(__props) {
9157
9202
  const model = useModel(__props, "modelValue");
9158
9203
  const group = createGroup({
@@ -9195,11 +9240,11 @@ const _sfc_main$40 = /* @__PURE__ */ defineComponent({
9195
9240
  //#endregion
9196
9241
  //#region src/components/Checkbox/CheckboxRoot.vue
9197
9242
  const [useCheckboxRoot, provideCheckboxRoot] = createContext();
9198
- const _sfc_main$43 = /* @__PURE__ */ defineComponent({
9243
+ const _sfc_main$43 = /*@__PURE__*/ defineComponent({
9199
9244
  name: "CheckboxRoot",
9200
9245
  inheritAttrs: false,
9201
9246
  __name: "CheckboxRoot",
9202
- props: /* @__PURE__ */ mergeModels({
9247
+ props: /*@__PURE__*/ mergeModels({
9203
9248
  id: { default: () => /* @__PURE__ */ useId() },
9204
9249
  label: {},
9205
9250
  value: {},
@@ -9218,7 +9263,7 @@ const _sfc_main$43 = /* @__PURE__ */ defineComponent({
9218
9263
  "modelValue": { type: Boolean },
9219
9264
  "modelModifiers": {}
9220
9265
  }),
9221
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
9266
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
9222
9267
  setup(__props) {
9223
9268
  const attrs = useAttrs();
9224
9269
  let group = null;
@@ -9346,7 +9391,7 @@ const visuallyHiddenStyle$5 = {
9346
9391
  whiteSpace: "nowrap",
9347
9392
  border: "0"
9348
9393
  };
9349
- const _sfc_main$41 = /* @__PURE__ */ defineComponent({
9394
+ const _sfc_main$41 = /*@__PURE__*/ defineComponent({
9350
9395
  name: "CheckboxHiddenInput",
9351
9396
  __name: "CheckboxHiddenInput",
9352
9397
  props: {
@@ -9384,7 +9429,7 @@ const _sfc_main$41 = /* @__PURE__ */ defineComponent({
9384
9429
  });
9385
9430
  //#endregion
9386
9431
  //#region src/components/Checkbox/CheckboxIndicator.vue
9387
- const _sfc_main$42 = /* @__PURE__ */ defineComponent({
9432
+ const _sfc_main$42 = /*@__PURE__*/ defineComponent({
9388
9433
  name: "CheckboxIndicator",
9389
9434
  __name: "CheckboxIndicator",
9390
9435
  props: {
@@ -9419,7 +9464,7 @@ const _sfc_main$42 = /* @__PURE__ */ defineComponent({
9419
9464
  });
9420
9465
  //#endregion
9421
9466
  //#region src/components/Checkbox/CheckboxSelectAll.vue
9422
- const _sfc_main$44 = /* @__PURE__ */ defineComponent({
9467
+ const _sfc_main$44 = /*@__PURE__*/ defineComponent({
9423
9468
  name: "CheckboxSelectAll",
9424
9469
  inheritAttrs: false,
9425
9470
  __name: "CheckboxSelectAll",
@@ -9672,10 +9717,10 @@ const Checkbox = {
9672
9717
  //#endregion
9673
9718
  //#region src/components/Collapsible/CollapsibleRoot.vue
9674
9719
  const [useCollapsible, provideCollapsible] = createContext();
9675
- const _sfc_main$48 = /* @__PURE__ */ defineComponent({
9720
+ const _sfc_main$48 = /*@__PURE__*/ defineComponent({
9676
9721
  name: "CollapsibleRoot",
9677
9722
  __name: "CollapsibleRoot",
9678
- props: /* @__PURE__ */ mergeModels({
9723
+ props: /*@__PURE__*/ mergeModels({
9679
9724
  namespace: { default: "v0:collapsible" },
9680
9725
  disabled: {
9681
9726
  type: Boolean,
@@ -9690,7 +9735,7 @@ const _sfc_main$48 = /* @__PURE__ */ defineComponent({
9690
9735
  },
9691
9736
  "modelModifiers": {}
9692
9737
  }),
9693
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
9738
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
9694
9739
  setup(__props) {
9695
9740
  const model = useModel(__props, "modelValue");
9696
9741
  const isDisabled = toRef(() => __props.disabled);
@@ -9752,7 +9797,7 @@ const _sfc_main$48 = /* @__PURE__ */ defineComponent({
9752
9797
  });
9753
9798
  //#endregion
9754
9799
  //#region src/components/Collapsible/CollapsibleActivator.vue
9755
- const _sfc_main$45 = /* @__PURE__ */ defineComponent({
9800
+ const _sfc_main$45 = /*@__PURE__*/ defineComponent({
9756
9801
  name: "CollapsibleActivator",
9757
9802
  __name: "CollapsibleActivator",
9758
9803
  props: {
@@ -9800,7 +9845,7 @@ const _sfc_main$45 = /* @__PURE__ */ defineComponent({
9800
9845
  });
9801
9846
  //#endregion
9802
9847
  //#region src/components/Collapsible/CollapsibleContent.vue
9803
- const _sfc_main$46 = /* @__PURE__ */ defineComponent({
9848
+ const _sfc_main$46 = /*@__PURE__*/ defineComponent({
9804
9849
  name: "CollapsibleContent",
9805
9850
  __name: "CollapsibleContent",
9806
9851
  props: {
@@ -9834,7 +9879,7 @@ const _sfc_main$46 = /* @__PURE__ */ defineComponent({
9834
9879
  });
9835
9880
  //#endregion
9836
9881
  //#region src/components/Collapsible/CollapsibleCue.vue
9837
- const _sfc_main$47 = /* @__PURE__ */ defineComponent({
9882
+ const _sfc_main$47 = /*@__PURE__*/ defineComponent({
9838
9883
  name: "CollapsibleCue",
9839
9884
  __name: "CollapsibleCue",
9840
9885
  props: {
@@ -9914,7 +9959,7 @@ const visuallyHiddenStyle$4 = {
9914
9959
  whiteSpace: "nowrap",
9915
9960
  border: "0"
9916
9961
  };
9917
- const _sfc_main$192 = /* @__PURE__ */ defineComponent({
9962
+ const _sfc_main$192 = /*@__PURE__*/ defineComponent({
9918
9963
  name: "ComboboxHiddenInput",
9919
9964
  __name: "ComboboxHiddenInput",
9920
9965
  props: { namespace: { default: "v0:combobox" } },
@@ -10124,7 +10169,9 @@ const SIDE_KEYWORDS = {
10124
10169
  */
10125
10170
  function toPlacement(positionArea) {
10126
10171
  const tokens = positionArea.trim().split(/\s+/);
10127
- const side = SIDE_KEYWORDS[tokens[0] ?? "bottom"] ?? "bottom";
10172
+ /* v8 ignore next -- defensive: split() on a string always yields at least one element */
10173
+ const first = tokens[0] ?? "bottom";
10174
+ const side = SIDE_KEYWORDS[first] ?? "bottom";
10128
10175
  let align = "center";
10129
10176
  const second = tokens[1];
10130
10177
  if (second === "span-left" || second === "span-start" || second === "left") align = "start";
@@ -10216,17 +10263,18 @@ function createPopoverFallback() {
10216
10263
  * import { FloatingUIPopoverAdapter } from '@vuetify/v0/popover/adapters/floating-ui'
10217
10264
  *
10218
10265
  * export const [useAppPopover, provideAppPopover, appPopover] = createPopoverContext({
10219
- * namespace: 'app:popover-plugin',
10266
+ * namespace: 'app:popover',
10220
10267
  * adapter: new FloatingUIPopoverAdapter(),
10221
10268
  * })
10222
10269
  * ```
10223
10270
  *
10224
10271
  * Plugin trinity for an app-wide popover positioning adapter.
10225
10272
  *
10226
- * Namespace is `v0:popover-plugin` not `v0:popover`, which `Popover.Root`
10227
- * already owns for compound context. The generated consumer is module-private;
10228
- * `usePopover()` consults it internally. Fallback is `{ adapter: undefined }`,
10229
- * so zero-config matches today's `V0PopoverAdapter` default.
10273
+ * Namespace is `v0:popover`. Compound `Popover.Root` context lives at
10274
+ * `v0:popover:root` so the two do not collide. The generated consumer is
10275
+ * module-private; `usePopover()` consults it internally. Fallback is
10276
+ * `{ adapter: undefined }`, so zero-config matches today's `V0PopoverAdapter`
10277
+ * default.
10230
10278
  *
10231
10279
  * @example
10232
10280
  * ```ts
@@ -10236,7 +10284,7 @@ function createPopoverFallback() {
10236
10284
  * app.use(createPopoverPlugin({ adapter: new FloatingUIPopoverAdapter() }))
10237
10285
  * ```
10238
10286
  */
10239
- const [createPopoverContext, createPopoverPlugin, usePopoverPlugin] = createPluginContext("v0:popover-plugin", createPopover, { fallback: () => createPopoverFallback() });
10287
+ const [createPopoverContext, createPopoverPlugin, usePopoverPlugin] = createPluginContext("v0:popover", createPopover, { fallback: () => createPopoverFallback() });
10240
10288
  function bindOption(source, fallback) {
10241
10289
  const override = shallowRef();
10242
10290
  return computed({
@@ -10521,7 +10569,6 @@ function createFocusTraversal(items, activate, options = {}) {
10521
10569
  e.preventDefault();
10522
10570
  if (e.ctrlKey) last();
10523
10571
  else rowLast();
10524
- break;
10525
10572
  }
10526
10573
  return;
10527
10574
  }
@@ -10713,7 +10760,7 @@ function defaultFilter(query, item, keys, mode = "some") {
10713
10760
  */
10714
10761
  function createFilter(options = {}) {
10715
10762
  const { customFilter, keys, mode = "some" } = options;
10716
- const filterFunction = customFilter ?? ((q, i) => defaultFilter(q, i, keys, mode));
10763
+ const filterFunction = customFilter ?? ((q, i) => defaultFilter(q, i, toValue(keys), mode));
10717
10764
  const query = shallowRef("");
10718
10765
  function apply(_query, items) {
10719
10766
  return { items: computed(() => {
@@ -11084,10 +11131,10 @@ function useCombobox(namespace = "v0:combobox") {
11084
11131
  //#endregion
11085
11132
  //#region src/components/Combobox/ComboboxRoot.vue
11086
11133
  const [useComboboxContext, provideComboboxContext] = createContext();
11087
- const _sfc_main$57 = /* @__PURE__ */ defineComponent({
11134
+ const _sfc_main$57 = /*@__PURE__*/ defineComponent({
11088
11135
  name: "ComboboxRoot",
11089
11136
  __name: "ComboboxRoot",
11090
- props: /* @__PURE__ */ mergeModels({
11137
+ props: /*@__PURE__*/ mergeModels({
11091
11138
  namespace: { default: "v0:combobox" },
11092
11139
  id: {},
11093
11140
  name: {},
@@ -11122,7 +11169,7 @@ const _sfc_main$57 = /* @__PURE__ */ defineComponent({
11122
11169
  "modelValue": {},
11123
11170
  "modelModifiers": {}
11124
11171
  }),
11125
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
11172
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
11126
11173
  setup(__props) {
11127
11174
  const model = useModel(__props, "modelValue");
11128
11175
  const context = createCombobox({
@@ -11168,7 +11215,7 @@ const _sfc_main$57 = /* @__PURE__ */ defineComponent({
11168
11215
  });
11169
11216
  //#endregion
11170
11217
  //#region src/components/Combobox/ComboboxActivator.vue
11171
- const _sfc_main$49 = /* @__PURE__ */ defineComponent({
11218
+ const _sfc_main$49 = /*@__PURE__*/ defineComponent({
11172
11219
  name: "ComboboxActivator",
11173
11220
  __name: "ComboboxActivator",
11174
11221
  props: {
@@ -11276,9 +11323,10 @@ function useLazy(active, options = {}) {
11276
11323
  isBooted.value = true;
11277
11324
  }, { duration: delay }) : void 0;
11278
11325
  const stop = watch(() => toValue(active), (value) => {
11279
- if (value) if (timer) timer.start();
11280
- else isBooted.value = true;
11281
- else timer?.stop();
11326
+ if (value) {
11327
+ if (timer) timer.start();
11328
+ else isBooted.value = true;
11329
+ } else timer?.stop();
11282
11330
  }, { immediate: true });
11283
11331
  function reset() {
11284
11332
  isBooted.value = false;
@@ -11296,7 +11344,7 @@ function useLazy(active, options = {}) {
11296
11344
  }
11297
11345
  //#endregion
11298
11346
  //#region src/components/Combobox/ComboboxContent.vue
11299
- const _sfc_main$50 = /* @__PURE__ */ defineComponent({
11347
+ const _sfc_main$50 = /*@__PURE__*/ defineComponent({
11300
11348
  name: "ComboboxContent",
11301
11349
  __name: "ComboboxContent",
11302
11350
  props: {
@@ -11337,7 +11385,7 @@ const _sfc_main$50 = /* @__PURE__ */ defineComponent({
11337
11385
  as: __props.as,
11338
11386
  renderless: __props.renderless
11339
11387
  }), {
11340
- default: withCtx(() => [unref(hasContent) ? renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 0 }, slotProps.value))) : createCommentVNode("v-if", true)]),
11388
+ default: withCtx(() => [unref(hasContent) ? renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)), void 0, void 0, 0) : createCommentVNode("v-if", true)]),
11341
11389
  _: 3
11342
11390
  }, 16, ["as", "renderless"]);
11343
11391
  };
@@ -11345,7 +11393,7 @@ const _sfc_main$50 = /* @__PURE__ */ defineComponent({
11345
11393
  });
11346
11394
  //#endregion
11347
11395
  //#region src/components/Combobox/ComboboxControl.vue
11348
- const _sfc_main$51 = /* @__PURE__ */ defineComponent({
11396
+ const _sfc_main$51 = /*@__PURE__*/ defineComponent({
11349
11397
  name: "ComboboxControl",
11350
11398
  __name: "ComboboxControl",
11351
11399
  props: {
@@ -11397,14 +11445,12 @@ const _sfc_main$51 = /* @__PURE__ */ defineComponent({
11397
11445
  }
11398
11446
  }
11399
11447
  context.cursor.onKeydown(e);
11400
- break;
11401
11448
  }
11402
11449
  else switch (e.key) {
11403
11450
  case "ArrowDown":
11404
11451
  case "ArrowUp":
11405
11452
  e.preventDefault();
11406
11453
  context.open();
11407
- break;
11408
11454
  }
11409
11455
  }
11410
11456
  const strict = toRef(() => toValue(context.strict));
@@ -11447,7 +11493,7 @@ const _sfc_main$51 = /* @__PURE__ */ defineComponent({
11447
11493
  });
11448
11494
  //#endregion
11449
11495
  //#region src/components/Combobox/ComboboxCue.vue
11450
- const _sfc_main$52 = /* @__PURE__ */ defineComponent({
11496
+ const _sfc_main$52 = /*@__PURE__*/ defineComponent({
11451
11497
  name: "ComboboxCue",
11452
11498
  __name: "ComboboxCue",
11453
11499
  props: {
@@ -11481,7 +11527,7 @@ const _sfc_main$52 = /* @__PURE__ */ defineComponent({
11481
11527
  });
11482
11528
  //#endregion
11483
11529
  //#region src/components/Combobox/ComboboxDescription.vue
11484
- const _sfc_main$53 = /* @__PURE__ */ defineComponent({
11530
+ const _sfc_main$53 = /*@__PURE__*/ defineComponent({
11485
11531
  name: "ComboboxDescription",
11486
11532
  inheritAttrs: false,
11487
11533
  __name: "ComboboxDescription",
@@ -11517,7 +11563,7 @@ const _sfc_main$53 = /* @__PURE__ */ defineComponent({
11517
11563
  });
11518
11564
  //#endregion
11519
11565
  //#region src/components/Combobox/ComboboxEmpty.vue
11520
- const _sfc_main$54 = /* @__PURE__ */ defineComponent({
11566
+ const _sfc_main$54 = /*@__PURE__*/ defineComponent({
11521
11567
  name: "ComboboxEmpty",
11522
11568
  __name: "ComboboxEmpty",
11523
11569
  props: {
@@ -11543,7 +11589,7 @@ const _sfc_main$54 = /* @__PURE__ */ defineComponent({
11543
11589
  });
11544
11590
  //#endregion
11545
11591
  //#region src/components/Combobox/ComboboxError.vue
11546
- const _sfc_main$55 = /* @__PURE__ */ defineComponent({
11592
+ const _sfc_main$55 = /*@__PURE__*/ defineComponent({
11547
11593
  name: "ComboboxError",
11548
11594
  inheritAttrs: false,
11549
11595
  __name: "ComboboxError",
@@ -11584,7 +11630,7 @@ const _sfc_main$55 = /* @__PURE__ */ defineComponent({
11584
11630
  });
11585
11631
  //#endregion
11586
11632
  //#region src/components/Combobox/ComboboxItem.vue
11587
- const _sfc_main$56 = /* @__PURE__ */ defineComponent({
11633
+ const _sfc_main$56 = /*@__PURE__*/ defineComponent({
11588
11634
  name: "ComboboxItem",
11589
11635
  __name: "ComboboxItem",
11590
11636
  props: {
@@ -12138,7 +12184,7 @@ var DataTableAdapter = class {
12138
12184
  filter(context) {
12139
12185
  const filter = createFilter({
12140
12186
  ...context.filterOptions,
12141
- keys: [...toValue(context.filterableKeys)],
12187
+ keys: context.filterableKeys,
12142
12188
  customFilter: context.filterOptions.customFilter ?? ((query, item) => {
12143
12189
  const columnFilters = toValue(context.customColumnFilters);
12144
12190
  const keys = toValue(context.filterableKeys);
@@ -12232,7 +12278,7 @@ var ClientDataTableAdapter = class extends DataTableAdapter {
12232
12278
  * @param columns Column tree to extract leaves from
12233
12279
  * @returns Flat array of leaf columns
12234
12280
  */
12235
- /* @__NO_SIDE_EFFECTS__ */
12281
+ /* #__NO_SIDE_EFFECTS__ */
12236
12282
  function extractLeaves(columns) {
12237
12283
  const leaves = [];
12238
12284
  for (const col of columns) if (col.children?.length) leaves.push(.../* @__PURE__ */ extractLeaves(col.children));
@@ -12245,7 +12291,7 @@ function extractLeaves(columns) {
12245
12291
  * @param columns Column tree to measure
12246
12292
  * @returns Maximum nesting depth
12247
12293
  */
12248
- /* @__NO_SIDE_EFFECTS__ */
12294
+ /* #__NO_SIDE_EFFECTS__ */
12249
12295
  function computeDepth(columns) {
12250
12296
  let max = 0;
12251
12297
  for (const col of columns) if (col.children?.length) max = Math.max(max, 1 + /* @__PURE__ */ computeDepth(col.children));
@@ -12260,7 +12306,7 @@ function computeDepth(columns) {
12260
12306
  * @param columns Column tree to resolve
12261
12307
  * @returns 2D array of header cells with colspan/rowspan
12262
12308
  */
12263
- /* @__NO_SIDE_EFFECTS__ */
12309
+ /* #__NO_SIDE_EFFECTS__ */
12264
12310
  function resolveHeaders(columns) {
12265
12311
  if (columns.length === 0) return [];
12266
12312
  const maxDepth = /* @__PURE__ */ computeDepth(columns);
@@ -12477,9 +12523,9 @@ function createDataTable(options = {}) {
12477
12523
  }
12478
12524
  const { selectedId: selectedLocale } = useLocale();
12479
12525
  const locale = toRef(() => {
12526
+ if (!/* @__PURE__ */ isNullOrUndefined(initialLocale)) return initialLocale;
12480
12527
  const selected = selectedLocale?.value;
12481
12528
  if (!/* @__PURE__ */ isNullOrUndefined(selected)) return String(selected);
12482
- return initialLocale;
12483
12529
  });
12484
12530
  const leaves = computed(() => /* @__PURE__ */ extractLeaves(columns.values()));
12485
12531
  const headers = computed(() => /* @__PURE__ */ resolveHeaders(columns.values()));
@@ -12535,9 +12581,10 @@ function createDataTable(options = {}) {
12535
12581
  if (firstSortOrder === "desc") setDesc();
12536
12582
  else setAsc();
12537
12583
  order.push(id);
12538
- } else if (isAsc) if (firstSortOrder === "desc" && !mandate) setNone();
12539
- else setDesc();
12540
- else if (firstSortOrder === "asc" && !mandate) setNone();
12584
+ } else if (isAsc) {
12585
+ if (firstSortOrder === "desc" && !mandate) setNone();
12586
+ else setDesc();
12587
+ } else if (firstSortOrder === "asc" && !mandate) setNone();
12541
12588
  else setAsc();
12542
12589
  }
12543
12590
  const sortBy = computed(() => {
@@ -13491,7 +13538,7 @@ function createRowSpanning(options) {
13491
13538
  if (!span) return result;
13492
13539
  const list = items.value;
13493
13540
  const resolved = toValue(columns);
13494
- const covered = Array.from({ length: resolved.length }).fill(0);
13541
+ const covered = Array.from({ length: resolved.length }, () => 0);
13495
13542
  for (let row = 0; row < list.length; row++) {
13496
13543
  const item = list[row];
13497
13544
  const id = key ? key(item, row) : item[itemKey];
@@ -13800,10 +13847,10 @@ const [_useDataGridRoot, provideDataGridRoot] = createContext();
13800
13847
  function useDataGridRoot(namespace = "v0:data-grid") {
13801
13848
  return _useDataGridRoot(namespace);
13802
13849
  }
13803
- const _sfc_main$64 = /* @__PURE__ */ defineComponent({
13850
+ const _sfc_main$64 = /*@__PURE__*/ defineComponent({
13804
13851
  name: "DataGridRoot",
13805
13852
  __name: "DataGridRoot",
13806
- props: /* @__PURE__ */ mergeModels({
13853
+ props: /*@__PURE__*/ mergeModels({
13807
13854
  namespace: { default: "v0:data-grid" },
13808
13855
  editing: {},
13809
13856
  preserveRowOrder: {},
@@ -13824,7 +13871,7 @@ const _sfc_main$64 = /* @__PURE__ */ defineComponent({
13824
13871
  "search": { default: "" },
13825
13872
  "searchModifiers": {}
13826
13873
  }),
13827
- emits: /* @__PURE__ */ mergeModels(["update:search"], ["update:search"]),
13874
+ emits: /*@__PURE__*/ mergeModels(["update:search"], ["update:search"]),
13828
13875
  setup(__props) {
13829
13876
  const options = createPropsRestProxy(__props, [
13830
13877
  "namespace",
@@ -13863,7 +13910,7 @@ const _sfc_main$64 = /* @__PURE__ */ defineComponent({
13863
13910
  * The `<tbody>` element wrapper. Exposes the paginated items from the
13864
13911
  * context for rendering data rows.
13865
13912
  */
13866
- const _sfc_main$58 = /* @__PURE__ */ defineComponent({
13913
+ const _sfc_main$58 = /*@__PURE__*/ defineComponent({
13867
13914
  name: "DataGridBody",
13868
13915
  inheritAttrs: false,
13869
13916
  __name: "DataGridBody",
@@ -13901,7 +13948,7 @@ const _sfc_main$58 = /* @__PURE__ */ defineComponent({
13901
13948
  //#endregion
13902
13949
  //#region src/components/Splitter/SplitterRoot.vue
13903
13950
  const [useSplitterRoot, provideSplitterRoot] = createContext("v0:splitter");
13904
- const _sfc_main$161 = /* @__PURE__ */ defineComponent({
13951
+ const _sfc_main$161 = /*@__PURE__*/ defineComponent({
13905
13952
  name: "SplitterRoot",
13906
13953
  inheritAttrs: false,
13907
13954
  __name: "SplitterRoot",
@@ -13991,54 +14038,58 @@ const _sfc_main$161 = /* @__PURE__ */ defineComponent({
13991
14038
  let size = /* @__PURE__ */ clamp(before.size + delta, lower, upper);
13992
14039
  const beforeCollapsed = !toValue(before.isSelected);
13993
14040
  const drag = dragging.value;
13994
- if (before.collapsible && !beforeCollapsed && size <= before.minSize && delta < 0) if (drag) {
13995
- if (before.size >= before.minSize) {
13996
- size = before.minSize;
13997
- if (canCollapse(before)) arm(before.id, "collapse", Math.max(0, before.minSize - (before.size + delta)));
14041
+ if (before.collapsible && !beforeCollapsed && size <= before.minSize && delta < 0) {
14042
+ if (drag) {
14043
+ if (before.size >= before.minSize) {
14044
+ size = before.minSize;
14045
+ if (canCollapse(before)) arm(before.id, "collapse", Math.max(0, before.minSize - (before.size + delta)));
14046
+ }
14047
+ } else {
14048
+ size = before.collapsedSize;
14049
+ before.unselect();
14050
+ expandAccum.set(before.id, 0);
13998
14051
  }
13999
- } else {
14000
- size = before.collapsedSize;
14001
- before.unselect();
14002
- expandAccum.set(before.id, 0);
14003
- }
14004
- else if (before.collapsible && beforeCollapsed && delta > 0) if (drag) {
14005
- size = before.collapsedSize;
14006
- if (canExpand(before, after)) arm(before.id, "expand", delta);
14007
- } else {
14008
- const accum = (expandAccum.get(before.id) ?? 0) + delta;
14009
- expandAccum.set(before.id, accum);
14010
- if (accum >= EXPAND_THRESHOLD) {
14011
- size = /* @__PURE__ */ clamp(accum, before.collapsedSize, before.maxSize);
14012
- before.select();
14013
- expandAccum.delete(before.id);
14014
- } else size = before.collapsedSize;
14015
- }
14016
- else if (drag) disarm(before.id);
14052
+ } else if (before.collapsible && beforeCollapsed && delta > 0) {
14053
+ if (drag) {
14054
+ size = before.collapsedSize;
14055
+ if (canExpand(before, after)) arm(before.id, "expand", delta);
14056
+ } else {
14057
+ const accum = (expandAccum.get(before.id) ?? 0) + delta;
14058
+ expandAccum.set(before.id, accum);
14059
+ if (accum >= EXPAND_THRESHOLD) {
14060
+ size = /* @__PURE__ */ clamp(accum, before.collapsedSize, before.maxSize);
14061
+ before.select();
14062
+ expandAccum.delete(before.id);
14063
+ } else size = before.collapsedSize;
14064
+ }
14065
+ } else if (drag) disarm(before.id);
14017
14066
  const afterSize = total - size;
14018
14067
  const afterCollapsed = !toValue(after.isSelected);
14019
- if (after.collapsible && !afterCollapsed && afterSize <= after.minSize && delta > 0) if (drag) {
14020
- if (after.size >= after.minSize) {
14021
- size = total - after.minSize;
14022
- if (canCollapse(after)) arm(after.id, "collapse", Math.max(0, after.minSize - (after.size - delta)));
14068
+ if (after.collapsible && !afterCollapsed && afterSize <= after.minSize && delta > 0) {
14069
+ if (drag) {
14070
+ if (after.size >= after.minSize) {
14071
+ size = total - after.minSize;
14072
+ if (canCollapse(after)) arm(after.id, "collapse", Math.max(0, after.minSize - (after.size - delta)));
14073
+ }
14074
+ } else {
14075
+ size = total - after.collapsedSize;
14076
+ after.unselect();
14077
+ expandAccum.set(after.id, 0);
14023
14078
  }
14024
- } else {
14025
- size = total - after.collapsedSize;
14026
- after.unselect();
14027
- expandAccum.set(after.id, 0);
14028
- }
14029
- else if (after.collapsible && afterCollapsed && delta < 0) if (drag) {
14030
- size = total - after.collapsedSize;
14031
- if (canExpand(after, before)) arm(after.id, "expand", delta);
14032
- } else {
14033
- const accum = (expandAccum.get(after.id) ?? 0) + Math.abs(delta);
14034
- expandAccum.set(after.id, accum);
14035
- if (accum >= EXPAND_THRESHOLD) {
14036
- size = total - /* @__PURE__ */ clamp(accum, after.collapsedSize, after.maxSize);
14037
- after.select();
14038
- expandAccum.delete(after.id);
14039
- } else size = total - after.collapsedSize;
14040
- }
14041
- else if (drag) disarm(after.id);
14079
+ } else if (after.collapsible && afterCollapsed && delta < 0) {
14080
+ if (drag) {
14081
+ size = total - after.collapsedSize;
14082
+ if (canExpand(after, before)) arm(after.id, "expand", delta);
14083
+ } else {
14084
+ const accum = (expandAccum.get(after.id) ?? 0) + Math.abs(delta);
14085
+ expandAccum.set(after.id, accum);
14086
+ if (accum >= EXPAND_THRESHOLD) {
14087
+ size = total - /* @__PURE__ */ clamp(accum, after.collapsedSize, after.maxSize);
14088
+ after.select();
14089
+ expandAccum.delete(after.id);
14090
+ } else size = total - after.collapsedSize;
14091
+ }
14092
+ } else if (drag) disarm(after.id);
14042
14093
  before.size = size;
14043
14094
  after.size = total - size;
14044
14095
  if (options?.emit) emitLayout();
@@ -14198,11 +14249,11 @@ const _sfc_main$161 = /* @__PURE__ */ defineComponent({
14198
14249
  });
14199
14250
  //#endregion
14200
14251
  //#region src/components/Splitter/SplitterPanel.vue
14201
- const _sfc_main$160 = /* @__PURE__ */ defineComponent({
14252
+ const _sfc_main$160 = /*@__PURE__*/ defineComponent({
14202
14253
  name: "SplitterPanel",
14203
14254
  inheritAttrs: false,
14204
14255
  __name: "SplitterPanel",
14205
- props: /* @__PURE__ */ mergeModels({
14256
+ props: /*@__PURE__*/ mergeModels({
14206
14257
  defaultSize: {},
14207
14258
  minSize: { default: 0 },
14208
14259
  maxSize: { default: 100 },
@@ -14217,7 +14268,7 @@ const _sfc_main$160 = /* @__PURE__ */ defineComponent({
14217
14268
  "collapsed": { type: Boolean },
14218
14269
  "collapsedModifiers": {}
14219
14270
  }),
14220
- emits: /* @__PURE__ */ mergeModels(["update:collapsed", "resize"], ["update:collapsed"]),
14271
+ emits: /*@__PURE__*/ mergeModels(["update:collapsed", "resize"], ["update:collapsed"]),
14221
14272
  setup(__props, { expose: __expose, emit: __emit }) {
14222
14273
  const attrs = useAttrs();
14223
14274
  const collapsed = useModel(__props, "collapsed");
@@ -14409,7 +14460,7 @@ function useRaf(callback) {
14409
14460
  }
14410
14461
  //#endregion
14411
14462
  //#region src/components/Splitter/SplitterHandle.vue
14412
- const _sfc_main$159 = /* @__PURE__ */ defineComponent({
14463
+ const _sfc_main$159 = /*@__PURE__*/ defineComponent({
14413
14464
  name: "SplitterHandle",
14414
14465
  inheritAttrs: false,
14415
14466
  __name: "SplitterHandle",
@@ -14529,7 +14580,7 @@ const _sfc_main$159 = /* @__PURE__ */ defineComponent({
14529
14580
  break;
14530
14581
  case backward:
14531
14582
  e.preventDefault();
14532
- splitter.resize(ticket.index, -ARROW_STEP, { emit: true });
14583
+ splitter.resize(ticket.index, -1, { emit: true });
14533
14584
  break;
14534
14585
  case "PageDown":
14535
14586
  e.preventDefault();
@@ -14537,7 +14588,7 @@ const _sfc_main$159 = /* @__PURE__ */ defineComponent({
14537
14588
  break;
14538
14589
  case "PageUp":
14539
14590
  e.preventDefault();
14540
- splitter.resize(ticket.index, -PAGE_STEP, { emit: true });
14591
+ splitter.resize(ticket.index, -10, { emit: true });
14541
14592
  break;
14542
14593
  case "Home": {
14543
14594
  e.preventDefault();
@@ -14724,7 +14775,7 @@ const Splitter = {
14724
14775
  * for rendering nested header rows.
14725
14776
  */
14726
14777
  const [useDataGridHeader, provideDataGridHeader] = createContext({ suffix: "header" });
14727
- const _sfc_main$63 = /* @__PURE__ */ defineComponent({
14778
+ const _sfc_main$63 = /*@__PURE__*/ defineComponent({
14728
14779
  name: "DataGridHeader",
14729
14780
  inheritAttrs: false,
14730
14781
  __name: "DataGridHeader",
@@ -14786,7 +14837,7 @@ const _sfc_main$63 = /* @__PURE__ */ defineComponent({
14786
14837
  * table — pass `as="div"` on the Table/Header/Body/Row/Column/Cell chain.
14787
14838
  */
14788
14839
  const [useDataGridRow, provideDataGridRow] = createContext({ suffix: "row" });
14789
- const _sfc_main$65 = /* @__PURE__ */ defineComponent({
14840
+ const _sfc_main$65 = /*@__PURE__*/ defineComponent({
14790
14841
  name: "DataGridRow",
14791
14842
  inheritAttrs: false,
14792
14843
  __name: "DataGridRow",
@@ -14894,7 +14945,6 @@ const _sfc_main$65 = /* @__PURE__ */ defineComponent({
14894
14945
  if (!/* @__PURE__ */ isUndefined(current)) context.expansion.toggle(current);
14895
14946
  }
14896
14947
  function onSplitterLayout(sizes) {
14897
- if (sizes.length !== context.layout.columns.value.length) return;
14898
14948
  const visible = new Set(context.layout.columns.value.map((c) => c.id));
14899
14949
  const assigned = /* @__PURE__ */ new Map();
14900
14950
  for (const [index, size] of sizes.entries()) {
@@ -14910,7 +14960,6 @@ const _sfc_main$65 = /* @__PURE__ */ defineComponent({
14910
14960
  if (/* @__PURE__ */ isUndefined(size)) return;
14911
14961
  permuted.push(size);
14912
14962
  }
14913
- if (permuted.length !== sizes.length) return;
14914
14963
  context.layout.distribute(permuted);
14915
14964
  }
14916
14965
  const slotProps = toRef(() => ({
@@ -14964,7 +15013,7 @@ const _sfc_main$65 = /* @__PURE__ */ defineComponent({
14964
15013
  * A `<td>` element for data cells. Exposes editing state, row spanning,
14965
15014
  * consumer `colspan`, and layout (pin/size/offset) from the grid context.
14966
15015
  */
14967
- const _sfc_main$59 = /* @__PURE__ */ defineComponent({
15016
+ const _sfc_main$59 = /*@__PURE__*/ defineComponent({
14968
15017
  name: "DataGridCell",
14969
15018
  inheritAttrs: false,
14970
15019
  __name: "DataGridCell",
@@ -15064,7 +15113,7 @@ const _sfc_main$59 = /* @__PURE__ */ defineComponent({
15064
15113
  * When inside a resizable `DataGridRow`, this component composes
15065
15114
  * `Splitter.Panel`. Keep the consumer `as` — do not swap `th` for `div`.
15066
15115
  */
15067
- const _sfc_main$60 = /* @__PURE__ */ defineComponent({
15116
+ const _sfc_main$60 = /*@__PURE__*/ defineComponent({
15068
15117
  name: "DataGridColumn",
15069
15118
  inheritAttrs: false,
15070
15119
  __name: "DataGridColumn",
@@ -15199,7 +15248,7 @@ const _sfc_main$60 = /* @__PURE__ */ defineComponent({
15199
15248
  * Empty state component that renders when the grid has no items.
15200
15249
  * Conditionally renders based on the items count.
15201
15250
  */
15202
- const _sfc_main$61 = /* @__PURE__ */ defineComponent({
15251
+ const _sfc_main$61 = /*@__PURE__*/ defineComponent({
15203
15252
  name: "DataGridEmpty",
15204
15253
  inheritAttrs: false,
15205
15254
  __name: "DataGridEmpty",
@@ -15242,7 +15291,7 @@ const _sfc_main$61 = /* @__PURE__ */ defineComponent({
15242
15291
  * renders nothing so it cannot hijack an ancestor Splitter or throw
15243
15292
  * V0_CONTEXT_MISSING.
15244
15293
  */
15245
- const _sfc_main$62 = /* @__PURE__ */ defineComponent({
15294
+ const _sfc_main$62 = /*@__PURE__*/ defineComponent({
15246
15295
  name: "DataGridHandle",
15247
15296
  inheritAttrs: false,
15248
15297
  __name: "DataGridHandle",
@@ -15296,7 +15345,7 @@ const _sfc_main$62 = /* @__PURE__ */ defineComponent({
15296
15345
  * The `<table>` element wrapper for the DataGrid compound. Renders a semantic
15297
15346
  * table with proper ARIA attributes. This is not an APG Grid widget.
15298
15347
  */
15299
- const _sfc_main$66 = /* @__PURE__ */ defineComponent({
15348
+ const _sfc_main$66 = /*@__PURE__*/ defineComponent({
15300
15349
  name: "DataGridTable",
15301
15350
  inheritAttrs: false,
15302
15351
  __name: "DataGridTable",
@@ -15551,10 +15600,10 @@ const [_useDataTableRoot, provideDataTableRoot] = createContext();
15551
15600
  function useDataTableRoot(namespace = "v0:data-table") {
15552
15601
  return _useDataTableRoot(namespace);
15553
15602
  }
15554
- const _sfc_main$72 = /* @__PURE__ */ defineComponent({
15603
+ const _sfc_main$72 = /*@__PURE__*/ defineComponent({
15555
15604
  name: "DataTableRoot",
15556
15605
  __name: "DataTableRoot",
15557
- props: /* @__PURE__ */ mergeModels({
15606
+ props: /*@__PURE__*/ mergeModels({
15558
15607
  namespace: { default: "v0:data-table" },
15559
15608
  filter: {},
15560
15609
  pagination: {},
@@ -15572,7 +15621,7 @@ const _sfc_main$72 = /* @__PURE__ */ defineComponent({
15572
15621
  "search": { default: "" },
15573
15622
  "searchModifiers": {}
15574
15623
  }),
15575
- emits: /* @__PURE__ */ mergeModels(["update:search"], ["update:search"]),
15624
+ emits: /*@__PURE__*/ mergeModels(["update:search"], ["update:search"]),
15576
15625
  setup(__props) {
15577
15626
  const context = createDataTable({
15578
15627
  filter: __props.filter,
@@ -15612,7 +15661,7 @@ const _sfc_main$72 = /* @__PURE__ */ defineComponent({
15612
15661
  * @remarks
15613
15662
  * The `<tbody>` element wrapper. Slot exposes `rank`, `items`, and `isEmpty`.
15614
15663
  */
15615
- const _sfc_main$67 = /* @__PURE__ */ defineComponent({
15664
+ const _sfc_main$67 = /*@__PURE__*/ defineComponent({
15616
15665
  name: "DataTableBody",
15617
15666
  inheritAttrs: false,
15618
15667
  __name: "DataTableBody",
@@ -15652,7 +15701,7 @@ const _sfc_main$67 = /* @__PURE__ */ defineComponent({
15652
15701
  * @remarks
15653
15702
  * A `<td>` element for data cells. Use inside DataTable.Row.
15654
15703
  */
15655
- const _sfc_main$68 = /* @__PURE__ */ defineComponent({
15704
+ const _sfc_main$68 = /*@__PURE__*/ defineComponent({
15656
15705
  name: "DataTableCell",
15657
15706
  inheritAttrs: false,
15658
15707
  __name: "DataTableCell",
@@ -15691,7 +15740,7 @@ const _sfc_main$68 = /* @__PURE__ */ defineComponent({
15691
15740
  * A `<th>` element for header cells. Exposes sort state and controls
15692
15741
  * for sortable columns. Use inside DataTable.Row.
15693
15742
  */
15694
- const _sfc_main$69 = /* @__PURE__ */ defineComponent({
15743
+ const _sfc_main$69 = /*@__PURE__*/ defineComponent({
15695
15744
  name: "DataTableColumn",
15696
15745
  inheritAttrs: false,
15697
15746
  __name: "DataTableColumn",
@@ -15780,7 +15829,7 @@ const _sfc_main$69 = /* @__PURE__ */ defineComponent({
15780
15829
  * Empty state component that renders when the table has no items.
15781
15830
  * Conditionally renders based on the items count.
15782
15831
  */
15783
- const _sfc_main$70 = /* @__PURE__ */ defineComponent({
15832
+ const _sfc_main$70 = /*@__PURE__*/ defineComponent({
15784
15833
  name: "DataTableEmpty",
15785
15834
  inheritAttrs: false,
15786
15835
  __name: "DataTableEmpty",
@@ -15821,7 +15870,7 @@ const _sfc_main$70 = /* @__PURE__ */ defineComponent({
15821
15870
  * The `<thead>` element wrapper. Exposes the 2D header grid from the context
15822
15871
  * for rendering nested header rows.
15823
15872
  */
15824
- const _sfc_main$71 = /* @__PURE__ */ defineComponent({
15873
+ const _sfc_main$71 = /*@__PURE__*/ defineComponent({
15825
15874
  name: "DataTableHeader",
15826
15875
  inheritAttrs: false,
15827
15876
  __name: "DataTableHeader",
@@ -15860,7 +15909,7 @@ const _sfc_main$71 = /* @__PURE__ */ defineComponent({
15860
15909
  * DataTable.Body (with Cell). Exposes selection and expansion state
15861
15910
  * when bound to a row item.
15862
15911
  */
15863
- const _sfc_main$73 = /* @__PURE__ */ defineComponent({
15912
+ const _sfc_main$73 = /*@__PURE__*/ defineComponent({
15864
15913
  name: "DataTableRow",
15865
15914
  inheritAttrs: false,
15866
15915
  __name: "DataTableRow",
@@ -15986,7 +16035,7 @@ const _sfc_main$73 = /* @__PURE__ */ defineComponent({
15986
16035
  * The `<table>` element wrapper for the DataTable compound. Renders a semantic
15987
16036
  * table with proper ARIA attributes.
15988
16037
  */
15989
- const _sfc_main$74 = /* @__PURE__ */ defineComponent({
16038
+ const _sfc_main$74 = /*@__PURE__*/ defineComponent({
15990
16039
  name: "DataTableTable",
15991
16040
  inheritAttrs: false,
15992
16041
  __name: "DataTableTable",
@@ -16311,10 +16360,10 @@ const DataTable = {
16311
16360
  //#endregion
16312
16361
  //#region src/components/Dialog/DialogRoot.vue
16313
16362
  const [useDialogContext, provideDialogContext] = createContext();
16314
- const _sfc_main$79 = /* @__PURE__ */ defineComponent({
16363
+ const _sfc_main$79 = /*@__PURE__*/ defineComponent({
16315
16364
  name: "DialogRoot",
16316
16365
  __name: "DialogRoot",
16317
- props: /* @__PURE__ */ mergeModels({
16366
+ props: /*@__PURE__*/ mergeModels({
16318
16367
  namespace: { default: "v0:dialog" },
16319
16368
  id: {},
16320
16369
  as: { default: null },
@@ -16326,7 +16375,7 @@ const _sfc_main$79 = /* @__PURE__ */ defineComponent({
16326
16375
  },
16327
16376
  "modelModifiers": {}
16328
16377
  }),
16329
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
16378
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
16330
16379
  setup(__props) {
16331
16380
  const isOpen = useModel(__props, "modelValue");
16332
16381
  const id = __props.id ?? /* @__PURE__ */ useId();
@@ -16369,7 +16418,7 @@ const _sfc_main$79 = /* @__PURE__ */ defineComponent({
16369
16418
  });
16370
16419
  //#endregion
16371
16420
  //#region src/components/Dialog/DialogClose.vue
16372
- const _sfc_main$76 = /* @__PURE__ */ defineComponent({
16421
+ const _sfc_main$76 = /*@__PURE__*/ defineComponent({
16373
16422
  name: "DialogClose",
16374
16423
  __name: "DialogClose",
16375
16424
  props: {
@@ -16413,7 +16462,7 @@ const _sfc_main$76 = /* @__PURE__ */ defineComponent({
16413
16462
  });
16414
16463
  //#endregion
16415
16464
  //#region src/components/Dialog/DialogContent.vue
16416
- const _sfc_main$77 = /* @__PURE__ */ defineComponent({
16465
+ const _sfc_main$77 = /*@__PURE__*/ defineComponent({
16417
16466
  name: "DialogContent",
16418
16467
  __name: "DialogContent",
16419
16468
  props: {
@@ -16498,7 +16547,7 @@ const _sfc_main$77 = /* @__PURE__ */ defineComponent({
16498
16547
  });
16499
16548
  //#endregion
16500
16549
  //#region src/components/Dialog/DialogDescription.vue
16501
- const _sfc_main$78 = /* @__PURE__ */ defineComponent({
16550
+ const _sfc_main$78 = /*@__PURE__*/ defineComponent({
16502
16551
  name: "DialogDescription",
16503
16552
  __name: "DialogDescription",
16504
16553
  props: {
@@ -16528,7 +16577,7 @@ const _sfc_main$78 = /* @__PURE__ */ defineComponent({
16528
16577
  });
16529
16578
  //#endregion
16530
16579
  //#region src/components/Dialog/DialogTitle.vue
16531
- const _sfc_main$80 = /* @__PURE__ */ defineComponent({
16580
+ const _sfc_main$80 = /*@__PURE__*/ defineComponent({
16532
16581
  name: "DialogTitle",
16533
16582
  __name: "DialogTitle",
16534
16583
  props: {
@@ -16558,7 +16607,7 @@ const _sfc_main$80 = /* @__PURE__ */ defineComponent({
16558
16607
  });
16559
16608
  //#endregion
16560
16609
  //#region src/components/Dialog/DialogActivator.vue
16561
- const _sfc_main$75 = /* @__PURE__ */ defineComponent({
16610
+ const _sfc_main$75 = /*@__PURE__*/ defineComponent({
16562
16611
  name: "DialogActivator",
16563
16612
  __name: "DialogActivator",
16564
16613
  props: {
@@ -16753,10 +16802,10 @@ const Dialog = {
16753
16802
  //#endregion
16754
16803
  //#region src/components/ExpansionPanel/ExpansionPanelGroup.vue
16755
16804
  const [useExpansionPanelGroup, provideExpansionPanelGroup] = createContext();
16756
- const _sfc_main$84 = /* @__PURE__ */ defineComponent({
16805
+ const _sfc_main$84 = /*@__PURE__*/ defineComponent({
16757
16806
  name: "ExpansionPanelGroup",
16758
16807
  __name: "ExpansionPanelGroup",
16759
- props: /* @__PURE__ */ mergeModels({
16808
+ props: /*@__PURE__*/ mergeModels({
16760
16809
  namespace: { default: "v0:expansion-panel" },
16761
16810
  disabled: {
16762
16811
  type: Boolean,
@@ -16780,7 +16829,7 @@ const _sfc_main$84 = /* @__PURE__ */ defineComponent({
16780
16829
  "modelValue": {},
16781
16830
  "modelModifiers": {}
16782
16831
  }),
16783
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
16832
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
16784
16833
  setup(__props) {
16785
16834
  const model = useModel(__props, "modelValue");
16786
16835
  const isDisabled = toRef(() => __props.disabled);
@@ -16813,7 +16862,7 @@ const _sfc_main$84 = /* @__PURE__ */ defineComponent({
16813
16862
  //#endregion
16814
16863
  //#region src/components/ExpansionPanel/ExpansionPanelRoot.vue
16815
16864
  const [useExpansionPanelRoot, provideExpansionPanelRoot] = createContext({ suffix: "item" });
16816
- const _sfc_main$86 = /* @__PURE__ */ defineComponent({
16865
+ const _sfc_main$86 = /*@__PURE__*/ defineComponent({
16817
16866
  name: "ExpansionPanelRoot",
16818
16867
  __name: "ExpansionPanelRoot",
16819
16868
  props: {
@@ -16859,7 +16908,7 @@ const _sfc_main$86 = /* @__PURE__ */ defineComponent({
16859
16908
  });
16860
16909
  //#endregion
16861
16910
  //#region src/components/ExpansionPanel/ExpansionPanelActivator.vue
16862
- const _sfc_main$81 = /* @__PURE__ */ defineComponent({
16911
+ const _sfc_main$81 = /*@__PURE__*/ defineComponent({
16863
16912
  name: "ExpansionPanelActivator",
16864
16913
  __name: "ExpansionPanelActivator",
16865
16914
  props: {
@@ -16912,7 +16961,7 @@ const _sfc_main$81 = /* @__PURE__ */ defineComponent({
16912
16961
  });
16913
16962
  //#endregion
16914
16963
  //#region src/components/ExpansionPanel/ExpansionPanelContent.vue
16915
- const _sfc_main$82 = /* @__PURE__ */ defineComponent({
16964
+ const _sfc_main$82 = /*@__PURE__*/ defineComponent({
16916
16965
  name: "ExpansionPanelContent",
16917
16966
  __name: "ExpansionPanelContent",
16918
16967
  props: {
@@ -16945,7 +16994,7 @@ const _sfc_main$82 = /* @__PURE__ */ defineComponent({
16945
16994
  });
16946
16995
  //#endregion
16947
16996
  //#region src/components/ExpansionPanel/ExpansionPanelCue.vue
16948
- const _sfc_main$83 = /* @__PURE__ */ defineComponent({
16997
+ const _sfc_main$83 = /*@__PURE__*/ defineComponent({
16949
16998
  name: "ExpansionPanelCue",
16950
16999
  __name: "ExpansionPanelCue",
16951
17000
  props: {
@@ -16975,7 +17024,7 @@ const _sfc_main$83 = /* @__PURE__ */ defineComponent({
16975
17024
  });
16976
17025
  //#endregion
16977
17026
  //#region src/components/ExpansionPanel/ExpansionPanelHeader.vue
16978
- const _sfc_main$85 = /* @__PURE__ */ defineComponent({
17027
+ const _sfc_main$85 = /*@__PURE__*/ defineComponent({
16979
17028
  name: "ExpansionPanelHeader",
16980
17029
  __name: "ExpansionPanelHeader",
16981
17030
  props: {
@@ -17300,11 +17349,11 @@ function useForm(namespace = "v0:form") {
17300
17349
  }
17301
17350
  //#endregion
17302
17351
  //#region src/components/Form/Form.vue
17303
- const _sfc_main$87 = /* @__PURE__ */ defineComponent({
17352
+ const _sfc_main$87 = /*@__PURE__*/ defineComponent({
17304
17353
  name: "Form",
17305
17354
  inheritAttrs: false,
17306
17355
  __name: "Form",
17307
- props: /* @__PURE__ */ mergeModels({
17356
+ props: /*@__PURE__*/ mergeModels({
17308
17357
  namespace: { default: "v0:form" },
17309
17358
  disabled: {
17310
17359
  type: Boolean,
@@ -17327,7 +17376,7 @@ const _sfc_main$87 = /* @__PURE__ */ defineComponent({
17327
17376
  },
17328
17377
  "modelModifiers": {}
17329
17378
  }),
17330
- emits: /* @__PURE__ */ mergeModels([
17379
+ emits: /*@__PURE__*/ mergeModels([
17331
17380
  "update:model-value",
17332
17381
  "submit",
17333
17382
  "reset"
@@ -17346,7 +17395,8 @@ const _sfc_main$87 = /* @__PURE__ */ defineComponent({
17346
17395
  provideContext(__props.namespace, form);
17347
17396
  async function onSubmit(event) {
17348
17397
  event.preventDefault();
17349
- emit("submit", { valid: await form.submit() });
17398
+ const valid = await form.submit();
17399
+ emit("submit", { valid });
17350
17400
  }
17351
17401
  function onReset(event) {
17352
17402
  event.preventDefault();
@@ -17380,10 +17430,10 @@ const _sfc_main$87 = /* @__PURE__ */ defineComponent({
17380
17430
  //#endregion
17381
17431
  //#region src/components/Group/GroupRoot.vue
17382
17432
  const [useGroupRoot, provideGroupRoot] = createContext();
17383
- const _sfc_main$89 = /* @__PURE__ */ defineComponent({
17433
+ const _sfc_main$89 = /*@__PURE__*/ defineComponent({
17384
17434
  name: "GroupRoot",
17385
17435
  __name: "GroupRoot",
17386
- props: /* @__PURE__ */ mergeModels({
17436
+ props: /*@__PURE__*/ mergeModels({
17387
17437
  namespace: { default: "v0:group" },
17388
17438
  disabled: {
17389
17439
  type: Boolean,
@@ -17401,7 +17451,7 @@ const _sfc_main$89 = /* @__PURE__ */ defineComponent({
17401
17451
  "modelValue": {},
17402
17452
  "modelModifiers": {}
17403
17453
  }),
17404
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
17454
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
17405
17455
  setup(__props) {
17406
17456
  const model = useModel(__props, "modelValue");
17407
17457
  const group = createGroup({
@@ -17432,7 +17482,7 @@ const _sfc_main$89 = /* @__PURE__ */ defineComponent({
17432
17482
  });
17433
17483
  //#endregion
17434
17484
  //#region src/components/Group/GroupItem.vue
17435
- const _sfc_main$88 = /* @__PURE__ */ defineComponent({
17485
+ const _sfc_main$88 = /*@__PURE__*/ defineComponent({
17436
17486
  name: "GroupItem",
17437
17487
  __name: "GroupItem",
17438
17488
  props: {
@@ -17721,7 +17771,7 @@ function useElementIntersection(target, options = {}) {
17721
17771
  //#endregion
17722
17772
  //#region src/components/Image/ImageRoot.vue
17723
17773
  const [useImageRoot, provideImageRoot] = createContext();
17724
- const _sfc_main$93 = /* @__PURE__ */ defineComponent({
17774
+ const _sfc_main$93 = /*@__PURE__*/ defineComponent({
17725
17775
  name: "ImageRoot",
17726
17776
  __name: "ImageRoot",
17727
17777
  props: {
@@ -17774,7 +17824,7 @@ const _sfc_main$93 = /* @__PURE__ */ defineComponent({
17774
17824
  });
17775
17825
  //#endregion
17776
17826
  //#region src/components/Image/ImageFallback.vue
17777
- const _sfc_main$90 = /* @__PURE__ */ defineComponent({
17827
+ const _sfc_main$90 = /*@__PURE__*/ defineComponent({
17778
17828
  name: "ImageFallback",
17779
17829
  __name: "ImageFallback",
17780
17830
  props: {
@@ -17804,7 +17854,7 @@ const _sfc_main$90 = /* @__PURE__ */ defineComponent({
17804
17854
  });
17805
17855
  //#endregion
17806
17856
  //#region src/components/Image/ImageImg.vue
17807
- const _sfc_main$91 = /* @__PURE__ */ defineComponent({
17857
+ const _sfc_main$91 = /*@__PURE__*/ defineComponent({
17808
17858
  name: "ImageImg",
17809
17859
  __name: "ImageImg",
17810
17860
  props: {
@@ -17875,7 +17925,7 @@ const _sfc_main$91 = /* @__PURE__ */ defineComponent({
17875
17925
  });
17876
17926
  //#endregion
17877
17927
  //#region src/components/Image/ImagePlaceholder.vue
17878
- const _sfc_main$92 = /* @__PURE__ */ defineComponent({
17928
+ const _sfc_main$92 = /*@__PURE__*/ defineComponent({
17879
17929
  name: "ImagePlaceholder",
17880
17930
  __name: "ImagePlaceholder",
17881
17931
  props: {
@@ -17983,7 +18033,7 @@ const Image = {
17983
18033
  * @param value The value to check.
17984
18034
  * @returns `true` if the value conforms to the Standard Schema interface.
17985
18035
  */
17986
- /* @__NO_SIDE_EFFECTS__ */
18036
+ /* #__NO_SIDE_EFFECTS__ */
17987
18037
  function isStandardSchema(value) {
17988
18038
  return /* @__PURE__ */ isObject(value) && "~standard" in value;
17989
18039
  }
@@ -17999,7 +18049,7 @@ function isStandardSchema(value) {
17999
18049
  *
18000
18050
  * @see https://standardschema.dev/
18001
18051
  */
18002
- /* @__NO_SIDE_EFFECTS__ */
18052
+ /* #__NO_SIDE_EFFECTS__ */
18003
18053
  function toRule(schema) {
18004
18054
  return async (value) => {
18005
18055
  let result = schema["~standard"].validate(value);
@@ -18189,7 +18239,7 @@ const UNSET = /* @__PURE__ */ Symbol("unset");
18189
18239
  * ```
18190
18240
  */
18191
18241
  function createValidation(_options = {}) {
18192
- const { rules: initialRules = [], value: valueSource, enroll = true, ...options } = _options;
18242
+ const { rules: initialRules = [], value: valueSource, enroll = true, formNamespace = "v0:form", ...options } = _options;
18193
18243
  const group = createGroup({
18194
18244
  ...options,
18195
18245
  enroll,
@@ -18204,8 +18254,8 @@ function createValidation(_options = {}) {
18204
18254
  let latest;
18205
18255
  function register(input) {
18206
18256
  if (/* @__PURE__ */ isFunction(input) || /* @__PURE__ */ isString(input) || /* @__PURE__ */ isStandardSchema(input)) {
18207
- const resolved = rulesContext.resolve([input]);
18208
- return group.register({ value: resolved[0] ?? (() => true) });
18257
+ const rule = rulesContext.resolve([input])[0] ?? (() => /* @__PURE__ */ isString(input) ? `Unknown validation rule "${input}"` : false);
18258
+ return group.register({ value: rule });
18209
18259
  }
18210
18260
  return group.register(input);
18211
18261
  }
@@ -18284,7 +18334,7 @@ function createValidation(_options = {}) {
18284
18334
  return group.size;
18285
18335
  }
18286
18336
  };
18287
- const form = useForm();
18337
+ const form = useForm(formNamespace);
18288
18338
  const ticket = form?.register({ value: context });
18289
18339
  onScopeDispose(() => {
18290
18340
  if (!ticket || !form) return;
@@ -18312,15 +18362,24 @@ function createValidation(_options = {}) {
18312
18362
  * import { createInput } from '@vuetify/v0'
18313
18363
  *
18314
18364
  * const value = shallowRef('')
18315
- * const input = createInput({ value, label: 'Name', rules: ['required'] })
18365
+ * const input = createInput({ value, label: 'Name', required: true })
18316
18366
  * await input.validate()
18317
18367
  * ```
18318
18368
  */
18319
18369
  function createInput(options) {
18320
- const { value, id = /* @__PURE__ */ useId(), label, name, form, required, disabled = false, readonly: _readonly = false, rules = [], error = false, errorMessages, dirty: dirtyFn, equals = (a, b) => a === b } = options;
18370
+ const { value, id = /* @__PURE__ */ useId(), label, name, form, formNamespace, required, disabled = false, readonly: _readonly = false, rules = [], error = false, errorMessages, dirty: dirtyFn, equals = (a, b) => a === b } = options;
18371
+ function filled(val) {
18372
+ if (dirtyFn) return dirtyFn(val);
18373
+ return /* @__PURE__ */ isString(val) ? val.length > 0 : !/* @__PURE__ */ isNullOrUndefined(val);
18374
+ }
18375
+ const locale = useLocale();
18376
+ function requiredRule(v) {
18377
+ return filled(v) || (locale.ti("Input.required") ?? "Required");
18378
+ }
18321
18379
  const validation = createValidation({
18322
- rules,
18323
- value
18380
+ rules: required ? [requiredRule, ...rules] : rules,
18381
+ value,
18382
+ formNamespace
18324
18383
  });
18325
18384
  const initialValue = value.value;
18326
18385
  const isFocused = shallowRef(false);
@@ -18333,10 +18392,7 @@ function createInput(options) {
18333
18392
  const isReadonly = toRef(() => toValue(_readonly));
18334
18393
  const descriptionId = `${id}-description`;
18335
18394
  const errorId = `${id}-error`;
18336
- const isDirty = toRef(() => {
18337
- if (dirtyFn) return dirtyFn(value.value);
18338
- return /* @__PURE__ */ isString(value.value) ? value.value.length > 0 : !/* @__PURE__ */ isNullOrUndefined(value.value);
18339
- });
18395
+ const isDirty = toRef(() => filled(value.value));
18340
18396
  const isPristine = shallowRef(true);
18341
18397
  watch(value, (val) => {
18342
18398
  isPristine.value = equals(val, initialValue);
@@ -18405,11 +18461,11 @@ function parseValidateOn$1(value) {
18405
18461
  modifier
18406
18462
  };
18407
18463
  }
18408
- const _sfc_main$97 = /* @__PURE__ */ defineComponent({
18464
+ const _sfc_main$97 = /*@__PURE__*/ defineComponent({
18409
18465
  name: "InputRoot",
18410
18466
  inheritAttrs: false,
18411
18467
  __name: "InputRoot",
18412
- props: /* @__PURE__ */ mergeModels({
18468
+ props: /*@__PURE__*/ mergeModels({
18413
18469
  id: { default: () => /* @__PURE__ */ useId() },
18414
18470
  label: {},
18415
18471
  name: {},
@@ -18426,6 +18482,7 @@ const _sfc_main$97 = /* @__PURE__ */ defineComponent({
18426
18482
  },
18427
18483
  errorMessages: {},
18428
18484
  namespace: { default: "v0:input:root" },
18485
+ formNamespace: { default: "v0:form" },
18429
18486
  as: { default: "div" },
18430
18487
  renderless: { type: Boolean }
18431
18488
  }, {
@@ -18437,7 +18494,7 @@ const _sfc_main$97 = /* @__PURE__ */ defineComponent({
18437
18494
  },
18438
18495
  "focusedModifiers": {}
18439
18496
  }),
18440
- emits: /* @__PURE__ */ mergeModels(["update:model-value", "update:focused"], ["update:modelValue", "update:focused"]),
18497
+ emits: /*@__PURE__*/ mergeModels(["update:model-value", "update:focused"], ["update:modelValue", "update:focused"]),
18441
18498
  setup(__props) {
18442
18499
  const attrs = useAttrs();
18443
18500
  const model = useModel(__props, "modelValue");
@@ -18448,6 +18505,7 @@ const _sfc_main$97 = /* @__PURE__ */ defineComponent({
18448
18505
  label: __props.label,
18449
18506
  name: __props.name,
18450
18507
  form: __props.form,
18508
+ formNamespace: __props.formNamespace,
18451
18509
  required: __props.required,
18452
18510
  disabled: () => toValue(__props.disabled),
18453
18511
  readonly: () => toValue(__props.readonly),
@@ -18545,7 +18603,12 @@ const _sfc_main$97 = /* @__PURE__ */ defineComponent({
18545
18603
  });
18546
18604
  //#endregion
18547
18605
  //#region src/components/Input/InputControl.vue
18548
- const _sfc_main$94 = /* @__PURE__ */ defineComponent({
18606
+ function defined(attrs) {
18607
+ const result = {};
18608
+ for (const key of Object.keys(attrs)) if (!/* @__PURE__ */ isUndefined(attrs[key])) result[key] = attrs[key];
18609
+ return result;
18610
+ }
18611
+ const _sfc_main$94 = /*@__PURE__*/ defineComponent({
18549
18612
  name: "InputControl",
18550
18613
  inheritAttrs: false,
18551
18614
  __name: "InputControl",
@@ -18575,7 +18638,7 @@ const _sfc_main$94 = /* @__PURE__ */ defineComponent({
18575
18638
  const disabled = root.isDisabled.value;
18576
18639
  const readonly = root.isReadonly.value;
18577
18640
  const isFocused = root.isFocused.value;
18578
- return {
18641
+ return defined({
18579
18642
  "id": root.id,
18580
18643
  "type": root.type.value,
18581
18644
  "name": root.name,
@@ -18596,7 +18659,7 @@ const _sfc_main$94 = /* @__PURE__ */ defineComponent({
18596
18659
  "onInput": onInput,
18597
18660
  "onFocus": onFocus,
18598
18661
  "onBlur": onBlur
18599
- };
18662
+ });
18600
18663
  });
18601
18664
  const slotProps = toRef(() => ({
18602
18665
  value: root.value.value,
@@ -18618,7 +18681,7 @@ const _sfc_main$94 = /* @__PURE__ */ defineComponent({
18618
18681
  });
18619
18682
  //#endregion
18620
18683
  //#region src/components/Input/InputDescription.vue
18621
- const _sfc_main$95 = /* @__PURE__ */ defineComponent({
18684
+ const _sfc_main$95 = /*@__PURE__*/ defineComponent({
18622
18685
  name: "InputDescription",
18623
18686
  inheritAttrs: false,
18624
18687
  __name: "InputDescription",
@@ -18648,7 +18711,7 @@ const _sfc_main$95 = /* @__PURE__ */ defineComponent({
18648
18711
  });
18649
18712
  //#endregion
18650
18713
  //#region src/components/Input/InputError.vue
18651
- const _sfc_main$96 = /* @__PURE__ */ defineComponent({
18714
+ const _sfc_main$96 = /*@__PURE__*/ defineComponent({
18652
18715
  name: "InputError",
18653
18716
  inheritAttrs: false,
18654
18717
  __name: "InputError",
@@ -18800,7 +18863,7 @@ const Input = {
18800
18863
  };
18801
18864
  //#endregion
18802
18865
  //#region src/components/Locale/Locale.vue
18803
- const _sfc_main$98 = /* @__PURE__ */ defineComponent({
18866
+ const _sfc_main$98 = /*@__PURE__*/ defineComponent({
18804
18867
  name: "Locale",
18805
18868
  inheritAttrs: false,
18806
18869
  __name: "Locale",
@@ -18855,10 +18918,7 @@ const _sfc_main$98 = /* @__PURE__ */ defineComponent({
18855
18918
  "lang": __props.locale
18856
18919
  }));
18857
18920
  return (_ctx, _cache) => {
18858
- return __props.renderless ? renderSlot(_ctx.$slots, "default", {
18859
- key: 0,
18860
- attrs: attrs.value
18861
- }) : (openBlock(), createBlock(resolveDynamicComponent(__props.as), normalizeProps(mergeProps({ key: 1 }, attrs.value)), {
18921
+ return __props.renderless ? renderSlot(_ctx.$slots, "default", { attrs: attrs.value }, void 0, void 0, 0) : (openBlock(), createBlock(resolveDynamicComponent(__props.as), normalizeProps(mergeProps({ key: 1 }, attrs.value)), {
18862
18922
  default: withCtx(() => [renderSlot(_ctx.$slots, "default", { attrs: attrs.value })]),
18863
18923
  _: 3
18864
18924
  }, 16));
@@ -18900,7 +18960,8 @@ function createNumeric(options = {}) {
18900
18960
  function snap(value) {
18901
18961
  if (!Number.isFinite(value)) return min;
18902
18962
  if (step <= 0 || !Number.isFinite(min)) return /* @__PURE__ */ clamp(value, min, max);
18903
- const result = min + Math.round((/* @__PURE__ */ clamp(value, min, max) - min) / step) * step;
18963
+ const steps = Math.round((/* @__PURE__ */ clamp(value, min, max) - min) / step);
18964
+ const result = min + steps * step;
18904
18965
  return /* @__PURE__ */ clamp(decimals > 0 ? +result.toFixed(decimals) : result, min, max);
18905
18966
  }
18906
18967
  function fromValue(value) {
@@ -18972,7 +19033,7 @@ function createNumeric(options = {}) {
18972
19033
  * ```
18973
19034
  */
18974
19035
  function createNumberField(options = {}) {
18975
- const { value = ref(null), locale = "en-US", format: formatOptions, clamp: shouldClamp = true, commitOn = "change", disabled = false, readonly: _readonly = false, min, max, step, leap, wrap, id, label, name, rules, error, errorMessages } = options;
19036
+ const { value = ref(null), locale = "en-US", format: formatOptions, clamp: shouldClamp = true, commitOn = "change", disabled = false, readonly: _readonly = false, min, max, step, leap, wrap, id, label, name, formNamespace, required, rules, error, errorMessages } = options;
18976
19037
  const numeric = createNumeric({
18977
19038
  min,
18978
19039
  max,
@@ -18985,6 +19046,8 @@ function createNumberField(options = {}) {
18985
19046
  id,
18986
19047
  label,
18987
19048
  name,
19049
+ formNamespace,
19050
+ required,
18988
19051
  disabled,
18989
19052
  readonly: _readonly,
18990
19053
  rules,
@@ -19098,11 +19161,11 @@ function parseValidateOn(value) {
19098
19161
  modifier
19099
19162
  };
19100
19163
  }
19101
- const _sfc_main$104 = /* @__PURE__ */ defineComponent({
19164
+ const _sfc_main$104 = /*@__PURE__*/ defineComponent({
19102
19165
  name: "NumberFieldRoot",
19103
19166
  inheritAttrs: false,
19104
19167
  __name: "NumberFieldRoot",
19105
- props: /* @__PURE__ */ mergeModels({
19168
+ props: /*@__PURE__*/ mergeModels({
19106
19169
  id: { default: () => /* @__PURE__ */ useId() },
19107
19170
  label: {},
19108
19171
  ariaLabelledby: {},
@@ -19137,13 +19200,14 @@ const _sfc_main$104 = /* @__PURE__ */ defineComponent({
19137
19200
  default: false
19138
19201
  },
19139
19202
  namespace: { default: "v0:number-field:root" },
19203
+ formNamespace: { default: "v0:form" },
19140
19204
  as: { default: "div" },
19141
19205
  renderless: { type: Boolean }
19142
19206
  }, {
19143
19207
  "modelValue": { default: null },
19144
19208
  "modelModifiers": {}
19145
19209
  }),
19146
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
19210
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
19147
19211
  setup(__props) {
19148
19212
  const attrs = useAttrs();
19149
19213
  const model = useModel(__props, "modelValue");
@@ -19152,6 +19216,8 @@ const _sfc_main$104 = /* @__PURE__ */ defineComponent({
19152
19216
  id: __props.id,
19153
19217
  label: __props.label,
19154
19218
  name: __props.name,
19219
+ formNamespace: __props.formNamespace,
19220
+ required: __props.required,
19155
19221
  locale: __props.locale,
19156
19222
  format: __props.format,
19157
19223
  clamp: __props.clamp,
@@ -19260,7 +19326,7 @@ const _sfc_main$104 = /* @__PURE__ */ defineComponent({
19260
19326
  });
19261
19327
  //#endregion
19262
19328
  //#region src/components/NumberField/NumberFieldControl.vue
19263
- const _sfc_main$99 = /* @__PURE__ */ defineComponent({
19329
+ const _sfc_main$99 = /*@__PURE__*/ defineComponent({
19264
19330
  name: "NumberFieldControl",
19265
19331
  inheritAttrs: false,
19266
19332
  __name: "NumberFieldControl",
@@ -19298,7 +19364,8 @@ const _sfc_main$99 = /* @__PURE__ */ defineComponent({
19298
19364
  if (!/^-?\d*\.?\d*$/.test(next)) e.preventDefault();
19299
19365
  }
19300
19366
  function onInput(e) {
19301
- text.value = e.target.value;
19367
+ const target = e.target;
19368
+ text.value = target.value;
19302
19369
  if (root.commitOn === "input") {
19303
19370
  isEagerWrite = true;
19304
19371
  root.write(text.value);
@@ -19419,7 +19486,7 @@ const _sfc_main$99 = /* @__PURE__ */ defineComponent({
19419
19486
  });
19420
19487
  //#endregion
19421
19488
  //#region src/components/NumberField/NumberFieldDecrement.vue
19422
- const _sfc_main$100 = /* @__PURE__ */ defineComponent({
19489
+ const _sfc_main$100 = /*@__PURE__*/ defineComponent({
19423
19490
  name: "NumberFieldDecrement",
19424
19491
  inheritAttrs: false,
19425
19492
  __name: "NumberFieldDecrement",
@@ -19493,7 +19560,7 @@ const _sfc_main$100 = /* @__PURE__ */ defineComponent({
19493
19560
  });
19494
19561
  //#endregion
19495
19562
  //#region src/components/NumberField/NumberFieldDescription.vue
19496
- const _sfc_main$101 = /* @__PURE__ */ defineComponent({
19563
+ const _sfc_main$101 = /*@__PURE__*/ defineComponent({
19497
19564
  name: "NumberFieldDescription",
19498
19565
  inheritAttrs: false,
19499
19566
  __name: "NumberFieldDescription",
@@ -19523,7 +19590,7 @@ const _sfc_main$101 = /* @__PURE__ */ defineComponent({
19523
19590
  });
19524
19591
  //#endregion
19525
19592
  //#region src/components/NumberField/NumberFieldError.vue
19526
- const _sfc_main$102 = /* @__PURE__ */ defineComponent({
19593
+ const _sfc_main$102 = /*@__PURE__*/ defineComponent({
19527
19594
  name: "NumberFieldError",
19528
19595
  inheritAttrs: false,
19529
19596
  __name: "NumberFieldError",
@@ -19560,7 +19627,7 @@ const _sfc_main$102 = /* @__PURE__ */ defineComponent({
19560
19627
  });
19561
19628
  //#endregion
19562
19629
  //#region src/components/NumberField/NumberFieldIncrement.vue
19563
- const _sfc_main$103 = /* @__PURE__ */ defineComponent({
19630
+ const _sfc_main$103 = /*@__PURE__*/ defineComponent({
19564
19631
  name: "NumberFieldIncrement",
19565
19632
  inheritAttrs: false,
19566
19633
  __name: "NumberFieldIncrement",
@@ -19634,7 +19701,7 @@ const _sfc_main$103 = /* @__PURE__ */ defineComponent({
19634
19701
  });
19635
19702
  //#endregion
19636
19703
  //#region src/components/NumberField/NumberFieldScrub.vue
19637
- const _sfc_main$105 = /* @__PURE__ */ defineComponent({
19704
+ const _sfc_main$105 = /*@__PURE__*/ defineComponent({
19638
19705
  name: "NumberFieldScrub",
19639
19706
  inheritAttrs: false,
19640
19707
  __name: "NumberFieldScrub",
@@ -19856,7 +19923,7 @@ const NumberField = {
19856
19923
  * `createOverflow` as a getter so capacity recomputes when the prop changes.
19857
19924
  */
19858
19925
  const [useOverflowRoot, provideOverflowRoot] = createContext();
19859
- const _sfc_main$108 = /* @__PURE__ */ defineComponent({
19926
+ const _sfc_main$108 = /*@__PURE__*/ defineComponent({
19860
19927
  name: "OverflowRoot",
19861
19928
  __name: "OverflowRoot",
19862
19929
  props: {
@@ -19945,7 +20012,7 @@ const _sfc_main$108 = /* @__PURE__ */ defineComponent({
19945
20012
  * slot consumer must spread `slotProps.attrs` onto their own element to
19946
20013
  * preserve the data hook and live-region semantics.
19947
20014
  */
19948
- const _sfc_main$106 = /* @__PURE__ */ defineComponent({
20015
+ const _sfc_main$106 = /*@__PURE__*/ defineComponent({
19949
20016
  name: "OverflowIndicator",
19950
20017
  __name: "OverflowIndicator",
19951
20018
  props: {
@@ -20014,7 +20081,7 @@ const _sfc_main$106 = /* @__PURE__ */ defineComponent({
20014
20081
  * so the slot consumer is responsible for honoring `isHidden` themselves —
20015
20082
  * read it from `slotProps.isHidden` and conditionally render or apply CSS.
20016
20083
  */
20017
- const _sfc_main$107 = /* @__PURE__ */ defineComponent({
20084
+ const _sfc_main$107 = /*@__PURE__*/ defineComponent({
20018
20085
  name: "OverflowItem",
20019
20086
  __name: "OverflowItem",
20020
20087
  props: {
@@ -20149,10 +20216,10 @@ const Overflow = {
20149
20216
  const [usePaginationRoot, providePaginationRoot] = createContext();
20150
20217
  const [usePaginationControls, providePaginationControls] = createContext({ suffix: "controls" });
20151
20218
  const [usePaginationItems, providePaginationItems] = createContext({ suffix: "items" });
20152
- const _sfc_main$115 = /* @__PURE__ */ defineComponent({
20219
+ const _sfc_main$115 = /*@__PURE__*/ defineComponent({
20153
20220
  name: "PaginationRoot",
20154
20221
  __name: "PaginationRoot",
20155
- props: /* @__PURE__ */ mergeModels({
20222
+ props: /*@__PURE__*/ mergeModels({
20156
20223
  namespace: { default: "v0:pagination" },
20157
20224
  size: { default: 1 },
20158
20225
  totalVisible: {},
@@ -20167,7 +20234,7 @@ const _sfc_main$115 = /* @__PURE__ */ defineComponent({
20167
20234
  "modelValue": { default: 1 },
20168
20235
  "modelModifiers": {}
20169
20236
  }),
20170
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
20237
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
20171
20238
  setup(__props) {
20172
20239
  const page = useModel(__props, "modelValue");
20173
20240
  const locale = useLocale();
@@ -20251,7 +20318,7 @@ const _sfc_main$115 = /* @__PURE__ */ defineComponent({
20251
20318
  });
20252
20319
  //#endregion
20253
20320
  //#region src/components/Pagination/PaginationEllipsis.vue
20254
- const _sfc_main$109 = /* @__PURE__ */ defineComponent({
20321
+ const _sfc_main$109 = /*@__PURE__*/ defineComponent({
20255
20322
  name: "PaginationEllipsis",
20256
20323
  __name: "PaginationEllipsis",
20257
20324
  props: {
@@ -20294,7 +20361,7 @@ const _sfc_main$109 = /* @__PURE__ */ defineComponent({
20294
20361
  });
20295
20362
  //#endregion
20296
20363
  //#region src/components/Pagination/PaginationFirst.vue
20297
- const _sfc_main$110 = /* @__PURE__ */ defineComponent({
20364
+ const _sfc_main$110 = /*@__PURE__*/ defineComponent({
20298
20365
  name: "PaginationFirst",
20299
20366
  __name: "PaginationFirst",
20300
20367
  props: {
@@ -20359,7 +20426,7 @@ const _sfc_main$110 = /* @__PURE__ */ defineComponent({
20359
20426
  });
20360
20427
  //#endregion
20361
20428
  //#region src/components/Pagination/PaginationItem.vue
20362
- const _sfc_main$111 = /* @__PURE__ */ defineComponent({
20429
+ const _sfc_main$111 = /*@__PURE__*/ defineComponent({
20363
20430
  name: "PaginationItem",
20364
20431
  __name: "PaginationItem",
20365
20432
  props: {
@@ -20435,7 +20502,7 @@ const _sfc_main$111 = /* @__PURE__ */ defineComponent({
20435
20502
  });
20436
20503
  //#endregion
20437
20504
  //#region src/components/Pagination/PaginationLast.vue
20438
- const _sfc_main$112 = /* @__PURE__ */ defineComponent({
20505
+ const _sfc_main$112 = /*@__PURE__*/ defineComponent({
20439
20506
  name: "PaginationLast",
20440
20507
  __name: "PaginationLast",
20441
20508
  props: {
@@ -20500,7 +20567,7 @@ const _sfc_main$112 = /* @__PURE__ */ defineComponent({
20500
20567
  });
20501
20568
  //#endregion
20502
20569
  //#region src/components/Pagination/PaginationNext.vue
20503
- const _sfc_main$113 = /* @__PURE__ */ defineComponent({
20570
+ const _sfc_main$113 = /*@__PURE__*/ defineComponent({
20504
20571
  name: "PaginationNext",
20505
20572
  __name: "PaginationNext",
20506
20573
  props: {
@@ -20565,7 +20632,7 @@ const _sfc_main$113 = /* @__PURE__ */ defineComponent({
20565
20632
  });
20566
20633
  //#endregion
20567
20634
  //#region src/components/Pagination/PaginationPrev.vue
20568
- const _sfc_main$114 = /* @__PURE__ */ defineComponent({
20635
+ const _sfc_main$114 = /*@__PURE__*/ defineComponent({
20569
20636
  name: "PaginationPrev",
20570
20637
  __name: "PaginationPrev",
20571
20638
  props: {
@@ -20630,7 +20697,7 @@ const _sfc_main$114 = /* @__PURE__ */ defineComponent({
20630
20697
  });
20631
20698
  //#endregion
20632
20699
  //#region src/components/Pagination/PaginationStatus.vue
20633
- const _sfc_main$116 = /* @__PURE__ */ defineComponent({
20700
+ const _sfc_main$116 = /*@__PURE__*/ defineComponent({
20634
20701
  name: "PaginationStatus",
20635
20702
  __name: "PaginationStatus",
20636
20703
  props: {
@@ -20897,11 +20964,11 @@ const Pagination = {
20897
20964
  };
20898
20965
  //#endregion
20899
20966
  //#region src/components/Popover/PopoverRoot.vue
20900
- const [usePopoverContext, providePopoverContext] = createContext("v0:popover");
20901
- const _sfc_main$119 = /* @__PURE__ */ defineComponent({
20967
+ const [usePopoverContext, providePopoverContext] = createContext("v0:popover:root");
20968
+ const _sfc_main$119 = /*@__PURE__*/ defineComponent({
20902
20969
  name: "PopoverRoot",
20903
20970
  __name: "PopoverRoot",
20904
- props: /* @__PURE__ */ mergeModels({
20971
+ props: /*@__PURE__*/ mergeModels({
20905
20972
  id: {},
20906
20973
  positionArea: {},
20907
20974
  positionTry: {},
@@ -20944,7 +21011,7 @@ const _sfc_main$119 = /* @__PURE__ */ defineComponent({
20944
21011
  });
20945
21012
  //#endregion
20946
21013
  //#region src/components/Popover/PopoverActivator.vue
20947
- const _sfc_main$117 = /* @__PURE__ */ defineComponent({
21014
+ const _sfc_main$117 = /*@__PURE__*/ defineComponent({
20948
21015
  name: "PopoverActivator",
20949
21016
  __name: "PopoverActivator",
20950
21017
  props: {
@@ -20995,7 +21062,7 @@ const _sfc_main$117 = /* @__PURE__ */ defineComponent({
20995
21062
  });
20996
21063
  //#endregion
20997
21064
  //#region src/components/Popover/PopoverContent.vue
20998
- const _sfc_main$118 = /* @__PURE__ */ defineComponent({
21065
+ const _sfc_main$118 = /*@__PURE__*/ defineComponent({
20999
21066
  name: "PopoverContent",
21000
21067
  __name: "PopoverContent",
21001
21068
  props: {
@@ -21017,7 +21084,14 @@ const _sfc_main$118 = /* @__PURE__ */ defineComponent({
21017
21084
  if (!/* @__PURE__ */ isUndefined(value)) context.positionTry.value = value;
21018
21085
  }, { immediate: true });
21019
21086
  const id = toRef(() => __props.id ?? context.id);
21020
- const style = toRef(() => context.contentStyles.value);
21087
+ const style = toRef(() => {
21088
+ const styles = context.contentStyles.value;
21089
+ if (/* @__PURE__ */ isUndefined(__props.id)) return styles;
21090
+ return {
21091
+ ...styles,
21092
+ "position-anchor": `--${String(__props.id).replace(/[^a-zA-Z0-9_-]/g, "")}`
21093
+ };
21094
+ });
21021
21095
  context.attach(() => ref.value?.element);
21022
21096
  function onBeforeToggle(e) {
21023
21097
  emit("beforetoggle", e);
@@ -21130,7 +21204,7 @@ const Popover = {
21130
21204
  * Standardizes the teleport + stack registration pattern used by
21131
21205
  * overlay components (Snackbar, Toast, Dialog, etc.).
21132
21206
  */
21133
- const _sfc_main$120 = /* @__PURE__ */ defineComponent({
21207
+ const _sfc_main$120 = /*@__PURE__*/ defineComponent({
21134
21208
  name: "Portal",
21135
21209
  __name: "Portal",
21136
21210
  props: {
@@ -21278,9 +21352,7 @@ function usePresence(options) {
21278
21352
  case "mounted":
21279
21353
  state.value = "present";
21280
21354
  break;
21281
- case "unmounted":
21282
- enter();
21283
- break;
21355
+ case "unmounted": enter();
21284
21356
  }
21285
21357
  } else if (booted) leave();
21286
21358
  }, { immediate: true });
@@ -21318,10 +21390,10 @@ function usePresence(options) {
21318
21390
  * - Lifecycle events: `enter`, `leave`, `after-leave`
21319
21391
  * - Animation-agnostic: works with CSS, WAAPI, GSAP, or nothing
21320
21392
  */
21321
- const _sfc_main$121 = /* @__PURE__ */ defineComponent({
21393
+ const _sfc_main$121 = /*@__PURE__*/ defineComponent({
21322
21394
  name: "Presence",
21323
21395
  __name: "Presence",
21324
- props: /* @__PURE__ */ mergeModels({
21396
+ props: /*@__PURE__*/ mergeModels({
21325
21397
  lazy: {
21326
21398
  type: Boolean,
21327
21399
  default: false
@@ -21337,7 +21409,7 @@ const _sfc_main$121 = /* @__PURE__ */ defineComponent({
21337
21409
  },
21338
21410
  "modelModifiers": {}
21339
21411
  }),
21340
- emits: /* @__PURE__ */ mergeModels([
21412
+ emits: /*@__PURE__*/ mergeModels([
21341
21413
  "enter",
21342
21414
  "leave",
21343
21415
  "after-leave"
@@ -21371,14 +21443,14 @@ const _sfc_main$121 = /* @__PURE__ */ defineComponent({
21371
21443
  else if (prev === "leaving" && (state === "unmounted" || state === "mounted")) emit("after-leave");
21372
21444
  });
21373
21445
  return (_ctx, _cache) => {
21374
- return unref(presence).isMounted.value ? renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 0 }, slotProps.value))) : createCommentVNode("v-if", true);
21446
+ return unref(presence).isMounted.value ? renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)), void 0, void 0, 0) : createCommentVNode("v-if", true);
21375
21447
  };
21376
21448
  }
21377
21449
  });
21378
21450
  //#endregion
21379
21451
  //#region src/components/Progress/ProgressHiddenInput.vue
21380
21452
  const _hoisted_1$5 = ["name", "value"];
21381
- const _sfc_main$124 = /* @__PURE__ */ defineComponent({
21453
+ const _sfc_main$124 = /*@__PURE__*/ defineComponent({
21382
21454
  name: "ProgressHiddenInput",
21383
21455
  __name: "ProgressHiddenInput",
21384
21456
  props: { namespace: { default: "v0:progress:root" } },
@@ -21477,6 +21549,9 @@ function createProgress(options = {}) {
21477
21549
  if (pending && segments.value.length >= pending.length) pending = null;
21478
21550
  return ticket;
21479
21551
  }
21552
+ function onboard(registrations) {
21553
+ return model.batch(() => registrations.map((registration) => register(registration)));
21554
+ }
21480
21555
  function apply(incoming, _options) {
21481
21556
  const clamped = incoming.map((v) => /* @__PURE__ */ clamp(Number(v), min, max));
21482
21557
  if (segments.value.length === 0) {
@@ -21496,6 +21571,7 @@ function createProgress(options = {}) {
21496
21571
  isIndeterminate,
21497
21572
  fromValue,
21498
21573
  register,
21574
+ onboard,
21499
21575
  apply,
21500
21576
  min,
21501
21577
  max,
@@ -21526,11 +21602,11 @@ function useProgress(namespace = "v0:progress") {
21526
21602
  //#endregion
21527
21603
  //#region src/components/Progress/ProgressRoot.vue
21528
21604
  const [useProgressRoot, provideProgressRoot] = createContext();
21529
- const _sfc_main$126 = /* @__PURE__ */ defineComponent({
21605
+ const _sfc_main$126 = /*@__PURE__*/ defineComponent({
21530
21606
  name: "ProgressRoot",
21531
21607
  inheritAttrs: false,
21532
21608
  __name: "ProgressRoot",
21533
- props: /* @__PURE__ */ mergeModels({
21609
+ props: /*@__PURE__*/ mergeModels({
21534
21610
  id: { default: () => /* @__PURE__ */ useId() },
21535
21611
  ariaLabel: {},
21536
21612
  modelValue: {},
@@ -21548,7 +21624,6 @@ const _sfc_main$126 = /* @__PURE__ */ defineComponent({
21548
21624
  setup(__props) {
21549
21625
  const attrs = useAttrs();
21550
21626
  const model = useModel(__props, "modelValue");
21551
- const scalar = !/* @__PURE__ */ isArray(model.value) && !/* @__PURE__ */ isNullOrUndefined(model.value);
21552
21627
  const internal = computed({
21553
21628
  get: () => {
21554
21629
  if (/* @__PURE__ */ isNullOrUndefined(model.value)) return [];
@@ -21557,8 +21632,8 @@ const _sfc_main$126 = /* @__PURE__ */ defineComponent({
21557
21632
  set: (arr) => {
21558
21633
  /* v8 ignore next -- defensive guard for null/undefined model with empty registry */
21559
21634
  if (/* @__PURE__ */ isNullOrUndefined(model.value) && arr.length === 0) return;
21560
- /* v8 ignore next -- arr[0] always defined when scalar=true since model started as a number */
21561
- model.value = scalar ? arr[0] ?? 0 : arr;
21635
+ /* v8 ignore next -- arr[0] is defined once a fill has registered a value */
21636
+ model.value = /* @__PURE__ */ isArray(model.value) ? arr : arr[0] ?? 0;
21562
21637
  }
21563
21638
  });
21564
21639
  const progress = createProgress({
@@ -21613,7 +21688,7 @@ const _sfc_main$126 = /* @__PURE__ */ defineComponent({
21613
21688
  });
21614
21689
  //#endregion
21615
21690
  //#region src/components/Progress/ProgressBuffer.vue
21616
- const _sfc_main$122 = /* @__PURE__ */ defineComponent({
21691
+ const _sfc_main$122 = /*@__PURE__*/ defineComponent({
21617
21692
  name: "ProgressBuffer",
21618
21693
  inheritAttrs: false,
21619
21694
  __name: "ProgressBuffer",
@@ -21659,7 +21734,7 @@ const _sfc_main$122 = /* @__PURE__ */ defineComponent({
21659
21734
  });
21660
21735
  //#endregion
21661
21736
  //#region src/components/Progress/ProgressFill.vue
21662
- const _sfc_main$123 = /* @__PURE__ */ defineComponent({
21737
+ const _sfc_main$123 = /*@__PURE__*/ defineComponent({
21663
21738
  name: "ProgressFill",
21664
21739
  inheritAttrs: false,
21665
21740
  __name: "ProgressFill",
@@ -21679,16 +21754,19 @@ const _sfc_main$123 = /* @__PURE__ */ defineComponent({
21679
21754
  /* v8 ignore next -- defensive: registered ticket.value always coalesces to number via toRef getter above */
21680
21755
  const current = toRef(() => toValue(ticket.value) ?? 0);
21681
21756
  const percent = toRef(() => root.fromValue(current.value));
21682
- const slotProps = toRef(() => ({
21683
- value: current.value,
21684
- percent: percent.value,
21685
- index: ticket.index,
21686
- attrs: {
21687
- "data-index": ticket.index,
21688
- "data-state": root.isIndeterminate.value ? "indeterminate" : "determinate",
21689
- "style": { width: `${percent.value}%` }
21690
- }
21691
- }));
21757
+ const slotProps = toRef(() => {
21758
+ const indeterminate = root.isIndeterminate.value;
21759
+ return {
21760
+ value: current.value,
21761
+ percent: percent.value,
21762
+ index: ticket.index,
21763
+ attrs: {
21764
+ "data-index": ticket.index,
21765
+ "data-state": indeterminate ? "indeterminate" : "determinate",
21766
+ "style": indeterminate ? void 0 : { width: `${percent.value}%` }
21767
+ }
21768
+ };
21769
+ });
21692
21770
  return (_ctx, _cache) => {
21693
21771
  return openBlock(), createBlock(unref(_sfc_main$12), mergeProps(mergeProps(unref(attrs), slotProps.value.attrs), {
21694
21772
  as: __props.as,
@@ -21707,7 +21785,7 @@ const _sfc_main$123 = /* @__PURE__ */ defineComponent({
21707
21785
  });
21708
21786
  //#endregion
21709
21787
  //#region src/components/Progress/ProgressLabel.vue
21710
- const _sfc_main$125 = /* @__PURE__ */ defineComponent({
21788
+ const _sfc_main$125 = /*@__PURE__*/ defineComponent({
21711
21789
  name: "ProgressLabel",
21712
21790
  inheritAttrs: false,
21713
21791
  __name: "ProgressLabel",
@@ -21744,7 +21822,7 @@ const _sfc_main$125 = /* @__PURE__ */ defineComponent({
21744
21822
  });
21745
21823
  //#endregion
21746
21824
  //#region src/components/Progress/ProgressTrack.vue
21747
- const _sfc_main$127 = /* @__PURE__ */ defineComponent({
21825
+ const _sfc_main$127 = /*@__PURE__*/ defineComponent({
21748
21826
  name: "ProgressTrack",
21749
21827
  inheritAttrs: false,
21750
21828
  __name: "ProgressTrack",
@@ -21770,7 +21848,7 @@ const _sfc_main$127 = /* @__PURE__ */ defineComponent({
21770
21848
  });
21771
21849
  //#endregion
21772
21850
  //#region src/components/Progress/ProgressValue.vue
21773
- const _sfc_main$128 = /* @__PURE__ */ defineComponent({
21851
+ const _sfc_main$128 = /*@__PURE__*/ defineComponent({
21774
21852
  name: "ProgressValue",
21775
21853
  inheritAttrs: false,
21776
21854
  __name: "ProgressValue",
@@ -22009,10 +22087,10 @@ const Progress = {
22009
22087
  //#endregion
22010
22088
  //#region src/components/Radio/RadioGroup.vue
22011
22089
  const [useRadioGroup, provideRadioGroup] = createContext();
22012
- const _sfc_main$129 = /* @__PURE__ */ defineComponent({
22090
+ const _sfc_main$129 = /*@__PURE__*/ defineComponent({
22013
22091
  name: "RadioGroup",
22014
22092
  __name: "RadioGroup",
22015
- props: /* @__PURE__ */ mergeModels({
22093
+ props: /*@__PURE__*/ mergeModels({
22016
22094
  namespace: { default: "v0:radio:group" },
22017
22095
  disabled: {
22018
22096
  type: Boolean,
@@ -22034,7 +22112,7 @@ const _sfc_main$129 = /* @__PURE__ */ defineComponent({
22034
22112
  "modelValue": {},
22035
22113
  "modelModifiers": {}
22036
22114
  }),
22037
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
22115
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
22038
22116
  setup(__props) {
22039
22117
  const model = useModel(__props, "modelValue");
22040
22118
  const single = createSingle({
@@ -22074,7 +22152,7 @@ const _sfc_main$129 = /* @__PURE__ */ defineComponent({
22074
22152
  //#endregion
22075
22153
  //#region src/components/Radio/RadioRoot.vue
22076
22154
  const [useRadioRoot, provideRadioRoot] = createContext();
22077
- const _sfc_main$132 = /* @__PURE__ */ defineComponent({
22155
+ const _sfc_main$132 = /*@__PURE__*/ defineComponent({
22078
22156
  name: "RadioRoot",
22079
22157
  inheritAttrs: false,
22080
22158
  __name: "RadioRoot",
@@ -22216,7 +22294,7 @@ const visuallyHiddenStyle$3 = {
22216
22294
  whiteSpace: "nowrap",
22217
22295
  border: "0"
22218
22296
  };
22219
- const _sfc_main$130 = /* @__PURE__ */ defineComponent({
22297
+ const _sfc_main$130 = /*@__PURE__*/ defineComponent({
22220
22298
  name: "RadioHiddenInput",
22221
22299
  __name: "RadioHiddenInput",
22222
22300
  props: {
@@ -22253,7 +22331,7 @@ const _sfc_main$130 = /* @__PURE__ */ defineComponent({
22253
22331
  });
22254
22332
  //#endregion
22255
22333
  //#region src/components/Radio/RadioIndicator.vue
22256
- const _sfc_main$131 = /* @__PURE__ */ defineComponent({
22334
+ const _sfc_main$131 = /*@__PURE__*/ defineComponent({
22257
22335
  name: "RadioIndicator",
22258
22336
  __name: "RadioIndicator",
22259
22337
  props: {
@@ -22585,11 +22663,11 @@ function useRating(namespace = "v0:rating") {
22585
22663
  //#endregion
22586
22664
  //#region src/components/Rating/RatingRoot.vue
22587
22665
  const [useRatingRoot, provideRatingRoot] = createContext();
22588
- const _sfc_main$135 = /* @__PURE__ */ defineComponent({
22666
+ const _sfc_main$135 = /*@__PURE__*/ defineComponent({
22589
22667
  name: "RatingRoot",
22590
22668
  inheritAttrs: false,
22591
22669
  __name: "RatingRoot",
22592
- props: /* @__PURE__ */ mergeModels({
22670
+ props: /*@__PURE__*/ mergeModels({
22593
22671
  modelValue: {},
22594
22672
  size: { default: 5 },
22595
22673
  half: {
@@ -22693,7 +22771,7 @@ const _hoisted_1$3 = [
22693
22771
  "name",
22694
22772
  "value"
22695
22773
  ];
22696
- const _sfc_main$133 = /* @__PURE__ */ defineComponent({
22774
+ const _sfc_main$133 = /*@__PURE__*/ defineComponent({
22697
22775
  name: "RatingHiddenInput",
22698
22776
  __name: "RatingHiddenInput",
22699
22777
  props: { namespace: { default: "v0:rating:root" } },
@@ -22714,7 +22792,7 @@ const _sfc_main$133 = /* @__PURE__ */ defineComponent({
22714
22792
  });
22715
22793
  //#endregion
22716
22794
  //#region src/components/Rating/RatingItem.vue
22717
- const _sfc_main$134 = /* @__PURE__ */ defineComponent({
22795
+ const _sfc_main$134 = /*@__PURE__*/ defineComponent({
22718
22796
  name: "RatingItem",
22719
22797
  inheritAttrs: false,
22720
22798
  __name: "RatingItem",
@@ -22916,7 +22994,7 @@ const Rating = {
22916
22994
  };
22917
22995
  //#endregion
22918
22996
  //#region src/components/Scrim/Scrim.vue
22919
- const _sfc_main$136 = /* @__PURE__ */ defineComponent({
22997
+ const _sfc_main$136 = /*@__PURE__*/ defineComponent({
22920
22998
  name: "Scrim",
22921
22999
  inheritAttrs: false,
22922
23000
  __name: "Scrim",
@@ -23005,7 +23083,7 @@ const visuallyHiddenStyle$2 = {
23005
23083
  whiteSpace: "nowrap",
23006
23084
  border: "0"
23007
23085
  };
23008
- const _sfc_main$191 = /* @__PURE__ */ defineComponent({
23086
+ const _sfc_main$191 = /*@__PURE__*/ defineComponent({
23009
23087
  name: "SelectHiddenInput",
23010
23088
  __name: "SelectHiddenInput",
23011
23089
  props: { namespace: { default: "v0:select" } },
@@ -23039,10 +23117,10 @@ const _sfc_main$191 = /* @__PURE__ */ defineComponent({
23039
23117
  //#endregion
23040
23118
  //#region src/components/Select/SelectRoot.vue
23041
23119
  const [useSelectContext, provideSelectContext] = createContext();
23042
- const _sfc_main$142 = /* @__PURE__ */ defineComponent({
23120
+ const _sfc_main$142 = /*@__PURE__*/ defineComponent({
23043
23121
  name: "SelectRoot",
23044
23122
  __name: "SelectRoot",
23045
- props: /* @__PURE__ */ mergeModels({
23123
+ props: /*@__PURE__*/ mergeModels({
23046
23124
  namespace: { default: "v0:select" },
23047
23125
  id: {},
23048
23126
  name: {},
@@ -23066,7 +23144,7 @@ const _sfc_main$142 = /* @__PURE__ */ defineComponent({
23066
23144
  "modelValue": {},
23067
23145
  "modelModifiers": {}
23068
23146
  }),
23069
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
23147
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
23070
23148
  setup(__props) {
23071
23149
  const model = useModel(__props, "modelValue");
23072
23150
  const id = __props.id ?? /* @__PURE__ */ useId();
@@ -23163,7 +23241,7 @@ const _sfc_main$142 = /* @__PURE__ */ defineComponent({
23163
23241
  });
23164
23242
  //#endregion
23165
23243
  //#region src/components/Select/SelectActivator.vue
23166
- const _sfc_main$137 = /* @__PURE__ */ defineComponent({
23244
+ const _sfc_main$137 = /*@__PURE__*/ defineComponent({
23167
23245
  name: "SelectActivator",
23168
23246
  __name: "SelectActivator",
23169
23247
  props: {
@@ -23198,9 +23276,7 @@ const _sfc_main$137 = /* @__PURE__ */ defineComponent({
23198
23276
  case "ArrowDown":
23199
23277
  case "ArrowUp":
23200
23278
  case "Home":
23201
- case "End":
23202
- context.virtualFocus.onKeydown(e);
23203
- break;
23279
+ case "End": context.virtualFocus.onKeydown(e);
23204
23280
  }
23205
23281
  else switch (e.key) {
23206
23282
  case " ":
@@ -23209,7 +23285,6 @@ const _sfc_main$137 = /* @__PURE__ */ defineComponent({
23209
23285
  case "ArrowUp":
23210
23286
  e.preventDefault();
23211
23287
  context.open();
23212
- break;
23213
23288
  }
23214
23289
  }
23215
23290
  const slotProps = toRef(() => ({
@@ -23246,7 +23321,7 @@ const _sfc_main$137 = /* @__PURE__ */ defineComponent({
23246
23321
  });
23247
23322
  //#endregion
23248
23323
  //#region src/components/Select/SelectContent.vue
23249
- const _sfc_main$138 = /* @__PURE__ */ defineComponent({
23324
+ const _sfc_main$138 = /*@__PURE__*/ defineComponent({
23250
23325
  name: "SelectContent",
23251
23326
  __name: "SelectContent",
23252
23327
  props: {
@@ -23282,7 +23357,7 @@ const _sfc_main$138 = /* @__PURE__ */ defineComponent({
23282
23357
  as: __props.as,
23283
23358
  renderless: __props.renderless
23284
23359
  }, slotProps.value.attrs), {
23285
- default: withCtx(() => [unref(hasContent) ? renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 0 }, slotProps.value))) : createCommentVNode("v-if", true)]),
23360
+ default: withCtx(() => [unref(hasContent) ? renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)), void 0, void 0, 0) : createCommentVNode("v-if", true)]),
23286
23361
  _: 3
23287
23362
  }, 16, ["as", "renderless"]);
23288
23363
  };
@@ -23290,7 +23365,7 @@ const _sfc_main$138 = /* @__PURE__ */ defineComponent({
23290
23365
  });
23291
23366
  //#endregion
23292
23367
  //#region src/components/Select/SelectCue.vue
23293
- const _sfc_main$139 = /* @__PURE__ */ defineComponent({
23368
+ const _sfc_main$139 = /*@__PURE__*/ defineComponent({
23294
23369
  name: "SelectCue",
23295
23370
  __name: "SelectCue",
23296
23371
  props: {
@@ -23320,7 +23395,7 @@ const _sfc_main$139 = /* @__PURE__ */ defineComponent({
23320
23395
  });
23321
23396
  //#endregion
23322
23397
  //#region src/components/Select/SelectItem.vue
23323
- const _sfc_main$140 = /* @__PURE__ */ defineComponent({
23398
+ const _sfc_main$140 = /*@__PURE__*/ defineComponent({
23324
23399
  name: "SelectItem",
23325
23400
  __name: "SelectItem",
23326
23401
  props: {
@@ -23379,7 +23454,7 @@ const _sfc_main$140 = /* @__PURE__ */ defineComponent({
23379
23454
  });
23380
23455
  //#endregion
23381
23456
  //#region src/components/Select/SelectPlaceholder.vue
23382
- const _sfc_main$141 = /* @__PURE__ */ defineComponent({
23457
+ const _sfc_main$141 = /*@__PURE__*/ defineComponent({
23383
23458
  name: "SelectPlaceholder",
23384
23459
  __name: "SelectPlaceholder",
23385
23460
  props: {
@@ -23404,7 +23479,7 @@ const _sfc_main$141 = /* @__PURE__ */ defineComponent({
23404
23479
  });
23405
23480
  //#endregion
23406
23481
  //#region src/components/Select/SelectValue.vue
23407
- const _sfc_main$143 = /* @__PURE__ */ defineComponent({
23482
+ const _sfc_main$143 = /*@__PURE__*/ defineComponent({
23408
23483
  name: "SelectValue",
23409
23484
  __name: "SelectValue",
23410
23485
  props: {
@@ -23633,10 +23708,10 @@ const Select = {
23633
23708
  //#endregion
23634
23709
  //#region src/components/Selection/SelectionRoot.vue
23635
23710
  const [useSelectionRoot, provideSelectionRoot] = createContext();
23636
- const _sfc_main$145 = /* @__PURE__ */ defineComponent({
23711
+ const _sfc_main$145 = /*@__PURE__*/ defineComponent({
23637
23712
  name: "SelectionRoot",
23638
23713
  __name: "SelectionRoot",
23639
- props: /* @__PURE__ */ mergeModels({
23714
+ props: /*@__PURE__*/ mergeModels({
23640
23715
  namespace: { default: "v0:selection" },
23641
23716
  disabled: {
23642
23717
  type: Boolean,
@@ -23658,7 +23733,7 @@ const _sfc_main$145 = /* @__PURE__ */ defineComponent({
23658
23733
  "modelValue": {},
23659
23734
  "modelModifiers": {}
23660
23735
  }),
23661
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
23736
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
23662
23737
  setup(__props) {
23663
23738
  const model = useModel(__props, "modelValue");
23664
23739
  const selection = createSelection({
@@ -23685,7 +23760,7 @@ const _sfc_main$145 = /* @__PURE__ */ defineComponent({
23685
23760
  });
23686
23761
  //#endregion
23687
23762
  //#region src/components/Selection/SelectionItem.vue
23688
- const _sfc_main$144 = /* @__PURE__ */ defineComponent({
23763
+ const _sfc_main$144 = /*@__PURE__*/ defineComponent({
23689
23764
  name: "SelectionItem",
23690
23765
  __name: "SelectionItem",
23691
23766
  props: {
@@ -23796,10 +23871,10 @@ const Selection = {
23796
23871
  //#endregion
23797
23872
  //#region src/components/Single/SingleRoot.vue
23798
23873
  const [useSingleRoot, provideSingleRoot] = createContext();
23799
- const _sfc_main$147 = /* @__PURE__ */ defineComponent({
23874
+ const _sfc_main$147 = /*@__PURE__*/ defineComponent({
23800
23875
  name: "SingleRoot",
23801
23876
  __name: "SingleRoot",
23802
- props: /* @__PURE__ */ mergeModels({
23877
+ props: /*@__PURE__*/ mergeModels({
23803
23878
  namespace: { default: "v0:single" },
23804
23879
  disabled: {
23805
23880
  type: Boolean,
@@ -23842,7 +23917,7 @@ const _sfc_main$147 = /* @__PURE__ */ defineComponent({
23842
23917
  });
23843
23918
  //#endregion
23844
23919
  //#region src/components/Single/SingleItem.vue
23845
- const _sfc_main$146 = /* @__PURE__ */ defineComponent({
23920
+ const _sfc_main$146 = /*@__PURE__*/ defineComponent({
23846
23921
  name: "SingleItem",
23847
23922
  __name: "SingleItem",
23848
23923
  props: {
@@ -24152,11 +24227,11 @@ function createSlider(options = {}) {
24152
24227
  //#endregion
24153
24228
  //#region src/components/Slider/SliderRoot.vue
24154
24229
  const [useSliderRoot, provideSliderRoot] = createContext();
24155
- const _sfc_main$150 = /* @__PURE__ */ defineComponent({
24230
+ const _sfc_main$150 = /*@__PURE__*/ defineComponent({
24156
24231
  name: "SliderRoot",
24157
24232
  inheritAttrs: false,
24158
24233
  __name: "SliderRoot",
24159
- props: /* @__PURE__ */ mergeModels({
24234
+ props: /*@__PURE__*/ mergeModels({
24160
24235
  id: { default: () => /* @__PURE__ */ useId() },
24161
24236
  min: { default: 0 },
24162
24237
  max: { default: 100 },
@@ -24184,7 +24259,7 @@ const _sfc_main$150 = /* @__PURE__ */ defineComponent({
24184
24259
  "modelValue": { default: () => [] },
24185
24260
  "modelModifiers": {}
24186
24261
  }),
24187
- emits: /* @__PURE__ */ mergeModels([
24262
+ emits: /*@__PURE__*/ mergeModels([
24188
24263
  "update:model-value",
24189
24264
  "start",
24190
24265
  "end"
@@ -24249,7 +24324,8 @@ const _sfc_main$150 = /* @__PURE__ */ defineComponent({
24249
24324
  event.preventDefault();
24250
24325
  if (thumbEl) {
24251
24326
  const rect = thumbEl.getBoundingClientRect();
24252
- dragOffset.value = toValue(slider.orientation) === "vertical" ? event.clientY - (rect.top + rect.height / 2) : event.clientX - (rect.left + rect.width / 2);
24327
+ const isVertical = toValue(slider.orientation) === "vertical";
24328
+ dragOffset.value = isVertical ? event.clientY - (rect.top + rect.height / 2) : event.clientX - (rect.left + rect.width / 2);
24253
24329
  } else dragOffset.value = 0;
24254
24330
  dragging.value = index;
24255
24331
  const values = [...slider.values.value];
@@ -24317,7 +24393,7 @@ const _hoisted_1$1 = [
24317
24393
  "name",
24318
24394
  "value"
24319
24395
  ];
24320
- const _sfc_main$148 = /* @__PURE__ */ defineComponent({
24396
+ const _sfc_main$148 = /*@__PURE__*/ defineComponent({
24321
24397
  name: "SliderHiddenInput",
24322
24398
  __name: "SliderHiddenInput",
24323
24399
  props: {
@@ -24342,7 +24418,7 @@ const _sfc_main$148 = /* @__PURE__ */ defineComponent({
24342
24418
  });
24343
24419
  //#endregion
24344
24420
  //#region src/components/Slider/SliderRange.vue
24345
- const _sfc_main$149 = /* @__PURE__ */ defineComponent({
24421
+ const _sfc_main$149 = /*@__PURE__*/ defineComponent({
24346
24422
  name: "SliderRange",
24347
24423
  inheritAttrs: false,
24348
24424
  __name: "SliderRange",
@@ -24400,7 +24476,7 @@ const _sfc_main$149 = /* @__PURE__ */ defineComponent({
24400
24476
  });
24401
24477
  //#endregion
24402
24478
  //#region src/components/Slider/SliderThumb.vue
24403
- const _sfc_main$151 = /* @__PURE__ */ defineComponent({
24479
+ const _sfc_main$151 = /*@__PURE__*/ defineComponent({
24404
24480
  name: "SliderThumb",
24405
24481
  inheritAttrs: false,
24406
24482
  __name: "SliderThumb",
@@ -24457,7 +24533,8 @@ const _sfc_main$151 = /* @__PURE__ */ defineComponent({
24457
24533
  if (e.shiftKey && e.key.startsWith("Arrow")) {
24458
24534
  e.preventDefault();
24459
24535
  const base = e.key === "ArrowRight" || e.key === "ArrowUp" ? "up" : "down";
24460
- root[(e.key === "ArrowRight" || e.key === "ArrowLeft") && isInverted ? base === "up" ? "down" : "up" : base](index.value, 10);
24536
+ const method = (e.key === "ArrowRight" || e.key === "ArrowLeft") && isInverted ? base === "up" ? "down" : "up" : base;
24537
+ root[method](index.value, 10);
24461
24538
  return;
24462
24539
  }
24463
24540
  const action = actions[e.key];
@@ -24512,7 +24589,7 @@ const _sfc_main$151 = /* @__PURE__ */ defineComponent({
24512
24589
  });
24513
24590
  //#endregion
24514
24591
  //#region src/components/Slider/SliderTrack.vue
24515
- const _sfc_main$152 = /* @__PURE__ */ defineComponent({
24592
+ const _sfc_main$152 = /*@__PURE__*/ defineComponent({
24516
24593
  name: "SliderTrack",
24517
24594
  inheritAttrs: false,
24518
24595
  __name: "SliderTrack",
@@ -24733,7 +24810,7 @@ const visuallyHiddenStyle$1 = {
24733
24810
  whiteSpace: "nowrap",
24734
24811
  border: "0"
24735
24812
  };
24736
- const _sfc_main$153 = /* @__PURE__ */ defineComponent({
24813
+ const _sfc_main$153 = /*@__PURE__*/ defineComponent({
24737
24814
  name: "SnackbarAnnouncer",
24738
24815
  __name: "SnackbarAnnouncer",
24739
24816
  props: { namespace: { default: "v0:notifications" } },
@@ -24759,7 +24836,7 @@ const _sfc_main$153 = /* @__PURE__ */ defineComponent({
24759
24836
  //#endregion
24760
24837
  //#region src/components/Snackbar/SnackbarPortal.vue
24761
24838
  const [usePortal, providePortal] = createContext({ suffix: "portal" });
24762
- const _sfc_main$156 = /* @__PURE__ */ defineComponent({
24839
+ const _sfc_main$156 = /*@__PURE__*/ defineComponent({
24763
24840
  name: "SnackbarPortal",
24764
24841
  inheritAttrs: false,
24765
24842
  __name: "SnackbarPortal",
@@ -24814,7 +24891,8 @@ const _sfc_main$156 = /* @__PURE__ */ defineComponent({
24814
24891
  };
24815
24892
  }
24816
24893
  const atomRef = useTemplateRef("atom");
24817
- watch(toRef(() => /* @__PURE__ */ toElement(atomRef.value?.element) ?? null), (value) => {
24894
+ const el = toRef(() => /* @__PURE__ */ toElement(atomRef.value?.element) ?? null);
24895
+ watch(el, (value) => {
24818
24896
  if (!IN_BROWSER || /* @__PURE__ */ isNull(value)) return;
24819
24897
  const element = value;
24820
24898
  if (getComputedStyle(element).position === "static") element.style.position = "relative";
@@ -25627,7 +25705,7 @@ const [createNotificationsContext, createNotificationsPlugin, useNotifications]
25627
25705
  //#endregion
25628
25706
  //#region src/components/Snackbar/SnackbarQueue.vue
25629
25707
  const [useSnackbarQueueContext, provideSnackbarQueueContext] = createContext({ suffix: "queue" });
25630
- const _sfc_main$157 = /* @__PURE__ */ defineComponent({
25708
+ const _sfc_main$157 = /*@__PURE__*/ defineComponent({
25631
25709
  name: "SnackbarQueue",
25632
25710
  __name: "SnackbarQueue",
25633
25711
  props: {
@@ -25698,7 +25776,7 @@ const _sfc_main$157 = /* @__PURE__ */ defineComponent({
25698
25776
  //#endregion
25699
25777
  //#region src/components/Snackbar/SnackbarRoot.vue
25700
25778
  const [useSnackbarRootContext, provideSnackbarRootContext] = createContext({ suffix: "root" });
25701
- const _sfc_main$158 = /* @__PURE__ */ defineComponent({
25779
+ const _sfc_main$158 = /*@__PURE__*/ defineComponent({
25702
25780
  name: "SnackbarRoot",
25703
25781
  __name: "SnackbarRoot",
25704
25782
  props: {
@@ -25747,7 +25825,7 @@ const _sfc_main$158 = /* @__PURE__ */ defineComponent({
25747
25825
  });
25748
25826
  //#endregion
25749
25827
  //#region src/components/Snackbar/SnackbarContent.vue
25750
- const _sfc_main$155 = /* @__PURE__ */ defineComponent({
25828
+ const _sfc_main$155 = /*@__PURE__*/ defineComponent({
25751
25829
  name: "SnackbarContent",
25752
25830
  __name: "SnackbarContent",
25753
25831
  props: {
@@ -25768,7 +25846,7 @@ const _sfc_main$155 = /* @__PURE__ */ defineComponent({
25768
25846
  });
25769
25847
  //#endregion
25770
25848
  //#region src/components/Snackbar/SnackbarClose.vue
25771
- const _sfc_main$154 = /* @__PURE__ */ defineComponent({
25849
+ const _sfc_main$154 = /*@__PURE__*/ defineComponent({
25772
25850
  name: "SnackbarClose",
25773
25851
  __name: "SnackbarClose",
25774
25852
  props: {
@@ -25972,10 +26050,10 @@ const Snackbar = {
25972
26050
  //#endregion
25973
26051
  //#region src/components/Step/StepRoot.vue
25974
26052
  const [useStepRoot, provideStepRoot] = createContext();
25975
- const _sfc_main$163 = /* @__PURE__ */ defineComponent({
26053
+ const _sfc_main$163 = /*@__PURE__*/ defineComponent({
25976
26054
  name: "StepRoot",
25977
26055
  __name: "StepRoot",
25978
- props: /* @__PURE__ */ mergeModels({
26056
+ props: /*@__PURE__*/ mergeModels({
25979
26057
  namespace: { default: "v0:step" },
25980
26058
  disabled: {
25981
26059
  type: Boolean,
@@ -26023,7 +26101,7 @@ const _sfc_main$163 = /* @__PURE__ */ defineComponent({
26023
26101
  });
26024
26102
  //#endregion
26025
26103
  //#region src/components/Step/StepItem.vue
26026
- const _sfc_main$162 = /* @__PURE__ */ defineComponent({
26104
+ const _sfc_main$162 = /*@__PURE__*/ defineComponent({
26027
26105
  name: "StepItem",
26028
26106
  __name: "StepItem",
26029
26107
  props: {
@@ -26132,10 +26210,10 @@ const Step = {
26132
26210
  //#endregion
26133
26211
  //#region src/components/Switch/SwitchGroup.vue
26134
26212
  const [useSwitchGroup, provideSwitchGroup] = createContext();
26135
- const _sfc_main$164 = /* @__PURE__ */ defineComponent({
26213
+ const _sfc_main$164 = /*@__PURE__*/ defineComponent({
26136
26214
  name: "SwitchGroup",
26137
26215
  __name: "SwitchGroup",
26138
- props: /* @__PURE__ */ mergeModels({
26216
+ props: /*@__PURE__*/ mergeModels({
26139
26217
  namespace: { default: "v0:switch:group" },
26140
26218
  disabled: {
26141
26219
  type: Boolean,
@@ -26158,7 +26236,7 @@ const _sfc_main$164 = /* @__PURE__ */ defineComponent({
26158
26236
  "modelValue": {},
26159
26237
  "modelModifiers": {}
26160
26238
  }),
26161
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
26239
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
26162
26240
  setup(__props) {
26163
26241
  const model = useModel(__props, "modelValue");
26164
26242
  const group = createGroup({
@@ -26201,11 +26279,11 @@ const _sfc_main$164 = /* @__PURE__ */ defineComponent({
26201
26279
  //#endregion
26202
26280
  //#region src/components/Switch/SwitchRoot.vue
26203
26281
  const [useSwitchRoot, provideSwitchRoot] = createContext();
26204
- const _sfc_main$166 = /* @__PURE__ */ defineComponent({
26282
+ const _sfc_main$166 = /*@__PURE__*/ defineComponent({
26205
26283
  name: "SwitchRoot",
26206
26284
  inheritAttrs: false,
26207
26285
  __name: "SwitchRoot",
26208
- props: /* @__PURE__ */ mergeModels({
26286
+ props: /*@__PURE__*/ mergeModels({
26209
26287
  id: { default: () => /* @__PURE__ */ useId() },
26210
26288
  label: {},
26211
26289
  value: {},
@@ -26224,7 +26302,7 @@ const _sfc_main$166 = /* @__PURE__ */ defineComponent({
26224
26302
  "modelValue": { type: Boolean },
26225
26303
  "modelModifiers": {}
26226
26304
  }),
26227
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
26305
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
26228
26306
  setup(__props) {
26229
26307
  const attrs = useAttrs();
26230
26308
  let group = null;
@@ -26352,7 +26430,7 @@ const visuallyHiddenStyle = {
26352
26430
  whiteSpace: "nowrap",
26353
26431
  border: "0"
26354
26432
  };
26355
- const _sfc_main$165 = /* @__PURE__ */ defineComponent({
26433
+ const _sfc_main$165 = /*@__PURE__*/ defineComponent({
26356
26434
  name: "SwitchHiddenInput",
26357
26435
  __name: "SwitchHiddenInput",
26358
26436
  props: {
@@ -26390,7 +26468,7 @@ const _sfc_main$165 = /* @__PURE__ */ defineComponent({
26390
26468
  });
26391
26469
  //#endregion
26392
26470
  //#region src/components/Switch/SwitchSelectAll.vue
26393
- const _sfc_main$167 = /* @__PURE__ */ defineComponent({
26471
+ const _sfc_main$167 = /*@__PURE__*/ defineComponent({
26394
26472
  name: "SwitchSelectAll",
26395
26473
  inheritAttrs: false,
26396
26474
  __name: "SwitchSelectAll",
@@ -26474,7 +26552,7 @@ const _sfc_main$167 = /* @__PURE__ */ defineComponent({
26474
26552
  });
26475
26553
  //#endregion
26476
26554
  //#region src/components/Switch/SwitchThumb.vue
26477
- const _sfc_main$168 = /* @__PURE__ */ defineComponent({
26555
+ const _sfc_main$168 = /*@__PURE__*/ defineComponent({
26478
26556
  name: "SwitchThumb",
26479
26557
  __name: "SwitchThumb",
26480
26558
  props: {
@@ -26508,7 +26586,7 @@ const _sfc_main$168 = /* @__PURE__ */ defineComponent({
26508
26586
  });
26509
26587
  //#endregion
26510
26588
  //#region src/components/Switch/SwitchTrack.vue
26511
- const _sfc_main$169 = /* @__PURE__ */ defineComponent({
26589
+ const _sfc_main$169 = /*@__PURE__*/ defineComponent({
26512
26590
  name: "SwitchTrack",
26513
26591
  __name: "SwitchTrack",
26514
26592
  props: {
@@ -26737,10 +26815,10 @@ const Switch = {
26737
26815
  //#endregion
26738
26816
  //#region src/components/Tabs/TabsRoot.vue
26739
26817
  const [useTabsRoot, provideTabsRoot] = createContext();
26740
- const _sfc_main$173 = /* @__PURE__ */ defineComponent({
26818
+ const _sfc_main$173 = /*@__PURE__*/ defineComponent({
26741
26819
  name: "TabsRoot",
26742
26820
  __name: "TabsRoot",
26743
- props: /* @__PURE__ */ mergeModels({
26821
+ props: /*@__PURE__*/ mergeModels({
26744
26822
  namespace: { default: "v0:tabs" },
26745
26823
  disabled: {
26746
26824
  type: Boolean,
@@ -26764,7 +26842,7 @@ const _sfc_main$173 = /* @__PURE__ */ defineComponent({
26764
26842
  "modelValue": {},
26765
26843
  "modelModifiers": {}
26766
26844
  }),
26767
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
26845
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
26768
26846
  setup(__props) {
26769
26847
  const model = useModel(__props, "modelValue");
26770
26848
  const rootId = /* @__PURE__ */ useId();
@@ -26805,7 +26883,7 @@ const _sfc_main$173 = /* @__PURE__ */ defineComponent({
26805
26883
  });
26806
26884
  //#endregion
26807
26885
  //#region src/components/Tabs/TabsList.vue
26808
- const _sfc_main$171 = /* @__PURE__ */ defineComponent({
26886
+ const _sfc_main$171 = /*@__PURE__*/ defineComponent({
26809
26887
  name: "TabsList",
26810
26888
  inheritAttrs: false,
26811
26889
  __name: "TabsList",
@@ -26843,7 +26921,7 @@ const _sfc_main$171 = /* @__PURE__ */ defineComponent({
26843
26921
  });
26844
26922
  //#endregion
26845
26923
  //#region src/components/Tabs/TabsItem.vue
26846
- const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26924
+ const _sfc_main$170 = /*@__PURE__*/ defineComponent({
26847
26925
  name: "TabsItem",
26848
26926
  inheritAttrs: false,
26849
26927
  __name: "TabsItem",
@@ -26855,6 +26933,7 @@ const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26855
26933
  ariaLabel: {},
26856
26934
  ariaLabelledby: {},
26857
26935
  ariaDescribedby: {},
26936
+ el: {},
26858
26937
  as: { default: "button" },
26859
26938
  renderless: { type: Boolean }
26860
26939
  },
@@ -26862,7 +26941,7 @@ const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26862
26941
  const attrs = useAttrs();
26863
26942
  const rootRef = useTemplateRef("root");
26864
26943
  const tabs = useTabsRoot(__props.namespace);
26865
- const el = toRef(() => /* @__PURE__ */ toElement(rootRef.value?.element) ?? void 0);
26944
+ const el = toRef(() => /* @__PURE__ */ toElement(__props.el) ?? /* @__PURE__ */ toElement(rootRef.value?.element) ?? void 0);
26866
26945
  const ticket = tabs.register({
26867
26946
  id: __props.id,
26868
26947
  value: __props.value,
@@ -26878,7 +26957,7 @@ const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26878
26957
  function focusSelectedTab() {
26879
26958
  nextTick(() => {
26880
26959
  const selected = tabs.selectedItem.value;
26881
- if (selected) toValue(selected.el)?.focus();
26960
+ if (selected) (/* @__PURE__ */ toElement(selected.el))?.focus();
26882
26961
  });
26883
26962
  }
26884
26963
  function focusAdjacent(direction) {
@@ -26893,7 +26972,7 @@ const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26893
26972
  else if (index < 0 || index >= length) return;
26894
26973
  const item = all[index];
26895
26974
  if (item && !toValue(item.disabled)) {
26896
- nextTick(() => toValue(item.el)?.focus());
26975
+ nextTick(() => (/* @__PURE__ */ toElement(item.el))?.focus());
26897
26976
  return;
26898
26977
  }
26899
26978
  index += direction;
@@ -26902,7 +26981,7 @@ const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26902
26981
  }
26903
26982
  function focusEdge(edge) {
26904
26983
  const item = tabs.seek(edge);
26905
- if (item) nextTick(() => toValue(item.el)?.focus());
26984
+ if (item) nextTick(() => (/* @__PURE__ */ toElement(item.el))?.focus());
26906
26985
  }
26907
26986
  function onKeydown(e) {
26908
26987
  const isHorizontal = tabs.orientation.value === "horizontal";
@@ -26991,7 +27070,7 @@ const _sfc_main$170 = /* @__PURE__ */ defineComponent({
26991
27070
  });
26992
27071
  //#endregion
26993
27072
  //#region src/components/Tabs/TabsPanel.vue
26994
- const _sfc_main$172 = /* @__PURE__ */ defineComponent({
27073
+ const _sfc_main$172 = /*@__PURE__*/ defineComponent({
26995
27074
  name: "TabsPanel",
26996
27075
  inheritAttrs: false,
26997
27076
  __name: "TabsPanel",
@@ -27250,7 +27329,7 @@ var ThemeAdapter = class ThemeAdapter {
27250
27329
  if (!themeColors) continue;
27251
27330
  if (!ThemeAdapter.SAFE_IDENT.test(theme)) continue;
27252
27331
  const vars = Object.entries(themeColors).filter(([key, val]) => ThemeAdapter.SAFE_IDENT.test(key) && !ThemeAdapter.UNSAFE_CSS.test(val)).map(([key, val]) => ` --${this.prefix}-${key}: ${this.rgb ? this.decompose(val) : val};`).join("\n");
27253
- css += `[data-theme="${theme}"] {\n${vars}\n color: var(--${this.prefix}-on-background);\n}\n`;
27332
+ css += `[data-theme="${theme}"] {\n${vars}\n}\n`;
27254
27333
  }
27255
27334
  if (!/* @__PURE__ */ isUndefined(isDark)) css += `:root {\n color-scheme: ${isDark ? "dark" : "light"};\n}\n`;
27256
27335
  return css;
@@ -27650,7 +27729,7 @@ const [createThemeContext, createThemePlugin, useTheme] = createPluginContext("v
27650
27729
  });
27651
27730
  //#endregion
27652
27731
  //#region src/components/Theme/Theme.vue
27653
- const _sfc_main$174 = /* @__PURE__ */ defineComponent({
27732
+ const _sfc_main$174 = /*@__PURE__*/ defineComponent({
27654
27733
  name: "Theme",
27655
27734
  inheritAttrs: false,
27656
27735
  __name: "Theme",
@@ -27710,10 +27789,10 @@ const _sfc_main$174 = /* @__PURE__ */ defineComponent({
27710
27789
  //#endregion
27711
27790
  //#region src/components/Toggle/ToggleGroup.vue
27712
27791
  const [useToggleGroup, provideToggleGroup] = createContext();
27713
- const _sfc_main$175 = /* @__PURE__ */ defineComponent({
27792
+ const _sfc_main$175 = /*@__PURE__*/ defineComponent({
27714
27793
  name: "ToggleGroup",
27715
27794
  __name: "ToggleGroup",
27716
- props: /* @__PURE__ */ mergeModels({
27795
+ props: /*@__PURE__*/ mergeModels({
27717
27796
  namespace: { default: "v0:toggle:group" },
27718
27797
  disabled: {
27719
27798
  type: Boolean,
@@ -27737,7 +27816,7 @@ const _sfc_main$175 = /* @__PURE__ */ defineComponent({
27737
27816
  "modelValue": {},
27738
27817
  "modelModifiers": {}
27739
27818
  }),
27740
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
27819
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
27741
27820
  setup(__props) {
27742
27821
  const model = useModel(__props, "modelValue");
27743
27822
  const selection = __props.multiple ? createGroup({
@@ -27782,11 +27861,11 @@ const _sfc_main$175 = /* @__PURE__ */ defineComponent({
27782
27861
  //#endregion
27783
27862
  //#region src/components/Toggle/ToggleRoot.vue
27784
27863
  const [useToggleRoot, provideToggleRoot] = createContext();
27785
- const _sfc_main$177 = /* @__PURE__ */ defineComponent({
27864
+ const _sfc_main$177 = /*@__PURE__*/ defineComponent({
27786
27865
  name: "ToggleRoot",
27787
27866
  inheritAttrs: false,
27788
27867
  __name: "ToggleRoot",
27789
- props: /* @__PURE__ */ mergeModels({
27868
+ props: /*@__PURE__*/ mergeModels({
27790
27869
  id: { default: () => /* @__PURE__ */ useId() },
27791
27870
  value: {},
27792
27871
  disabled: {
@@ -27801,7 +27880,7 @@ const _sfc_main$177 = /* @__PURE__ */ defineComponent({
27801
27880
  "modelValue": { type: Boolean },
27802
27881
  "modelModifiers": {}
27803
27882
  }),
27804
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
27883
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
27805
27884
  setup(__props) {
27806
27885
  const attrs = useAttrs();
27807
27886
  let group = null;
@@ -27853,7 +27932,8 @@ const _sfc_main$177 = /* @__PURE__ */ defineComponent({
27853
27932
  "type": __props.as === "button" ? "button" : void 0,
27854
27933
  "role": __props.as === "button" ? void 0 : "button",
27855
27934
  "aria-pressed": isPressed.value,
27856
- "aria-disabled": isDisabled.value,
27935
+ "aria-disabled": __props.as === "button" ? void 0 : isDisabled.value,
27936
+ "disabled": __props.as === "button" ? isDisabled.value : void 0,
27857
27937
  "tabindex": isDisabled.value ? -1 : 0,
27858
27938
  "data-state": isPressed.value ? "on" : "off",
27859
27939
  "data-disabled": isDisabled.value ? true : void 0,
@@ -27874,7 +27954,7 @@ const _sfc_main$177 = /* @__PURE__ */ defineComponent({
27874
27954
  });
27875
27955
  //#endregion
27876
27956
  //#region src/components/Toggle/ToggleIndicator.vue
27877
- const _sfc_main$176 = /* @__PURE__ */ defineComponent({
27957
+ const _sfc_main$176 = /*@__PURE__*/ defineComponent({
27878
27958
  name: "ToggleIndicator",
27879
27959
  __name: "ToggleIndicator",
27880
27960
  props: {
@@ -28071,10 +28151,10 @@ const [createTooltipContext, createTooltipPlugin, useTooltip] = createPluginCont
28071
28151
  //#endregion
28072
28152
  //#region src/components/Tooltip/TooltipRoot.vue
28073
28153
  const [useTooltipRoot, provideTooltipRoot] = createContext({ suffix: "root" });
28074
- const _sfc_main$180 = /* @__PURE__ */ defineComponent({
28154
+ const _sfc_main$180 = /*@__PURE__*/ defineComponent({
28075
28155
  name: "TooltipRoot",
28076
28156
  __name: "TooltipRoot",
28077
- props: /* @__PURE__ */ mergeModels({
28157
+ props: /*@__PURE__*/ mergeModels({
28078
28158
  openDelay: {},
28079
28159
  closeDelay: {},
28080
28160
  disabled: {
@@ -28098,7 +28178,7 @@ const _sfc_main$180 = /* @__PURE__ */ defineComponent({
28098
28178
  },
28099
28179
  "modelModifiers": {}
28100
28180
  }),
28101
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
28181
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
28102
28182
  setup(__props) {
28103
28183
  const isOpen = useModel(__props, "modelValue");
28104
28184
  const region = useTooltip();
@@ -28178,7 +28258,7 @@ const _sfc_main$180 = /* @__PURE__ */ defineComponent({
28178
28258
  });
28179
28259
  //#endregion
28180
28260
  //#region src/components/Tooltip/TooltipActivator.vue
28181
- const _sfc_main$178 = /* @__PURE__ */ defineComponent({
28261
+ const _sfc_main$178 = /*@__PURE__*/ defineComponent({
28182
28262
  name: "TooltipActivator",
28183
28263
  inheritAttrs: false,
28184
28264
  __name: "TooltipActivator",
@@ -28253,7 +28333,7 @@ const _sfc_main$178 = /* @__PURE__ */ defineComponent({
28253
28333
  });
28254
28334
  //#endregion
28255
28335
  //#region src/components/Tooltip/TooltipContent.vue
28256
- const _sfc_main$179 = /* @__PURE__ */ defineComponent({
28336
+ const _sfc_main$179 = /*@__PURE__*/ defineComponent({
28257
28337
  name: "TooltipContent",
28258
28338
  inheritAttrs: false,
28259
28339
  __name: "TooltipContent",
@@ -28484,7 +28564,7 @@ function createNested(_options = {}) {
28484
28564
  }
28485
28565
  if (revealOnOpen) {
28486
28566
  let parentId = parents.get(id);
28487
- const visited = new Set([id]);
28567
+ const visited = /* @__PURE__ */ new Set([id]);
28488
28568
  while (!/* @__PURE__ */ isUndefined(parentId)) {
28489
28569
  if (visited.has(parentId)) {
28490
28570
  logger.warn(`Circular parent reference detected at "${parentId}".`);
@@ -28605,7 +28685,7 @@ function createNested(_options = {}) {
28605
28685
  const initial = children.get(id);
28606
28686
  if (!initial) return descendants;
28607
28687
  const queue = initial.slice();
28608
- const visited = new Set([id]);
28688
+ const visited = /* @__PURE__ */ new Set([id]);
28609
28689
  let index = 0;
28610
28690
  while (index < queue.length) {
28611
28691
  const currentId = queue[index++];
@@ -28635,7 +28715,7 @@ function createNested(_options = {}) {
28635
28715
  if (!group.has(ancestorId) || !group.has(descendantId)) return false;
28636
28716
  if (ancestorId === descendantId) return false;
28637
28717
  let currentId = parents.get(descendantId);
28638
- const visited = new Set([descendantId]);
28718
+ const visited = /* @__PURE__ */ new Set([descendantId]);
28639
28719
  while (!/* @__PURE__ */ isUndefined(currentId)) {
28640
28720
  if (currentId === ancestorId) return true;
28641
28721
  if (visited.has(currentId)) {
@@ -28703,7 +28783,7 @@ function createNested(_options = {}) {
28703
28783
  function updateAncestors(id) {
28704
28784
  const { selectedIds, mixedIds } = group;
28705
28785
  let parentId = parents.get(id);
28706
- const visited = new Set([id]);
28786
+ const visited = /* @__PURE__ */ new Set([id]);
28707
28787
  while (!/* @__PURE__ */ isUndefined(parentId)) {
28708
28788
  if (visited.has(parentId)) {
28709
28789
  logger.warn(`Circular parent reference detected at "${parentId}".`);
@@ -28748,13 +28828,14 @@ function createNested(_options = {}) {
28748
28828
  function select(ids) {
28749
28829
  if (toValue(group.disabled)) return;
28750
28830
  for (const id of /* @__PURE__ */ toArray(ids)) if (selectionMode === "independent") group.select(id);
28751
- else if (selectionMode === "leaf") if (isLeaf(id)) group.select(id);
28752
- else {
28753
- const item = group.get(id);
28754
- if (!item || toValue(item.disabled)) continue;
28755
- for (const lid of getLeafDescendants(id)) group.select(lid);
28756
- }
28757
- else {
28831
+ else if (selectionMode === "leaf") {
28832
+ if (isLeaf(id)) group.select(id);
28833
+ else {
28834
+ const item = group.get(id);
28835
+ if (!item || toValue(item.disabled)) continue;
28836
+ for (const lid of getLeafDescendants(id)) group.select(lid);
28837
+ }
28838
+ } else {
28758
28839
  const item = group.get(id);
28759
28840
  if (!item || toValue(item.disabled)) continue;
28760
28841
  if (!toValue(multipleOption)) {
@@ -28785,7 +28866,7 @@ function createNested(_options = {}) {
28785
28866
  if (!item || toValue(item.disabled)) continue;
28786
28867
  const { selectedIds, mixedIds } = group;
28787
28868
  if (toValue(mandatoryOption)) {
28788
- const toRemove = new Set([id, ...getDescendants(id)]);
28869
+ const toRemove = /* @__PURE__ */ new Set([id, ...getDescendants(id)]);
28789
28870
  if ([...selectedIds].every((sid) => toRemove.has(sid))) return;
28790
28871
  }
28791
28872
  mixedIds.delete(id);
@@ -28800,15 +28881,16 @@ function createNested(_options = {}) {
28800
28881
  function toggle(ids) {
28801
28882
  if (toValue(group.disabled)) return;
28802
28883
  for (const id of /* @__PURE__ */ toArray(ids)) if (selectionMode === "independent") group.toggle(id);
28803
- else if (selectionMode === "leaf") if (isLeaf(id)) group.toggle(id);
28804
- else {
28805
- const item = group.get(id);
28806
- if (!item || toValue(item.disabled)) continue;
28807
- const leafIds = getLeafDescendants(id);
28808
- if (leafIds.every((lid) => group.selected(lid))) removeLeaves(leafIds);
28809
- else for (const lid of leafIds) group.select(lid);
28810
- }
28811
- else if (group.selected(id) || group.mixed(id)) unselect(id);
28884
+ else if (selectionMode === "leaf") {
28885
+ if (isLeaf(id)) group.toggle(id);
28886
+ else {
28887
+ const item = group.get(id);
28888
+ if (!item || toValue(item.disabled)) continue;
28889
+ const leafIds = getLeafDescendants(id);
28890
+ if (leafIds.every((lid) => group.selected(lid))) removeLeaves(leafIds);
28891
+ else for (const lid of leafIds) group.select(lid);
28892
+ }
28893
+ } else if (group.selected(id) || group.mixed(id)) unselect(id);
28812
28894
  else select(id);
28813
28895
  }
28814
28896
  function selectAll() {
@@ -28822,12 +28904,13 @@ function createNested(_options = {}) {
28822
28904
  }
28823
28905
  function unselectAll() {
28824
28906
  if (toValue(group.disabled)) return;
28825
- const first = group.selectedIds.values().next().value;
28826
28907
  group.selectedIds.clear();
28827
28908
  group.mixedIds.clear();
28828
- if (toValue(mandatoryOption) && first) {
28829
- group.selectedIds.add(first);
28830
- updateAncestors(first);
28909
+ if (!toValue(mandatoryOption)) return;
28910
+ const ticket = group.seek("first");
28911
+ if (ticket) {
28912
+ group.selectedIds.add(ticket.id);
28913
+ updateAncestors(ticket.id);
28831
28914
  }
28832
28915
  }
28833
28916
  function toggleAll() {
@@ -28901,6 +28984,7 @@ function createNested(_options = {}) {
28901
28984
  ticket.select = () => select(id);
28902
28985
  ticket.unselect = () => unselect(id);
28903
28986
  ticket.toggle = () => toggle(id);
28987
+ ticket.unregister = () => unregister(id);
28904
28988
  if (registration.active) activate(id);
28905
28989
  if (nested?.length) for (const child of nested) register({
28906
28990
  ...child,
@@ -28920,24 +29004,26 @@ function createNested(_options = {}) {
28920
29004
  }
28921
29005
  }
28922
29006
  const list = children.get(id);
28923
- if (list?.length) if (cascade) {
28924
- const descendantIds = getDescendants(id);
28925
- for (const did of descendantIds) {
28926
- parents.delete(did);
28927
- children.delete(did);
28928
- openedIds.delete(did);
28929
- activeIds.delete(did);
28930
- rootIds.delete(did);
28931
- }
28932
- group.offboard(descendantIds);
28933
- } else {
28934
- for (const did of getDescendants(id)) {
28935
- openedIds.delete(did);
28936
- activeIds.delete(did);
28937
- }
28938
- for (const cid of list) {
28939
- parents.set(cid, void 0);
28940
- rootIds.add(cid);
29007
+ if (list?.length) {
29008
+ if (cascade) {
29009
+ const descendantIds = getDescendants(id);
29010
+ for (const did of descendantIds) {
29011
+ parents.delete(did);
29012
+ children.delete(did);
29013
+ openedIds.delete(did);
29014
+ activeIds.delete(did);
29015
+ rootIds.delete(did);
29016
+ }
29017
+ group.offboard(descendantIds);
29018
+ } else {
29019
+ for (const did of getDescendants(id)) {
29020
+ openedIds.delete(did);
29021
+ activeIds.delete(did);
29022
+ }
29023
+ for (const cid of list) {
29024
+ parents.set(cid, void 0);
29025
+ rootIds.add(cid);
29026
+ }
28941
29027
  }
28942
29028
  }
28943
29029
  parents.delete(id);
@@ -28984,6 +29070,14 @@ function createNested(_options = {}) {
28984
29070
  rootIds.clear();
28985
29071
  group.reset();
28986
29072
  }
29073
+ function dispose() {
29074
+ children.clear();
29075
+ parents.clear();
29076
+ openedIds.clear();
29077
+ activeIds.clear();
29078
+ rootIds.clear();
29079
+ group.dispose();
29080
+ }
28987
29081
  return {
28988
29082
  ...group,
28989
29083
  children,
@@ -29032,6 +29126,7 @@ function createNested(_options = {}) {
29032
29126
  onboard,
29033
29127
  clear,
29034
29128
  reset,
29129
+ dispose,
29035
29130
  get size() {
29036
29131
  return group.size;
29037
29132
  }
@@ -29073,10 +29168,10 @@ function useNested(namespace = "v0:nested") {
29073
29168
  //#endregion
29074
29169
  //#region src/components/Treeview/TreeviewRoot.vue
29075
29170
  const [useTreeviewRoot, provideTreeviewRoot] = createContext();
29076
- const _sfc_main$189 = /* @__PURE__ */ defineComponent({
29171
+ const _sfc_main$189 = /*@__PURE__*/ defineComponent({
29077
29172
  name: "TreeviewRoot",
29078
29173
  __name: "TreeviewRoot",
29079
- props: /* @__PURE__ */ mergeModels({
29174
+ props: /*@__PURE__*/ mergeModels({
29080
29175
  namespace: { default: "v0:treeview" },
29081
29176
  disabled: {
29082
29177
  type: Boolean,
@@ -29109,7 +29204,7 @@ const _sfc_main$189 = /* @__PURE__ */ defineComponent({
29109
29204
  "modelValue": {},
29110
29205
  "modelModifiers": {}
29111
29206
  }),
29112
- emits: /* @__PURE__ */ mergeModels(["update:model-value"], ["update:modelValue"]),
29207
+ emits: /*@__PURE__*/ mergeModels(["update:model-value"], ["update:modelValue"]),
29113
29208
  setup(__props) {
29114
29209
  const model = useModel(__props, "modelValue");
29115
29210
  const nested = createNested({
@@ -29218,7 +29313,7 @@ function useRovingFocus(items, options = {}) {
29218
29313
  //#region src/components/Treeview/TreeviewList.vue
29219
29314
  const FOCUSABLE = "a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),[tabindex]";
29220
29315
  const [useTreeviewList, provideTreeviewList] = createContext({ suffix: "list" });
29221
- const _sfc_main$188 = /* @__PURE__ */ defineComponent({
29316
+ const _sfc_main$188 = /*@__PURE__*/ defineComponent({
29222
29317
  name: "TreeviewList",
29223
29318
  __name: "TreeviewList",
29224
29319
  props: {
@@ -29351,7 +29446,6 @@ const _sfc_main$188 = /* @__PURE__ */ defineComponent({
29351
29446
  const sibs = nested.siblings(ticket.id);
29352
29447
  for (const sibId of sibs) if (expandable(nested.get(sibId))) nested.open(sibId);
29353
29448
  }
29354
- break;
29355
29449
  }
29356
29450
  }
29357
29451
  const slotProps = toRef(() => ({ attrs: {
@@ -29376,7 +29470,7 @@ const _sfc_main$188 = /* @__PURE__ */ defineComponent({
29376
29470
  //#endregion
29377
29471
  //#region src/components/Treeview/TreeviewItem.vue
29378
29472
  const [useTreeviewItem, provideTreeviewItem] = createContext({ suffix: "item" });
29379
- const _sfc_main$187 = /* @__PURE__ */ defineComponent({
29473
+ const _sfc_main$187 = /*@__PURE__*/ defineComponent({
29380
29474
  name: "TreeviewItem",
29381
29475
  __name: "TreeviewItem",
29382
29476
  props: {
@@ -29456,7 +29550,7 @@ const _sfc_main$187 = /* @__PURE__ */ defineComponent({
29456
29550
  });
29457
29551
  //#endregion
29458
29552
  //#region src/components/Treeview/TreeviewActivator.vue
29459
- const _sfc_main$181 = /* @__PURE__ */ defineComponent({
29553
+ const _sfc_main$181 = /*@__PURE__*/ defineComponent({
29460
29554
  name: "TreeviewActivator",
29461
29555
  __name: "TreeviewActivator",
29462
29556
  props: {
@@ -29495,7 +29589,7 @@ const _sfc_main$181 = /* @__PURE__ */ defineComponent({
29495
29589
  });
29496
29590
  //#endregion
29497
29591
  //#region src/components/Treeview/TreeviewCheckbox.vue
29498
- const _sfc_main$182 = /* @__PURE__ */ defineComponent({
29592
+ const _sfc_main$182 = /*@__PURE__*/ defineComponent({
29499
29593
  name: "TreeviewCheckbox",
29500
29594
  __name: "TreeviewCheckbox",
29501
29595
  props: {
@@ -29536,7 +29630,7 @@ const _sfc_main$182 = /* @__PURE__ */ defineComponent({
29536
29630
  });
29537
29631
  //#endregion
29538
29632
  //#region src/components/Treeview/TreeviewContent.vue
29539
- const _sfc_main$183 = /* @__PURE__ */ defineComponent({
29633
+ const _sfc_main$183 = /*@__PURE__*/ defineComponent({
29540
29634
  name: "TreeviewContent",
29541
29635
  __name: "TreeviewContent",
29542
29636
  props: { namespace: { default: "v0:treeview" } },
@@ -29553,16 +29647,13 @@ const _sfc_main$183 = /* @__PURE__ */ defineComponent({
29553
29647
  item.hasContent.value = false;
29554
29648
  });
29555
29649
  return (_ctx, _cache) => {
29556
- return toValue(unref(item).ticket.isOpen) ? renderSlot(_ctx.$slots, "default", {
29557
- key: 0,
29558
- isOpen: toValue(unref(item).ticket.isOpen)
29559
- }) : createCommentVNode("v-if", true);
29650
+ return toValue(unref(item).ticket.isOpen) ? renderSlot(_ctx.$slots, "default", { isOpen: toValue(unref(item).ticket.isOpen) }, void 0, void 0, 0) : createCommentVNode("v-if", true);
29560
29651
  };
29561
29652
  }
29562
29653
  });
29563
29654
  //#endregion
29564
29655
  //#region src/components/Treeview/TreeviewCue.vue
29565
- const _sfc_main$184 = /* @__PURE__ */ defineComponent({
29656
+ const _sfc_main$184 = /*@__PURE__*/ defineComponent({
29566
29657
  name: "TreeviewCue",
29567
29658
  __name: "TreeviewCue",
29568
29659
  props: {
@@ -29596,7 +29687,7 @@ const _sfc_main$184 = /* @__PURE__ */ defineComponent({
29596
29687
  });
29597
29688
  //#endregion
29598
29689
  //#region src/components/Treeview/TreeviewGroup.vue
29599
- const _sfc_main$185 = /* @__PURE__ */ defineComponent({
29690
+ const _sfc_main$185 = /*@__PURE__*/ defineComponent({
29600
29691
  name: "TreeviewGroup",
29601
29692
  __name: "TreeviewGroup",
29602
29693
  props: {
@@ -29618,7 +29709,7 @@ const _sfc_main$185 = /* @__PURE__ */ defineComponent({
29618
29709
  });
29619
29710
  //#endregion
29620
29711
  //#region src/components/Treeview/TreeviewIndicator.vue
29621
- const _sfc_main$186 = /* @__PURE__ */ defineComponent({
29712
+ const _sfc_main$186 = /*@__PURE__*/ defineComponent({
29622
29713
  name: "TreeviewIndicator",
29623
29714
  __name: "TreeviewIndicator",
29624
29715
  props: {
@@ -29654,7 +29745,7 @@ const _sfc_main$186 = /* @__PURE__ */ defineComponent({
29654
29745
  });
29655
29746
  //#endregion
29656
29747
  //#region src/components/Treeview/TreeviewSelectAll.vue
29657
- const _sfc_main$190 = /* @__PURE__ */ defineComponent({
29748
+ const _sfc_main$190 = /*@__PURE__*/ defineComponent({
29658
29749
  name: "TreeviewSelectAll",
29659
29750
  __name: "TreeviewSelectAll",
29660
29751
  props: {
@@ -30934,7 +31025,7 @@ function find(text, query, options) {
30934
31025
  * // [{ text: 'Hello ', match: false }, { text: 'World', match: true }]
30935
31026
  * ```
30936
31027
  */
30937
- /* @__NO_SIDE_EFFECTS__ */
31028
+ /* #__NO_SIDE_EFFECTS__ */
30938
31029
  function toHighlight(text, query, options = {}) {
30939
31030
  const _text = toValue(text);
30940
31031
  const _query = toValue(query);
@@ -31063,7 +31154,7 @@ function createSetProxy(refObject) {
31063
31154
  return reactive(setProxy);
31064
31155
  }
31065
31156
  function createObjectProxy(refObject) {
31066
- return reactive(new Proxy({}, {
31157
+ const proxy = new Proxy({}, {
31067
31158
  get(_, p, receiver) {
31068
31159
  return unref(Reflect.get(refObject.value, p, receiver));
31069
31160
  },
@@ -31095,7 +31186,8 @@ function createObjectProxy(refObject) {
31095
31186
  }
31096
31187
  return newDesc;
31097
31188
  }
31098
- }));
31189
+ });
31190
+ return reactive(proxy);
31099
31191
  }
31100
31192
  /**
31101
31193
  * Converts a `MaybeRef` to a `UnwrapNestedRefs`.
@@ -31397,7 +31489,7 @@ function deriveMinimalDays(region) {
31397
31489
  * @param locale An Intl locale string (e.g. 'de-DE', 'en', 'ar-EG', 'en-u-fw-mon').
31398
31490
  * @returns firstDay in v0's 0=Sun...6=Sat convention, plus minimalDays.
31399
31491
  */
31400
- /* @__NO_SIDE_EFFECTS__ */
31492
+ /* #__NO_SIDE_EFFECTS__ */
31401
31493
  function deriveWeekInfo(locale) {
31402
31494
  const region = deriveRegion(locale);
31403
31495
  return {
@@ -31510,13 +31602,15 @@ function createDate(options) {
31510
31602
  const loc = locale.value;
31511
31603
  return loc ? (/* @__PURE__ */ deriveWeekInfo(loc)).firstDay : 0;
31512
31604
  });
31513
- if (hasInjectionContext()) onScopeDispose(watchEffect(() => {
31514
- const loc = locale.value;
31515
- if (loc && adapter.locale !== loc) adapter.locale = loc;
31516
- const fdow = firstDayOfWeek.value;
31517
- if (adapter.firstDayOfWeek !== fdow) adapter.firstDayOfWeek = fdow;
31518
- }), true);
31519
- else {
31605
+ if (hasInjectionContext()) {
31606
+ const stop = watchEffect(() => {
31607
+ const loc = locale.value;
31608
+ if (loc && adapter.locale !== loc) adapter.locale = loc;
31609
+ const fdow = firstDayOfWeek.value;
31610
+ if (adapter.firstDayOfWeek !== fdow) adapter.firstDayOfWeek = fdow;
31611
+ });
31612
+ onScopeDispose(stop, true);
31613
+ } else {
31520
31614
  const loc = locale.value;
31521
31615
  if (loc && adapter.locale !== loc) adapter.locale = loc;
31522
31616
  const fdow = firstDayOfWeek.value;
@@ -31990,12 +32084,10 @@ var KeyboardAdapter = class extends DragDropAdapter {
31990
32084
  y: current.y
31991
32085
  };
31992
32086
  break;
31993
- case "ArrowRight":
31994
- point = {
31995
- x: current.x + this.step,
31996
- y: current.y
31997
- };
31998
- break;
32087
+ case "ArrowRight": point = {
32088
+ x: current.x + this.step,
32089
+ y: current.y
32090
+ };
31999
32091
  }
32000
32092
  if (point) {
32001
32093
  event.preventDefault();
@@ -32026,6 +32118,9 @@ var KeyboardAdapter = class extends DragDropAdapter {
32026
32118
  * const dnd = useDragDrop()
32027
32119
  * ```
32028
32120
  */
32121
+ function toSource(source) {
32122
+ return toValue(source);
32123
+ }
32029
32124
  /**
32030
32125
  * Pure math for resolving where in an oriented zone a pointer would drop.
32031
32126
  * Internal — consumers rely on the `position.index` / `position.indicator`
@@ -32120,7 +32215,7 @@ function useDragDrop(options = {}) {
32120
32215
  ..._draggables,
32121
32216
  register(registration) {
32122
32217
  const id = registration.id ?? /* @__PURE__ */ useId();
32123
- const el = toRef(() => toValue(registration.el));
32218
+ const el = toRef(() => toSource(registration.el));
32124
32219
  const dragging = toRef(() => active.value?.id === id);
32125
32220
  const input = {
32126
32221
  ...registration,
@@ -32136,7 +32231,7 @@ function useDragDrop(options = {}) {
32136
32231
  register(registration) {
32137
32232
  const id = registration.id ?? /* @__PURE__ */ useId();
32138
32233
  if (_zones.has(id)) return _zones.register(registration);
32139
- const el = toRef(() => toValue(registration.el));
32234
+ const el = toRef(() => toSource(registration.el));
32140
32235
  const isOver = toRef(() => active.value?.over === id);
32141
32236
  const willAccept = toRef(() => safeAccept(registration.accept, active.value));
32142
32237
  const rects = shallowRef([]);
@@ -32636,7 +32731,7 @@ const keyAliasMap = {
32636
32731
  minus: "-",
32637
32732
  hyphen: "-"
32638
32733
  };
32639
- /* @__NO_SIDE_EFFECTS__ */
32734
+ /* #__NO_SIDE_EFFECTS__ */
32640
32735
  function normalizeKey(key) {
32641
32736
  const lowerKey = key.toLowerCase();
32642
32737
  return keyAliasMap[lowerKey] ?? lowerKey;
@@ -32700,19 +32795,19 @@ function splitKeyCombination(combination, isInternal = false) {
32700
32795
  "/",
32701
32796
  "_",
32702
32797
  "-"
32703
- ].includes(char))
32704
- /* v8 ignore start -- edge case: doubled special chars */
32705
- if (char === nextChar) {
32706
- flushBuffer(char);
32707
- keys.push(char);
32708
- i++;
32709
- } else if ([
32710
- "+",
32711
- "/",
32712
- "_"
32713
- ].includes(char)) flushBuffer(char);
32714
- else buffer += char;
32715
- else buffer += char;
32798
+ ].includes(char)) {
32799
+ /* v8 ignore start -- edge case: doubled special chars */
32800
+ if (char === nextChar) {
32801
+ flushBuffer(char);
32802
+ keys.push(char);
32803
+ i++;
32804
+ } else if ([
32805
+ "+",
32806
+ "/",
32807
+ "_"
32808
+ ].includes(char)) flushBuffer(char);
32809
+ else buffer += char;
32810
+ } else buffer += char;
32716
32811
  }
32717
32812
  flushBuffer();
32718
32813
  /* v8 ignore start -- edge case: invalid minus in combination */
@@ -33521,7 +33616,8 @@ function createStorage(options = {}) {
33521
33616
  function get(key, defaultValue) {
33522
33617
  const prefixedKey = `${prefix}${key}`;
33523
33618
  if (cache.has(prefixedKey)) return cache.get(prefixedKey);
33524
- const valueRef = ref(readStored(prefixedKey) ?? (/* @__PURE__ */ isObject(defaultValue) || /* @__PURE__ */ isArray(defaultValue) ? structuredClone(defaultValue) : defaultValue));
33619
+ const initialValue = readStored(prefixedKey) ?? (/* @__PURE__ */ isObject(defaultValue) || /* @__PURE__ */ isArray(defaultValue) ? structuredClone(defaultValue) : defaultValue);
33620
+ const valueRef = ref(initialValue);
33525
33621
  const stop = watch(valueRef, (newValue) => {
33526
33622
  if (/* @__PURE__ */ isNullOrUndefined(newValue)) adapter?.removeItem(prefixedKey);
33527
33623
  else writeStored(prefixedKey, newValue);