@vuetify/nightly 3.7.4-next.2024-11-06 → 3.7.5-dev.2024-12-16

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 (262) hide show
  1. package/dist/json/attributes.json +2853 -2845
  2. package/dist/json/importMap-labs.json +20 -20
  3. package/dist/json/importMap.json +150 -150
  4. package/dist/json/tags.json +2 -0
  5. package/dist/json/web-types.json +5324 -5306
  6. package/dist/vuetify-labs.css +25135 -23418
  7. package/dist/vuetify-labs.d.ts +202 -196
  8. package/dist/vuetify-labs.esm.js +107 -106
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +106 -105
  11. package/dist/vuetify-labs.min.css +4 -3
  12. package/dist/vuetify.css +23838 -22118
  13. package/dist/vuetify.d.ts +191 -185
  14. package/dist/vuetify.esm.js +96 -96
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +95 -95
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +4 -3
  19. package/dist/vuetify.min.js +884 -889
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAlert/VAlert.css +215 -207
  22. package/lib/components/VApp/VApp.css +15 -16
  23. package/lib/components/VAppBar/VAppBar.css +12 -14
  24. package/lib/components/VAppBar/index.d.mts +6 -6
  25. package/lib/components/VAutocomplete/VAutocomplete.css +85 -86
  26. package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -4
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  28. package/lib/components/VAutocomplete/index.d.mts +22 -22
  29. package/lib/components/VAvatar/VAvatar.css +106 -108
  30. package/lib/components/VBadge/VBadge.css +77 -73
  31. package/lib/components/VBadge/VBadge.sass +4 -0
  32. package/lib/components/VBanner/VBanner.css +166 -161
  33. package/lib/components/VBottomNavigation/VBottomNavigation.css +63 -64
  34. package/lib/components/VBottomSheet/VBottomSheet.css +31 -34
  35. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +57 -54
  36. package/lib/components/VBtn/VBtn.css +408 -385
  37. package/lib/components/VBtn/VBtn.sass +4 -4
  38. package/lib/components/VBtn/index.d.mts +7 -7
  39. package/lib/components/VBtnGroup/VBtnGroup.css +64 -63
  40. package/lib/components/VBtnToggle/VBtnToggle.css +14 -16
  41. package/lib/components/VBtnToggle/index.d.mts +9 -9
  42. package/lib/components/VCard/VCard.css +302 -294
  43. package/lib/components/VCarousel/VCarousel.css +65 -63
  44. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  45. package/lib/components/VCarousel/VCarousel.sass +1 -1
  46. package/lib/components/VCarousel/index.d.mts +9 -9
  47. package/lib/components/VCheckbox/VCheckbox.css +5 -7
  48. package/lib/components/VCheckbox/VCheckbox.mjs +3 -3
  49. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  50. package/lib/components/VChip/VChip.css +411 -378
  51. package/lib/components/VChip/VChip.mjs +18 -10
  52. package/lib/components/VChip/VChip.mjs.map +1 -1
  53. package/lib/components/VChip/index.d.mts +13 -8
  54. package/lib/components/VChipGroup/VChipGroup.css +18 -19
  55. package/lib/components/VChipGroup/VChipGroup.mjs +2 -0
  56. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  57. package/lib/components/VChipGroup/index.d.mts +20 -15
  58. package/lib/components/VCode/VCode.css +8 -10
  59. package/lib/components/VColorPicker/VColorPicker.css +22 -22
  60. package/lib/components/VColorPicker/VColorPickerCanvas.css +22 -24
  61. package/lib/components/VColorPicker/VColorPickerEdit.css +28 -29
  62. package/lib/components/VColorPicker/VColorPickerPreview.css +67 -69
  63. package/lib/components/VColorPicker/VColorPickerPreview.sass +2 -4
  64. package/lib/components/VColorPicker/VColorPickerSwatches.css +34 -34
  65. package/lib/components/VCombobox/VCombobox.css +85 -86
  66. package/lib/components/VCombobox/VCombobox.mjs +4 -4
  67. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  68. package/lib/components/VCombobox/index.d.mts +22 -22
  69. package/lib/components/VConfirmEdit/VConfirmEdit.mjs +9 -7
  70. package/lib/components/VConfirmEdit/VConfirmEdit.mjs.map +1 -1
  71. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
  72. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs.map +1 -1
  73. package/lib/components/VConfirmEdit/index.d.mts +3 -7
  74. package/lib/components/VCounter/VCounter.css +5 -7
  75. package/lib/components/VDataTable/VDataTable.css +186 -189
  76. package/lib/components/VDataTable/VDataTable.sass +10 -20
  77. package/lib/components/VDataTable/VDataTableFooter.css +31 -33
  78. package/lib/components/VDatePicker/VDatePicker.css +6 -8
  79. package/lib/components/VDatePicker/VDatePickerControls.css +56 -54
  80. package/lib/components/VDatePicker/VDatePickerHeader.css +60 -56
  81. package/lib/components/VDatePicker/VDatePickerHeader.mjs +2 -1
  82. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
  83. package/lib/components/VDatePicker/VDatePickerMonth.css +55 -51
  84. package/lib/components/VDatePicker/VDatePickerMonths.css +19 -20
  85. package/lib/components/VDatePicker/VDatePickerYears.css +15 -16
  86. package/lib/components/VDatePicker/index.d.mts +5 -5
  87. package/lib/components/VDialog/VDialog.css +95 -95
  88. package/lib/components/VDivider/VDivider.css +52 -52
  89. package/lib/components/VEmptyState/VEmptyState.css +67 -62
  90. package/lib/components/VExpansionPanel/VExpansionPanel.css +209 -203
  91. package/lib/components/VExpansionPanel/VExpansionPanel.sass +25 -27
  92. package/lib/components/VExpansionPanel/index.d.mts +7 -7
  93. package/lib/components/VFab/VFab.css +69 -74
  94. package/lib/components/VFab/VFab.sass +4 -5
  95. package/lib/components/VFab/index.d.mts +6 -6
  96. package/lib/components/VField/VField.css +579 -539
  97. package/lib/components/VField/VField.mjs +5 -4
  98. package/lib/components/VField/VField.mjs.map +1 -1
  99. package/lib/components/VFileInput/VFileInput.css +29 -31
  100. package/lib/components/VFooter/VFooter.css +36 -38
  101. package/lib/components/VGrid/VGrid.css +592 -565
  102. package/lib/components/VIcon/VIcon.css +52 -51
  103. package/lib/components/VImg/VImg.css +51 -50
  104. package/lib/components/VInfiniteScroll/VInfiniteScroll.css +37 -36
  105. package/lib/components/VInput/VInput.css +142 -131
  106. package/lib/components/VInput/VInput.mjs +3 -3
  107. package/lib/components/VInput/VInput.mjs.map +1 -1
  108. package/lib/components/VItemGroup/VItemGroup.css +5 -7
  109. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  110. package/lib/components/VItemGroup/index.d.mts +9 -9
  111. package/lib/components/VKbd/VKbd.css +11 -13
  112. package/lib/components/VLabel/VLabel.css +15 -16
  113. package/lib/components/VLayout/VLayout.css +8 -10
  114. package/lib/components/VLayout/VLayoutItem.css +7 -8
  115. package/lib/components/VList/VList.css +108 -104
  116. package/lib/components/VList/VList.mjs +3 -2
  117. package/lib/components/VList/VList.mjs.map +1 -1
  118. package/lib/components/VList/VList.sass +1 -1
  119. package/lib/components/VList/VListItem.css +452 -440
  120. package/lib/components/VList/VListItem.mjs +3 -2
  121. package/lib/components/VList/VListItem.mjs.map +1 -1
  122. package/lib/components/VList/VListItem.sass +1 -2
  123. package/lib/components/VList/index.d.mts +10 -10
  124. package/lib/components/VLocaleProvider/VLocaleProvider.css +2 -4
  125. package/lib/components/VMain/VMain.css +30 -32
  126. package/lib/components/VMenu/VMenu.css +19 -21
  127. package/lib/components/VMenu/VMenu.mjs +3 -3
  128. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  129. package/lib/components/VMenu/index.d.mts +6 -6
  130. package/lib/components/VMessages/VMessages.css +15 -17
  131. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +108 -106
  132. package/lib/components/VOtpInput/VOtpInput.css +58 -56
  133. package/lib/components/VOverlay/VOverlay.css +63 -60
  134. package/lib/components/VOverlay/VOverlay.sass +13 -14
  135. package/lib/components/VPagination/VPagination.css +8 -10
  136. package/lib/components/VParallax/VParallax.css +6 -8
  137. package/lib/components/VProgressCircular/VProgressCircular.css +101 -95
  138. package/lib/components/VProgressLinear/VProgressLinear.css +222 -209
  139. package/lib/components/VRadioGroup/VRadioGroup.css +12 -14
  140. package/lib/components/VRadioGroup/VRadioGroup.mjs +3 -3
  141. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  142. package/lib/components/VRating/VRating.css +53 -52
  143. package/lib/components/VRating/VRating.mjs +4 -3
  144. package/lib/components/VRating/VRating.mjs.map +1 -1
  145. package/lib/components/VResponsive/VResponsive.css +26 -25
  146. package/lib/components/VSelect/VSelect.css +52 -54
  147. package/lib/components/VSelect/VSelect.mjs +3 -3
  148. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  149. package/lib/components/VSelect/index.d.mts +22 -22
  150. package/lib/components/VSelectionControl/VSelectionControl.css +102 -100
  151. package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -3
  152. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  153. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +8 -10
  154. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  155. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  156. package/lib/components/VSheet/VSheet.css +36 -38
  157. package/lib/components/VSkeletonLoader/VSkeletonLoader.css +224 -225
  158. package/lib/components/VSlideGroup/VSlideGroup.css +55 -53
  159. package/lib/components/VSlideGroup/index.d.mts +10 -10
  160. package/lib/components/VSlider/VSlider.css +57 -53
  161. package/lib/components/VSlider/VSliderThumb.css +153 -142
  162. package/lib/components/VSlider/VSliderTrack.css +174 -155
  163. package/lib/components/VSnackbar/VSnackbar.css +140 -140
  164. package/lib/components/VSparkline/VBarline.mjs +3 -3
  165. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  166. package/lib/components/VSparkline/VTrendline.mjs +3 -3
  167. package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
  168. package/lib/components/VSpeedDial/VSpeedDial.css +41 -43
  169. package/lib/components/VStepper/VStepper.css +56 -55
  170. package/lib/components/VStepper/VStepper.mjs +5 -4
  171. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  172. package/lib/components/VStepper/VStepperItem.css +115 -112
  173. package/lib/components/VStepper/VStepperItem.mjs +5 -4
  174. package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
  175. package/lib/components/VStepper/index.d.mts +51 -45
  176. package/lib/components/VSwitch/VSwitch.css +139 -129
  177. package/lib/components/VSwitch/VSwitch.mjs +3 -3
  178. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  179. package/lib/components/VSystemBar/VSystemBar.css +43 -45
  180. package/lib/components/VTable/VTable.css +141 -140
  181. package/lib/components/VTable/VTable.sass +2 -4
  182. package/lib/components/VTabs/VTab.css +29 -30
  183. package/lib/components/VTabs/VTabs.css +65 -59
  184. package/lib/components/VTabs/index.d.mts +7 -7
  185. package/lib/components/VTextField/VTextField.css +68 -65
  186. package/lib/components/VTextarea/VTextarea.css +39 -47
  187. package/lib/components/VTextarea/VTextarea.sass +2 -4
  188. package/lib/components/VThemeProvider/VThemeProvider.css +3 -5
  189. package/lib/components/VTimeline/VTimeline.css +418 -379
  190. package/lib/components/VToolbar/VToolbar.css +143 -136
  191. package/lib/components/VTooltip/VTooltip.css +21 -25
  192. package/lib/components/VTooltip/VTooltip.mjs +3 -3
  193. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  194. package/lib/components/VTooltip/VTooltip.sass +6 -8
  195. package/lib/components/VVirtualScroll/VVirtualScroll.css +9 -11
  196. package/lib/components/VWindow/VWindow.css +70 -73
  197. package/lib/components/VWindow/index.d.mts +7 -7
  198. package/lib/components/index.d.mts +138 -132
  199. package/lib/composables/form.mjs +7 -2
  200. package/lib/composables/form.mjs.map +1 -1
  201. package/lib/composables/group.mjs +3 -3
  202. package/lib/composables/group.mjs.map +1 -1
  203. package/lib/composables/layout.mjs +3 -3
  204. package/lib/composables/layout.mjs.map +1 -1
  205. package/lib/composables/nested/nested.mjs +2 -2
  206. package/lib/composables/nested/nested.mjs.map +1 -1
  207. package/lib/composables/theme.mjs +4 -4
  208. package/lib/composables/theme.mjs.map +1 -1
  209. package/lib/composables/validation.mjs +13 -15
  210. package/lib/composables/validation.mjs.map +1 -1
  211. package/lib/directives/ripple/VRipple.css +36 -38
  212. package/lib/entry-bundler.mjs +1 -1
  213. package/lib/entry-bundler.mjs.map +1 -1
  214. package/lib/framework.mjs +2 -3
  215. package/lib/framework.mjs.map +1 -1
  216. package/lib/index.d.mts +53 -53
  217. package/lib/labs/VCalendar/VCalendar.css +225 -219
  218. package/lib/labs/VCalendar/VCalendarDay.css +32 -33
  219. package/lib/labs/VCalendar/VCalendarHeader.css +13 -13
  220. package/lib/labs/VCalendar/VCalendarInterval.css +42 -43
  221. package/lib/labs/VCalendar/VCalendarIntervalEvent.css +5 -7
  222. package/lib/labs/VCalendar/VCalendarMonthDay.css +58 -61
  223. package/lib/labs/VCalendar/VCalendarMonthDay.sass +2 -3
  224. package/lib/labs/VDateInput/VDateInput.mjs +1 -1
  225. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
  226. package/lib/labs/VNumberInput/VNumberInput.css +38 -40
  227. package/lib/labs/VNumberInput/VNumberInput.mjs +7 -5
  228. package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
  229. package/lib/labs/VPicker/VPicker.css +57 -53
  230. package/lib/labs/VStepperVertical/index.d.mts +44 -44
  231. package/lib/labs/VTimePicker/VTimePicker.css +7 -9
  232. package/lib/labs/VTimePicker/VTimePickerClock.css +129 -126
  233. package/lib/labs/VTimePicker/VTimePickerControls.css +103 -102
  234. package/lib/labs/VTreeview/VTreeviewItem.css +15 -17
  235. package/lib/labs/VTreeview/VTreeviewItem.mjs +3 -4
  236. package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
  237. package/lib/labs/VTreeview/VTreeviewItem.sass +1 -2
  238. package/lib/labs/VTreeview/index.d.mts +20 -20
  239. package/lib/labs/components.d.mts +64 -64
  240. package/lib/locale/fr.mjs +1 -1
  241. package/lib/locale/fr.mjs.map +1 -1
  242. package/lib/styles/elements/_global.sass +1 -1
  243. package/lib/styles/generic/_colors.scss +3 -3
  244. package/lib/styles/generic/_layers.scss +1 -13
  245. package/lib/styles/generic/_transitions.scss +32 -32
  246. package/lib/styles/main.css +16139 -14666
  247. package/lib/styles/settings/_utilities.scss +5 -0
  248. package/lib/styles/settings/_variables.scss +2 -1
  249. package/lib/styles/tools/_bootable.sass +3 -0
  250. package/lib/styles/tools/_border.sass +4 -4
  251. package/lib/styles/tools/_display.sass +10 -0
  252. package/lib/styles/tools/_elevation.sass +2 -2
  253. package/lib/styles/tools/_index.sass +2 -0
  254. package/lib/styles/tools/_layer.scss +2 -4
  255. package/lib/styles/tools/_position.sass +2 -2
  256. package/lib/styles/tools/_radius.sass +10 -0
  257. package/lib/styles/tools/_rounded.sass +2 -2
  258. package/lib/styles/tools/_utilities.sass +5 -1
  259. package/lib/styles/utilities/_elevation.scss +1 -1
  260. package/lib/util/getCurrentInstance.mjs +1 -15
  261. package/lib/util/getCurrentInstance.mjs.map +1 -1
  262. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.7.4-next.2024-11-06
2
+ * Vuetify v3.7.5-dev.2024-12-16
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -1251,9 +1251,6 @@
1251
1251
  }, 'component');
1252
1252
 
1253
1253
  // Utilities
1254
-
1255
- // Types
1256
-
1257
1254
  function getCurrentInstance(name, message) {
1258
1255
  const vm = vue.getCurrentInstance();
1259
1256
  if (!vm) {
@@ -1266,20 +1263,6 @@
1266
1263
  const vm = getCurrentInstance(name).type;
1267
1264
  return toKebabCase(vm?.aliasName || vm?.name);
1268
1265
  }
1269
- let _uid = 0;
1270
- let _map = new WeakMap();
1271
- function getUid() {
1272
- const vm = getCurrentInstance('getUid');
1273
- if (_map.has(vm)) return _map.get(vm);else {
1274
- const uid = _uid++;
1275
- _map.set(vm, uid);
1276
- return uid;
1277
- }
1278
- }
1279
- getUid.reset = () => {
1280
- _uid = 0;
1281
- _map = new WeakMap();
1282
- };
1283
1266
 
1284
1267
  // Utilities
1285
1268
 
@@ -2095,7 +2078,7 @@
2095
2078
  function useLayoutItem(options) {
2096
2079
  const layout = vue.inject(VuetifyLayoutKey);
2097
2080
  if (!layout) throw new Error('[Vuetify] Could not find injected layout');
2098
- const id = options.id ?? `layout-item-${getUid()}`;
2081
+ const id = options.id ?? `layout-item-${vue.useId()}`;
2099
2082
  const vm = getCurrentInstance('useLayoutItem');
2100
2083
  vue.provide(VuetifyLayoutItemKey, {
2101
2084
  id
@@ -2871,15 +2854,15 @@
2871
2854
  const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)));
2872
2855
  for (const key of colors) {
2873
2856
  if (/^on-[a-z]/.test(key)) {
2874
- createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key}))`]);
2857
+ createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
2875
2858
  } else {
2876
- createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--v-theme-${key}))`, `color: rgb(var(--v-theme-on-${key}))`]);
2877
- createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key}))`]);
2859
+ createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`]);
2860
+ createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
2878
2861
  createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`]);
2879
2862
  }
2880
2863
  }
2881
2864
  lines.push(...bgLines, ...fgLines);
2882
- return '@layer vuetify.theme {\n' + lines.map(v => ` ${v}`).join('') + '\n}';
2865
+ return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
2883
2866
  });
2884
2867
  function getHead() {
2885
2868
  return {
@@ -4597,7 +4580,7 @@
4597
4580
  if (!vm) {
4598
4581
  throw new Error('[Vuetify] useGroupItem composable must be used inside a component setup function');
4599
4582
  }
4600
- const id = getUid();
4583
+ const id = vue.useId();
4601
4584
  vue.provide(Symbol.for(`${injectKey.description}:id`), id);
4602
4585
  const group = vue.inject(injectKey, null);
4603
4586
  if (!group) {
@@ -6369,7 +6352,7 @@
6369
6352
  slots
6370
6353
  } = _ref;
6371
6354
  const modelValue = useProxiedModel(props, 'modelValue');
6372
- const uid = getUid();
6355
+ const uid = vue.useId();
6373
6356
  const id = vue.computed(() => props.id || `v-selection-control-group-${uid}`);
6374
6357
  const name = vue.computed(() => props.name || id.value);
6375
6358
  const updateHandlers = new Set();
@@ -6506,7 +6489,7 @@
6506
6489
  backgroundColorStyles,
6507
6490
  trueValue
6508
6491
  } = useSelectionControl(props);
6509
- const uid = getUid();
6492
+ const uid = vue.useId();
6510
6493
  const isFocused = vue.shallowRef(false);
6511
6494
  const isFocusVisible = vue.shallowRef(false);
6512
6495
  const input = vue.ref();
@@ -6907,8 +6890,13 @@
6907
6890
  resetValidation
6908
6891
  };
6909
6892
  }
6910
- function useForm() {
6911
- return vue.inject(FormKey, null);
6893
+ function useForm(props) {
6894
+ const form = vue.inject(FormKey, null);
6895
+ return {
6896
+ ...form,
6897
+ isReadonly: vue.computed(() => !!(props?.readonly ?? form?.isReadonly.value)),
6898
+ isDisabled: vue.computed(() => !!(props?.disabled ?? form?.isDisabled.value))
6899
+ };
6912
6900
  }
6913
6901
 
6914
6902
  // Composables
@@ -6946,20 +6934,18 @@
6946
6934
  }, 'validation');
6947
6935
  function useValidation(props) {
6948
6936
  let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
6949
- let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : getUid();
6937
+ let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : vue.useId();
6950
6938
  const model = useProxiedModel(props, 'modelValue');
6951
6939
  const validationModel = vue.computed(() => props.validationValue === undefined ? model.value : props.validationValue);
6952
- const form = useForm();
6940
+ const form = useForm(props);
6953
6941
  const internalErrorMessages = vue.ref([]);
6954
6942
  const isPristine = vue.shallowRef(true);
6955
6943
  const isDirty = vue.computed(() => !!(wrapInArray(model.value === '' ? null : model.value).length || wrapInArray(validationModel.value === '' ? null : validationModel.value).length));
6956
- const isDisabled = vue.computed(() => !!(props.disabled ?? form?.isDisabled.value));
6957
- const isReadonly = vue.computed(() => !!(props.readonly ?? form?.isReadonly.value));
6958
6944
  const errorMessages = vue.computed(() => {
6959
6945
  return props.errorMessages?.length ? wrapInArray(props.errorMessages).concat(internalErrorMessages.value).slice(0, Math.max(0, +props.maxErrors)) : internalErrorMessages.value;
6960
6946
  });
6961
6947
  const validateOn = vue.computed(() => {
6962
- let value = (props.validateOn ?? form?.validateOn.value) || 'input';
6948
+ let value = (props.validateOn ?? form.validateOn?.value) || 'input';
6963
6949
  if (value === 'lazy') value = 'input lazy';
6964
6950
  if (value === 'eager') value = 'input eager';
6965
6951
  const set = new Set(value?.split(' ') ?? []);
@@ -6985,14 +6971,14 @@
6985
6971
  return {
6986
6972
  [`${name}--error`]: isValid.value === false,
6987
6973
  [`${name}--dirty`]: isDirty.value,
6988
- [`${name}--disabled`]: isDisabled.value,
6989
- [`${name}--readonly`]: isReadonly.value
6974
+ [`${name}--disabled`]: form.isDisabled.value,
6975
+ [`${name}--readonly`]: form.isReadonly.value
6990
6976
  };
6991
6977
  });
6992
6978
  const vm = getCurrentInstance('validation');
6993
6979
  const uid = vue.computed(() => props.name ?? vue.unref(id));
6994
6980
  vue.onBeforeMount(() => {
6995
- form?.register({
6981
+ form.register?.({
6996
6982
  id: uid.value,
6997
6983
  vm,
6998
6984
  validate,
@@ -7001,13 +6987,13 @@
7001
6987
  });
7002
6988
  });
7003
6989
  vue.onBeforeUnmount(() => {
7004
- form?.unregister(uid.value);
6990
+ form.unregister?.(uid.value);
7005
6991
  });
7006
6992
  vue.onMounted(async () => {
7007
6993
  if (!validateOn.value.lazy) {
7008
6994
  await validate(!validateOn.value.eager);
7009
6995
  }
7010
- form?.update(uid.value, isValid.value, errorMessages.value);
6996
+ form.update?.(uid.value, isValid.value, errorMessages.value);
7011
6997
  });
7012
6998
  useToggleScope(() => validateOn.value.input || validateOn.value.invalidInput && isValid.value === false, () => {
7013
6999
  vue.watch(validationModel, () => {
@@ -7027,7 +7013,7 @@
7027
7013
  });
7028
7014
  });
7029
7015
  vue.watch([isValid, errorMessages], () => {
7030
- form?.update(uid.value, isValid.value, errorMessages.value);
7016
+ form.update?.(uid.value, isValid.value, errorMessages.value);
7031
7017
  });
7032
7018
  async function reset() {
7033
7019
  model.value = null;
@@ -7068,8 +7054,8 @@
7068
7054
  return {
7069
7055
  errorMessages,
7070
7056
  isDirty,
7071
- isDisabled,
7072
- isReadonly,
7057
+ isDisabled: form.isDisabled,
7058
+ isReadonly: form.isReadonly,
7073
7059
  isPristine,
7074
7060
  isValid,
7075
7061
  isValidating,
@@ -7140,7 +7126,7 @@
7140
7126
  const {
7141
7127
  InputIcon
7142
7128
  } = useInputIcon(props);
7143
- const uid = getUid();
7129
+ const uid = vue.useId();
7144
7130
  const id = vue.computed(() => props.id || `input-${uid}`);
7145
7131
  const messagesId = vue.computed(() => `${id.value}-messages`);
7146
7132
  const {
@@ -7248,7 +7234,7 @@
7248
7234
  focus,
7249
7235
  blur
7250
7236
  } = useFocus(props);
7251
- const uid = getUid();
7237
+ const uid = vue.useId();
7252
7238
  const id = vue.computed(() => props.id || `checkbox-${uid}`);
7253
7239
  useRender(() => {
7254
7240
  const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
@@ -7988,6 +7974,7 @@
7988
7974
 
7989
7975
  const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group');
7990
7976
  const makeVChipGroupProps = propsFactory({
7977
+ baseColor: String,
7991
7978
  column: Boolean,
7992
7979
  filter: Boolean,
7993
7980
  valueComparator: {
@@ -8027,6 +8014,7 @@
8027
8014
  } = useGroup(props, VChipGroupSymbol);
8028
8015
  provideDefaults({
8029
8016
  VChip: {
8017
+ baseColor: vue.toRef(props, 'baseColor'),
8030
8018
  color: vue.toRef(props, 'color'),
8031
8019
  disabled: vue.toRef(props, 'disabled'),
8032
8020
  filter: vue.toRef(props, 'filter'),
@@ -8060,6 +8048,7 @@
8060
8048
  activeClass: String,
8061
8049
  appendAvatar: String,
8062
8050
  appendIcon: IconValue,
8051
+ baseColor: String,
8063
8052
  closable: Boolean,
8064
8053
  closeIcon: {
8065
8054
  type: IconValue,
@@ -8072,7 +8061,7 @@
8072
8061
  draggable: Boolean,
8073
8062
  filter: Boolean,
8074
8063
  filterIcon: {
8075
- type: String,
8064
+ type: IconValue,
8076
8065
  default: '$complete'
8077
8066
  },
8078
8067
  label: Boolean,
@@ -8134,11 +8123,6 @@
8134
8123
  const {
8135
8124
  borderClasses
8136
8125
  } = useBorder(props);
8137
- const {
8138
- colorClasses,
8139
- colorStyles,
8140
- variantClasses
8141
- } = useVariant(props);
8142
8126
  const {
8143
8127
  densityClasses
8144
8128
  } = useDensity(props);
@@ -8168,6 +8152,18 @@
8168
8152
  emit('click:close', e);
8169
8153
  }
8170
8154
  }));
8155
+ const variantProps = vue.computed(() => {
8156
+ const showColor = !group || group.isSelected.value;
8157
+ return {
8158
+ color: showColor ? props.color ?? props.baseColor : props.baseColor,
8159
+ variant: props.variant
8160
+ };
8161
+ });
8162
+ const {
8163
+ colorClasses,
8164
+ colorStyles,
8165
+ variantClasses
8166
+ } = useVariant(variantProps);
8171
8167
  function onClick(e) {
8172
8168
  emit('click', e);
8173
8169
  if (!isClickable.value) return;
@@ -8188,16 +8184,16 @@
8188
8184
  const hasFilter = !!(slots.filter || props.filter) && group;
8189
8185
  const hasPrependMedia = !!(props.prependIcon || props.prependAvatar);
8190
8186
  const hasPrepend = !!(hasPrependMedia || slots.prepend);
8191
- const hasColor = !group || group.isSelected.value;
8192
8187
  return isActive.value && vue.withDirectives(vue.createVNode(Tag, vue.mergeProps({
8193
8188
  "class": ['v-chip', {
8194
8189
  'v-chip--disabled': props.disabled,
8195
8190
  'v-chip--label': props.label,
8196
8191
  'v-chip--link': isClickable.value,
8197
8192
  'v-chip--filter': hasFilter,
8198
- 'v-chip--pill': props.pill
8199
- }, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value, props.class],
8200
- "style": [hasColor ? colorStyles.value : undefined, props.style],
8193
+ 'v-chip--pill': props.pill,
8194
+ [`${props.activeClass}`]: props.activeClass && link.isActive?.value
8195
+ }, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value, props.class],
8196
+ "style": [colorStyles.value, props.style],
8201
8197
  "disabled": props.disabled || undefined,
8202
8198
  "draggable": props.draggable,
8203
8199
  "tabindex": isClickable.value ? 0 : undefined,
@@ -8926,7 +8922,7 @@
8926
8922
  };
8927
8923
  const useNestedItem = (id, isGroup) => {
8928
8924
  const parent = vue.inject(VNestedSymbol, emptyNested);
8929
- const uidSymbol = Symbol(getUid());
8925
+ const uidSymbol = Symbol('nested item');
8930
8926
  const computedId = vue.computed(() => id.value !== undefined ? id.value : uidSymbol);
8931
8927
  const item = {
8932
8928
  ...parent,
@@ -9169,7 +9165,8 @@
9169
9165
  const list = useList();
9170
9166
  const isActive = vue.computed(() => props.active !== false && (props.active || link.isActive?.value || (root.activatable.value ? isActivated.value : isSelected.value)));
9171
9167
  const isLink = vue.computed(() => props.link !== false && link.isLink.value);
9172
- const isClickable = vue.computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || !!list && (root.selectable.value || root.activatable.value || props.value != null)));
9168
+ const isSelectable = vue.computed(() => !!list && (root.selectable.value || root.activatable.value || props.value != null));
9169
+ const isClickable = vue.computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || isSelectable.value));
9173
9170
  const roundedProps = vue.computed(() => props.rounded || props.nav);
9174
9171
  const color = vue.computed(() => props.color ?? props.activeColor);
9175
9172
  const variantProps = vue.computed(() => ({
@@ -9260,7 +9257,7 @@
9260
9257
  }, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, variantClasses.value, props.class],
9261
9258
  "style": [colorStyles.value, dimensionStyles.value, props.style],
9262
9259
  "tabindex": isClickable.value ? list ? -2 : 0 : undefined,
9263
- "aria-selected": root.activatable.value ? isActivated.value : isSelected.value,
9260
+ "aria-selected": isSelectable.value ? root.activatable.value ? isActivated.value : root.selectable.value ? isSelected.value : isActive.value : undefined,
9264
9261
  "onClick": onClick,
9265
9262
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
9266
9263
  }, link.linkProps), {
@@ -9677,8 +9674,8 @@
9677
9674
  activeClass: String,
9678
9675
  bgColor: String,
9679
9676
  disabled: Boolean,
9680
- expandIcon: String,
9681
- collapseIcon: String,
9677
+ expandIcon: IconValue,
9678
+ collapseIcon: IconValue,
9682
9679
  lines: {
9683
9680
  type: [Boolean, String],
9684
9681
  default: 'one'
@@ -11427,7 +11424,7 @@
11427
11424
  const {
11428
11425
  isRtl
11429
11426
  } = useRtl();
11430
- const uid = getUid();
11427
+ const uid = vue.useId();
11431
11428
  const id = vue.computed(() => props.id || `v-menu-${uid}`);
11432
11429
  const overlay = vue.ref();
11433
11430
  const parent = vue.inject(VMenuSymbol, null);
@@ -11723,7 +11720,7 @@
11723
11720
  } = useRtl();
11724
11721
  const isActive = vue.computed(() => props.dirty || props.active);
11725
11722
  const hasLabel = vue.computed(() => !props.singleLine && !!(props.label || slots.label));
11726
- const uid = getUid();
11723
+ const uid = vue.useId();
11727
11724
  const id = vue.computed(() => props.id || `input-${uid}`);
11728
11725
  const messagesId = vue.computed(() => `${id.value}-messages`);
11729
11726
  const labelRef = vue.ref();
@@ -11852,7 +11849,8 @@
11852
11849
  "style": textColorStyles.value
11853
11850
  }, {
11854
11851
  default: () => [label()]
11855
- }), vue.createVNode(VFieldLabel, {
11852
+ }), hasLabel.value && vue.createVNode(VFieldLabel, {
11853
+ "key": "label",
11856
11854
  "ref": labelRef,
11857
11855
  "for": id.value
11858
11856
  }, {
@@ -12678,7 +12676,7 @@
12678
12676
  const counterValue = vue.computed(() => {
12679
12677
  return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : model.value.length;
12680
12678
  });
12681
- const form = useForm();
12679
+ const form = useForm(props);
12682
12680
  const selectedValues = vue.computed(() => model.value.map(selection => selection.value));
12683
12681
  const isFocused = vue.shallowRef(false);
12684
12682
  const label = vue.computed(() => menu.value ? props.closeText : props.openText);
@@ -12690,7 +12688,7 @@
12690
12688
  }
12691
12689
  return items.value;
12692
12690
  });
12693
- const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
12691
+ const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
12694
12692
  const computedMenuProps = vue.computed(() => {
12695
12693
  return {
12696
12694
  ...props.menuProps,
@@ -12717,7 +12715,7 @@
12717
12715
  }
12718
12716
  }
12719
12717
  function onKeydown(e) {
12720
- if (!e.key || props.readonly || form?.isReadonly.value) return;
12718
+ if (!e.key || form.isReadonly.value) return;
12721
12719
  if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {
12722
12720
  e.preventDefault();
12723
12721
  }
@@ -13195,7 +13193,7 @@
13195
13193
  const counterValue = vue.computed(() => {
13196
13194
  return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : model.value.length;
13197
13195
  });
13198
- const form = useForm();
13196
+ const form = useForm(props);
13199
13197
  const {
13200
13198
  filteredItems,
13201
13199
  getMatches
@@ -13213,7 +13211,7 @@
13213
13211
  const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title;
13214
13212
  return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
13215
13213
  });
13216
- const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
13214
+ const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
13217
13215
  const listRef = vue.ref();
13218
13216
  const listEvents = useScrolling(listRef, vTextFieldRef);
13219
13217
  function onClear(e) {
@@ -13240,7 +13238,7 @@
13240
13238
  }
13241
13239
  }
13242
13240
  function onKeydown(e) {
13243
- if (props.readonly || form?.isReadonly.value) return;
13241
+ if (form.isReadonly.value) return;
13244
13242
  const selectionStart = vTextFieldRef.value.selectionStart;
13245
13243
  const length = model.value.length;
13246
13244
  if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
@@ -13417,7 +13415,7 @@
13417
13415
  'v-autocomplete--selecting-index': selectionIndex.value > -1
13418
13416
  }, props.class],
13419
13417
  "style": props.style,
13420
- "readonly": props.readonly,
13418
+ "readonly": form.isReadonly.value,
13421
13419
  "placeholder": isDirty ? undefined : props.placeholder,
13422
13420
  "onClick:clear": onClear,
13423
13421
  "onMousedown:control": onMousedownControl,
@@ -17036,7 +17034,7 @@
17036
17034
  const transformed = transformOut(v);
17037
17035
  return props.multiple ? transformed : transformed[0] ?? null;
17038
17036
  });
17039
- const form = useForm();
17037
+ const form = useForm(props);
17040
17038
  const hasChips = vue.computed(() => !!(props.chips || slots.chip));
17041
17039
  const hasSelectionSlot = vue.computed(() => hasChips.value || !!slots.selection);
17042
17040
  const _search = vue.shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '');
@@ -17096,7 +17094,7 @@
17096
17094
  const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title;
17097
17095
  return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
17098
17096
  });
17099
- const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
17097
+ const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
17100
17098
  const listRef = vue.ref();
17101
17099
  const listEvents = useScrolling(listRef, vTextFieldRef);
17102
17100
  function onClear(e) {
@@ -17124,7 +17122,7 @@
17124
17122
  }
17125
17123
  // eslint-disable-next-line complexity
17126
17124
  function onKeydown(e) {
17127
- if (isComposingIgnoreKey(e) || props.readonly || form?.isReadonly.value) return;
17125
+ if (isComposingIgnoreKey(e) || form.isReadonly.value) return;
17128
17126
  const selectionStart = vTextFieldRef.value.selectionStart;
17129
17127
  const length = model.value.length;
17130
17128
  if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
@@ -17296,7 +17294,7 @@
17296
17294
  [`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true
17297
17295
  }, props.class],
17298
17296
  "style": props.style,
17299
- "readonly": props.readonly,
17297
+ "readonly": form.isReadonly.value,
17300
17298
  "placeholder": isDirty ? undefined : props.placeholder,
17301
17299
  "onClick:clear": onClear,
17302
17300
  "onMousedown:control": onMousedownControl,
@@ -18340,21 +18338,23 @@
18340
18338
  internalModel.value = structuredClone(vue.toRaw(model.value));
18341
18339
  emit('cancel');
18342
18340
  }
18343
- let actionsUsed = false;
18344
- useRender(() => {
18345
- const actions = vue.createVNode(vue.Fragment, null, [vue.createVNode(VBtn, {
18341
+ function actions(actionsProps) {
18342
+ return vue.createVNode(vue.Fragment, null, [vue.createVNode(VBtn, vue.mergeProps({
18346
18343
  "disabled": isPristine.value,
18347
18344
  "variant": "text",
18348
18345
  "color": props.color,
18349
18346
  "onClick": cancel,
18350
18347
  "text": t(props.cancelText)
18351
- }, null), vue.createVNode(VBtn, {
18348
+ }, actionsProps), null), vue.createVNode(VBtn, vue.mergeProps({
18352
18349
  "disabled": isPristine.value,
18353
18350
  "variant": "text",
18354
18351
  "color": props.color,
18355
18352
  "onClick": save,
18356
18353
  "text": t(props.okText)
18357
- }, null)]);
18354
+ }, actionsProps), null)]);
18355
+ }
18356
+ let actionsUsed = false;
18357
+ useRender(() => {
18358
18358
  return vue.createVNode(vue.Fragment, null, [slots.default?.({
18359
18359
  model: internalModel,
18360
18360
  save,
@@ -18364,7 +18364,7 @@
18364
18364
  actionsUsed = true;
18365
18365
  return actions;
18366
18366
  }
18367
- }), !actionsUsed && actions]);
18367
+ }), !actionsUsed && actions()]);
18368
18368
  });
18369
18369
  return {
18370
18370
  save,
@@ -21654,7 +21654,7 @@
21654
21654
  // Types
21655
21655
 
21656
21656
  const makeVDatePickerHeaderProps = propsFactory({
21657
- appendIcon: String,
21657
+ appendIcon: IconValue,
21658
21658
  color: String,
21659
21659
  header: String,
21660
21660
  transition: String,
@@ -24873,7 +24873,7 @@
24873
24873
  attrs,
24874
24874
  slots
24875
24875
  } = _ref;
24876
- const uid = getUid();
24876
+ const uid = vue.useId();
24877
24877
  const id = vue.computed(() => props.id || `radio-group-${uid}`);
24878
24878
  const model = useProxiedModel(props, 'modelValue');
24879
24879
  useRender(() => {
@@ -25236,7 +25236,8 @@
25236
25236
  onClick
25237
25237
  };
25238
25238
  }));
25239
- const name = vue.computed(() => props.name ?? `v-rating-${getUid()}`);
25239
+ const uid = vue.useId();
25240
+ const name = vue.computed(() => props.name ?? `v-rating-${uid}`);
25240
25241
  function VRatingItem(_ref2) {
25241
25242
  let {
25242
25243
  value,
@@ -25775,7 +25776,7 @@
25775
25776
  let {
25776
25777
  slots
25777
25778
  } = _ref;
25778
- const uid = getUid();
25779
+ const uid = vue.useId();
25779
25780
  const id = vue.computed(() => props.id || `barline-${uid}`);
25780
25781
  const autoDrawDuration = vue.computed(() => Number(props.autoDrawDuration) || 500);
25781
25782
  const hasLabels = vue.computed(() => {
@@ -25973,7 +25974,7 @@
25973
25974
  let {
25974
25975
  slots
25975
25976
  } = _ref;
25976
- const uid = getUid();
25977
+ const uid = vue.useId();
25977
25978
  const id = vue.computed(() => props.id || `trendline-${uid}`);
25978
25979
  const autoDrawDuration = vue.computed(() => Number(props.autoDrawDuration) || (props.fill ? 500 : 2000));
25979
25980
  const lastLength = vue.ref(0);
@@ -26310,20 +26311,20 @@
26310
26311
  subtitle: String,
26311
26312
  complete: Boolean,
26312
26313
  completeIcon: {
26313
- type: String,
26314
+ type: IconValue,
26314
26315
  default: '$complete'
26315
26316
  },
26316
26317
  editable: Boolean,
26317
26318
  editIcon: {
26318
- type: String,
26319
+ type: IconValue,
26319
26320
  default: '$edit'
26320
26321
  },
26321
26322
  error: Boolean,
26322
26323
  errorIcon: {
26323
- type: String,
26324
+ type: IconValue,
26324
26325
  default: '$error'
26325
26326
  },
26326
- icon: String,
26327
+ icon: IconValue,
26327
26328
  ripple: {
26328
26329
  type: [Boolean, Object],
26329
26330
  default: true
@@ -26484,10 +26485,10 @@
26484
26485
  const makeStepperProps = propsFactory({
26485
26486
  altLabels: Boolean,
26486
26487
  bgColor: String,
26487
- completeIcon: String,
26488
- editIcon: String,
26488
+ completeIcon: IconValue,
26489
+ editIcon: IconValue,
26489
26490
  editable: Boolean,
26490
- errorIcon: String,
26491
+ errorIcon: IconValue,
26491
26492
  hideActions: Boolean,
26492
26493
  items: {
26493
26494
  type: Array,
@@ -26677,7 +26678,7 @@
26677
26678
  const loaderColor = vue.computed(() => {
26678
26679
  return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
26679
26680
  });
26680
- const uid = getUid();
26681
+ const uid = vue.useId();
26681
26682
  const id = vue.computed(() => props.id || `switch-${uid}`);
26682
26683
  function onChange() {
26683
26684
  if (indeterminate.value) {
@@ -27722,7 +27723,7 @@
27722
27723
  const {
27723
27724
  scopeId
27724
27725
  } = useScopeId();
27725
- const uid = getUid();
27726
+ const uid = vue.useId();
27726
27727
  const id = vue.computed(() => props.id || `v-tooltip-${uid}`);
27727
27728
  const overlay = vue.ref();
27728
27729
  const location = vue.computed(() => {
@@ -28235,7 +28236,6 @@
28235
28236
  };
28236
28237
  }
28237
28238
  }
28238
- getUid.reset();
28239
28239
  if (typeof __VUE_OPTIONS_API__ !== 'boolean' || __VUE_OPTIONS_API__) {
28240
28240
  app.mixin({
28241
28241
  computed: {
@@ -28264,7 +28264,7 @@
28264
28264
  goTo
28265
28265
  };
28266
28266
  }
28267
- const version$1 = "3.7.4-next.2024-11-06";
28267
+ const version$1 = "3.7.5-dev.2024-12-16";
28268
28268
  createVuetify$1.version = version$1;
28269
28269
 
28270
28270
  // Vue's inject() can only be used in setup
@@ -28289,7 +28289,7 @@
28289
28289
  ...options
28290
28290
  });
28291
28291
  };
28292
- const version = "3.7.4-next.2024-11-06";
28292
+ const version = "3.7.5-dev.2024-12-16";
28293
28293
  createVuetify.version = version;
28294
28294
 
28295
28295
  exports.blueprints = index;