@vuetify/nightly 3.7.5-master.2024-12-17 → 3.7.6-dev.2025-01-06

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 (290) hide show
  1. package/dist/json/attributes.json +2037 -2021
  2. package/dist/json/importMap-labs.json +16 -16
  3. package/dist/json/importMap.json +164 -164
  4. package/dist/json/tags.json +4 -0
  5. package/dist/json/web-types.json +4057 -4019
  6. package/dist/vuetify-labs.css +4809 -4809
  7. package/dist/vuetify-labs.d.ts +3395 -14377
  8. package/dist/vuetify-labs.esm.js +81 -62
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +80 -61
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +2423 -2423
  13. package/dist/vuetify.d.ts +3157 -12301
  14. package/dist/vuetify.esm.js +81 -62
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +80 -61
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +894 -894
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +2 -0
  22. package/lib/blueprints/md1.d.mts +2 -0
  23. package/lib/blueprints/md2.d.mts +2 -0
  24. package/lib/blueprints/md3.d.mts +2 -0
  25. package/lib/components/VAlert/VAlert.mjs +1 -1
  26. package/lib/components/VAlert/index.d.mts +8 -86
  27. package/lib/components/VApp/index.d.mts +4 -20
  28. package/lib/components/VAppBar/VAppBar.mjs +1 -1
  29. package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
  30. package/lib/components/VAppBar/VAppBarTitle.mjs +1 -1
  31. package/lib/components/VAppBar/index.d.mts +18 -154
  32. package/lib/components/VAutocomplete/VAutocomplete.mjs +3 -2
  33. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  34. package/lib/components/VAutocomplete/index.d.mts +201 -1360
  35. package/lib/components/VAvatar/index.d.mts +4 -31
  36. package/lib/components/VBadge/VBadge.mjs +1 -1
  37. package/lib/components/VBadge/index.d.mts +4 -41
  38. package/lib/components/VBanner/VBanner.mjs +1 -1
  39. package/lib/components/VBanner/index.d.mts +12 -88
  40. package/lib/components/VBottomNavigation/index.d.mts +4 -32
  41. package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -1
  42. package/lib/components/VBottomSheet/index.d.mts +4 -88
  43. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
  44. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +1 -1
  45. package/lib/components/VBreadcrumbs/index.d.mts +12 -65
  46. package/lib/components/VBtn/VBtn.mjs +1 -1
  47. package/lib/components/VBtn/index.d.mts +11 -79
  48. package/lib/components/VBtnGroup/VBtnGroup.mjs +1 -1
  49. package/lib/components/VBtnGroup/index.d.mts +4 -28
  50. package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -1
  51. package/lib/components/VBtnToggle/index.d.mts +13 -33
  52. package/lib/components/VCard/VCard.mjs +1 -1
  53. package/lib/components/VCard/VCardItem.mjs +1 -1
  54. package/lib/components/VCard/VCardSubtitle.mjs +1 -1
  55. package/lib/components/VCard/VCardText.mjs +1 -1
  56. package/lib/components/VCard/index.d.mts +24 -190
  57. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  58. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  59. package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
  60. package/lib/components/VCarousel/index.d.mts +17 -95
  61. package/lib/components/VCheckbox/VCheckbox.mjs +4 -4
  62. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  63. package/lib/components/VCheckbox/VCheckboxBtn.mjs +1 -1
  64. package/lib/components/VCheckbox/index.d.mts +8 -90
  65. package/lib/components/VChip/VChip.mjs +16 -9
  66. package/lib/components/VChip/VChip.mjs.map +1 -1
  67. package/lib/components/VChip/index.d.mts +9 -105
  68. package/lib/components/VChipGroup/VChipGroup.mjs +3 -1
  69. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  70. package/lib/components/VChipGroup/index.d.mts +24 -43
  71. package/lib/components/VCode/index.d.mts +4 -18
  72. package/lib/components/VColorPicker/VColorPicker.mjs +1 -1
  73. package/lib/components/VColorPicker/index.d.mts +4 -68
  74. package/lib/components/VCombobox/VCombobox.mjs +3 -2
  75. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  76. package/lib/components/VCombobox/index.d.mts +201 -1360
  77. package/lib/components/VConfirmEdit/VConfirmEdit.mjs +1 -1
  78. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
  79. package/lib/components/VConfirmEdit/index.d.mts +6 -13
  80. package/lib/components/VCounter/VCounter.mjs +1 -1
  81. package/lib/components/VCounter/index.d.mts +9 -31
  82. package/lib/components/VDataIterator/index.d.mts +12 -56
  83. package/lib/components/VDataTable/VDataTable.mjs +1 -1
  84. package/lib/components/VDataTable/VDataTableFooter.mjs +1 -1
  85. package/lib/components/VDataTable/VDataTableGroupHeaderRow.mjs +1 -1
  86. package/lib/components/VDataTable/VDataTableHeaders.mjs +1 -1
  87. package/lib/components/VDataTable/VDataTableRow.mjs +1 -1
  88. package/lib/components/VDataTable/VDataTableRows.mjs +1 -1
  89. package/lib/components/VDataTable/VDataTableServer.mjs +1 -1
  90. package/lib/components/VDataTable/VDataTableVirtual.mjs +1 -1
  91. package/lib/components/VDataTable/index.d.mts +50 -388
  92. package/lib/components/VDatePicker/VDatePicker.mjs +1 -1
  93. package/lib/components/VDatePicker/VDatePickerMonth.mjs +1 -1
  94. package/lib/components/VDatePicker/VDatePickerMonths.mjs +1 -1
  95. package/lib/components/VDatePicker/VDatePickerYears.mjs +1 -1
  96. package/lib/components/VDatePicker/index.d.mts +24 -276
  97. package/lib/components/VDefaultsProvider/index.d.mts +4 -20
  98. package/lib/components/VDialog/VDialog.mjs +1 -1
  99. package/lib/components/VDialog/__test__/VDialog.spec.cy.mjs +1 -1
  100. package/lib/components/VDialog/index.d.mts +143 -389
  101. package/lib/components/VDivider/index.d.mts +4 -24
  102. package/lib/components/VEmptyState/VEmptyState.mjs +1 -1
  103. package/lib/components/VEmptyState/index.d.mts +4 -66
  104. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +1 -1
  105. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +1 -1
  106. package/lib/components/VExpansionPanel/index.d.mts +23 -159
  107. package/lib/components/VFab/VFab.mjs +1 -1
  108. package/lib/components/VFab/index.d.mts +15 -84
  109. package/lib/components/VField/VField.mjs +4 -4
  110. package/lib/components/VField/VField.mjs.map +1 -1
  111. package/lib/components/VField/VFieldLabel.mjs +1 -1
  112. package/lib/components/VField/index.d.mts +11 -59
  113. package/lib/components/VFileInput/VFileInput.mjs +1 -1
  114. package/lib/components/VFileInput/index.d.mts +71 -256
  115. package/lib/components/VFooter/VFooter.mjs +1 -1
  116. package/lib/components/VFooter/index.d.mts +4 -29
  117. package/lib/components/VForm/index.d.mts +267 -175
  118. package/lib/components/VGrid/VContainer.mjs +1 -1
  119. package/lib/components/VGrid/index.d.mts +16 -118
  120. package/lib/components/VHover/index.d.mts +4 -33
  121. package/lib/components/VIcon/index.d.mts +17 -75
  122. package/lib/components/VImg/VImg.mjs +1 -1
  123. package/lib/components/VImg/index.d.mts +19 -74
  124. package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
  125. package/lib/components/VInfiniteScroll/index.d.mts +4 -46
  126. package/lib/components/VInput/VInput.mjs +4 -4
  127. package/lib/components/VInput/VInput.mjs.map +1 -1
  128. package/lib/components/VInput/index.d.mts +4 -37
  129. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  130. package/lib/components/VItemGroup/index.d.mts +17 -74
  131. package/lib/components/VKbd/index.d.mts +4 -18
  132. package/lib/components/VLabel/index.d.mts +4 -20
  133. package/lib/components/VLayout/index.d.mts +8 -48
  134. package/lib/components/VLazy/VLazy.mjs +1 -1
  135. package/lib/components/VLazy/index.d.mts +4 -31
  136. package/lib/components/VList/VList.mjs +1 -1
  137. package/lib/components/VList/VListChildren.mjs +1 -1
  138. package/lib/components/VList/VListGroup.mjs +1 -1
  139. package/lib/components/VList/VListItem.mjs +1 -1
  140. package/lib/components/VList/VListItemAction.mjs +1 -1
  141. package/lib/components/VList/VListItemMedia.mjs +1 -1
  142. package/lib/components/VList/VListItemSubtitle.mjs +1 -1
  143. package/lib/components/VList/index.d.mts +48 -291
  144. package/lib/components/VLocaleProvider/index.d.mts +4 -21
  145. package/lib/components/VMain/index.d.mts +4 -25
  146. package/lib/components/VMenu/VMenu.mjs +4 -4
  147. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  148. package/lib/components/VMenu/index.d.mts +155 -397
  149. package/lib/components/VMessages/index.d.mts +4 -27
  150. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  151. package/lib/components/VNavigationDrawer/index.d.mts +7 -62
  152. package/lib/components/VOtpInput/VOtpInput.mjs +1 -1
  153. package/lib/components/VOtpInput/index.d.mts +7 -52
  154. package/lib/components/VOverlay/VOverlay.mjs +1 -1
  155. package/lib/components/VOverlay/index.d.mts +19 -101
  156. package/lib/components/VPagination/VPagination.mjs +1 -1
  157. package/lib/components/VPagination/index.d.mts +4 -64
  158. package/lib/components/VParallax/VParallax.mjs +1 -1
  159. package/lib/components/VParallax/index.d.mts +4 -27
  160. package/lib/components/VProgressCircular/index.d.mts +4 -34
  161. package/lib/components/VProgressLinear/index.d.mts +4 -54
  162. package/lib/components/VRadio/VRadio.mjs +1 -1
  163. package/lib/components/VRadio/index.d.mts +4 -68
  164. package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -4
  165. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  166. package/lib/components/VRadioGroup/index.d.mts +4 -48
  167. package/lib/components/VRangeSlider/VRangeSlider.mjs +1 -1
  168. package/lib/components/VRangeSlider/index.d.mts +4 -107
  169. package/lib/components/VRating/VRating.mjs +5 -4
  170. package/lib/components/VRating/VRating.mjs.map +1 -1
  171. package/lib/components/VRating/index.d.mts +4 -42
  172. package/lib/components/VResponsive/index.d.mts +4 -29
  173. package/lib/components/VSelect/VSelect.mjs +3 -2
  174. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  175. package/lib/components/VSelect/index.d.mts +200 -1352
  176. package/lib/components/VSelectionControl/VSelectionControl.mjs +4 -4
  177. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  178. package/lib/components/VSelectionControl/index.d.mts +10 -37
  179. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  180. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  181. package/lib/components/VSelectionControlGroup/index.d.mts +4 -26
  182. package/lib/components/VSheet/VSheet.mjs +1 -1
  183. package/lib/components/VSheet/index.d.mts +4 -32
  184. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +1 -1
  185. package/lib/components/VSkeletonLoader/index.d.mts +4 -28
  186. package/lib/components/VSlideGroup/index.d.mts +21 -77
  187. package/lib/components/VSlider/VSlider.mjs +1 -1
  188. package/lib/components/VSlider/VSliderThumb.mjs +1 -1
  189. package/lib/components/VSlider/index.d.mts +4 -106
  190. package/lib/components/VSnackbar/VSnackbar.mjs +1 -1
  191. package/lib/components/VSnackbar/index.d.mts +152 -398
  192. package/lib/components/VSparkline/VBarline.mjs +3 -4
  193. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  194. package/lib/components/VSparkline/VSparkline.mjs +1 -1
  195. package/lib/components/VSparkline/VTrendline.mjs +3 -4
  196. package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
  197. package/lib/components/VSparkline/index.d.mts +4 -49
  198. package/lib/components/VSpeedDial/VSpeedDial.mjs +1 -1
  199. package/lib/components/VSpeedDial/index.d.mts +4 -85
  200. package/lib/components/VStepper/VStepper.mjs +1 -1
  201. package/lib/components/VStepper/VStepperItem.mjs +1 -1
  202. package/lib/components/VStepper/VStepperWindow.mjs +1 -1
  203. package/lib/components/VStepper/VStepperWindowItem.mjs +1 -1
  204. package/lib/components/VStepper/index.d.mts +24 -250
  205. package/lib/components/VSwitch/VSwitch.mjs +4 -4
  206. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  207. package/lib/components/VSwitch/index.d.mts +4 -59
  208. package/lib/components/VSystemBar/VSystemBar.mjs +1 -1
  209. package/lib/components/VSystemBar/index.d.mts +4 -28
  210. package/lib/components/VTable/index.d.mts +4 -33
  211. package/lib/components/VTabs/VTab.mjs +1 -1
  212. package/lib/components/VTabs/VTabs.mjs +1 -1
  213. package/lib/components/VTabs/VTabsWindow.mjs +1 -1
  214. package/lib/components/VTabs/VTabsWindowItem.mjs +1 -1
  215. package/lib/components/VTabs/index.d.mts +105 -401
  216. package/lib/components/VTextField/VTextField.mjs +1 -1
  217. package/lib/components/VTextField/index.d.mts +152 -374
  218. package/lib/components/VTextarea/VTextarea.mjs +1 -1
  219. package/lib/components/VTextarea/index.d.mts +71 -244
  220. package/lib/components/VThemeProvider/index.d.mts +4 -20
  221. package/lib/components/VTimeline/VTimeline.mjs +1 -1
  222. package/lib/components/VTimeline/VTimelineDivider.mjs +1 -1
  223. package/lib/components/VTimeline/VTimelineItem.mjs +1 -1
  224. package/lib/components/VTimeline/index.d.mts +8 -75
  225. package/lib/components/VToolbar/VToolbar.mjs +1 -1
  226. package/lib/components/VToolbar/index.d.mts +12 -90
  227. package/lib/components/VTooltip/VTooltip.mjs +4 -4
  228. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  229. package/lib/components/VTooltip/index.d.mts +147 -386
  230. package/lib/components/VValidation/index.d.mts +10 -24
  231. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +1 -1
  232. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +1 -1
  233. package/lib/components/VVirtualScroll/index.d.mts +21 -16
  234. package/lib/components/VWindow/VWindow.mjs +1 -1
  235. package/lib/components/VWindow/VWindowItem.mjs +1 -1
  236. package/lib/components/VWindow/index.d.mts +15 -54
  237. package/lib/components/index.d.mts +2975 -12121
  238. package/lib/components/transitions/dialog-transition.mjs +1 -2
  239. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  240. package/lib/components/transitions/index.d.mts +64 -309
  241. package/lib/composables/group.mjs +3 -3
  242. package/lib/composables/group.mjs.map +1 -1
  243. package/lib/composables/icons.mjs +1 -1
  244. package/lib/composables/layout.mjs +3 -3
  245. package/lib/composables/layout.mjs.map +1 -1
  246. package/lib/composables/nested/nested.mjs +2 -2
  247. package/lib/composables/nested/nested.mjs.map +1 -1
  248. package/lib/composables/theme.mjs +18 -7
  249. package/lib/composables/theme.mjs.map +1 -1
  250. package/lib/composables/validation.mjs +3 -3
  251. package/lib/composables/validation.mjs.map +1 -1
  252. package/lib/composables/variant.mjs +1 -1
  253. package/lib/composables/virtual.mjs +14 -7
  254. package/lib/composables/virtual.mjs.map +1 -1
  255. package/lib/entry-bundler.mjs +1 -1
  256. package/lib/entry-bundler.mjs.map +1 -1
  257. package/lib/framework.mjs +2 -3
  258. package/lib/framework.mjs.map +1 -1
  259. package/lib/index.d.mts +63 -61
  260. package/lib/labs/VCalendar/VCalendar.mjs +1 -1
  261. package/lib/labs/VCalendar/VCalendarDay.mjs +1 -1
  262. package/lib/labs/VCalendar/index.d.mts +24 -211
  263. package/lib/labs/VDateInput/VDateInput.mjs +1 -1
  264. package/lib/labs/VDateInput/index.d.mts +4 -115
  265. package/lib/labs/VFileUpload/VFileUpload.mjs +1 -1
  266. package/lib/labs/VFileUpload/VFileUploadItem.mjs +1 -1
  267. package/lib/labs/VFileUpload/index.d.mts +8 -195
  268. package/lib/labs/VNumberInput/VNumberInput.mjs +1 -1
  269. package/lib/labs/VNumberInput/index.d.mts +577 -1280
  270. package/lib/labs/VPicker/VPicker.mjs +1 -1
  271. package/lib/labs/VPicker/index.d.mts +8 -63
  272. package/lib/labs/VPullToRefresh/index.d.mts +4 -35
  273. package/lib/labs/VSnackbarQueue/VSnackbarQueue.mjs +1 -1
  274. package/lib/labs/VSnackbarQueue/index.d.mts +156 -453
  275. package/lib/labs/VStepperVertical/VStepperVertical.mjs +1 -1
  276. package/lib/labs/VStepperVertical/VStepperVerticalActions.mjs +1 -1
  277. package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs +1 -1
  278. package/lib/labs/VStepperVertical/index.d.mts +12 -227
  279. package/lib/labs/VTimePicker/VTimePicker.mjs +1 -1
  280. package/lib/labs/VTimePicker/VTimePickerControls.mjs +1 -1
  281. package/lib/labs/VTimePicker/index.d.mts +12 -122
  282. package/lib/labs/VTreeview/VTreeview.mjs +1 -1
  283. package/lib/labs/VTreeview/VTreeviewChildren.mjs +1 -1
  284. package/lib/labs/VTreeview/VTreeviewGroup.mjs +1 -1
  285. package/lib/labs/VTreeview/VTreeviewItem.mjs +1 -1
  286. package/lib/labs/VTreeview/index.d.mts +18 -205
  287. package/lib/labs/components.d.mts +1116 -3200
  288. package/lib/util/getCurrentInstance.mjs +1 -15
  289. package/lib/util/getCurrentInstance.mjs.map +1 -1
  290. package/package.json +5 -4
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.7.5-master.2024-12-17
2
+ * Vuetify v3.7.6-dev.2025-01-06
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -1257,9 +1257,6 @@
1257
1257
  }
1258
1258
 
1259
1259
  // Utilities
1260
-
1261
- // Types
1262
-
1263
1260
  function getCurrentInstance(name, message) {
1264
1261
  const vm = vue.getCurrentInstance();
1265
1262
  if (!vm) {
@@ -1272,20 +1269,6 @@
1272
1269
  const vm = getCurrentInstance(name).type;
1273
1270
  return toKebabCase(vm?.aliasName || vm?.name);
1274
1271
  }
1275
- let _uid = 0;
1276
- let _map = new WeakMap();
1277
- function getUid() {
1278
- const vm = getCurrentInstance('getUid');
1279
- if (_map.has(vm)) return _map.get(vm);else {
1280
- const uid = _uid++;
1281
- _map.set(vm, uid);
1282
- return uid;
1283
- }
1284
- }
1285
- getUid.reset = () => {
1286
- _uid = 0;
1287
- _map = new WeakMap();
1288
- };
1289
1272
 
1290
1273
  // Utilities
1291
1274
 
@@ -1655,7 +1638,7 @@
1655
1638
  function useLayoutItem(options) {
1656
1639
  const layout = vue.inject(VuetifyLayoutKey);
1657
1640
  if (!layout) throw new Error('[Vuetify] Could not find injected layout');
1658
- const id = options.id ?? `layout-item-${getUid()}`;
1641
+ const id = options.id ?? `layout-item-${vue.useId()}`;
1659
1642
  const vm = getCurrentInstance('useLayoutItem');
1660
1643
  vue.provide(VuetifyLayoutItemKey, {
1661
1644
  id
@@ -2365,7 +2348,8 @@
2365
2348
  'theme-on-code': '#CCCCCC'
2366
2349
  }
2367
2350
  }
2368
- }
2351
+ },
2352
+ stylesheetId: 'vuetify-theme-stylesheet'
2369
2353
  };
2370
2354
  }
2371
2355
  function parseThemeOptions() {
@@ -2422,6 +2406,19 @@
2422
2406
  return acc;
2423
2407
  });
2424
2408
  const current = vue.computed(() => computedThemes.value[name.value]);
2409
+ function createCssClass(lines, selector, content) {
2410
+ lines.push(`${getScopedSelector(selector)} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
2411
+ }
2412
+ function getScopedSelector(selector) {
2413
+ if (!parsedOptions.scope) {
2414
+ return selector;
2415
+ }
2416
+ const scopeSelector = `:where(${parsedOptions.scope})`;
2417
+ if (selector === ':root') {
2418
+ return scopeSelector;
2419
+ }
2420
+ return `${scopeSelector} ${selector}`;
2421
+ }
2425
2422
  const styles = vue.computed(() => {
2426
2423
  const lines = [];
2427
2424
  if (current.value?.dark) {
@@ -2450,7 +2447,7 @@
2450
2447
  return {
2451
2448
  style: [{
2452
2449
  children: styles.value,
2453
- id: 'vuetify-theme-stylesheet',
2450
+ id: parsedOptions.stylesheetId,
2454
2451
  nonce: parsedOptions.cspNonce || false
2455
2452
  }]
2456
2453
  };
@@ -2475,7 +2472,7 @@
2475
2472
  }
2476
2473
  }
2477
2474
  } else {
2478
- let styleEl = IN_BROWSER ? document.getElementById('vuetify-theme-stylesheet') : null;
2475
+ let styleEl = IN_BROWSER ? document.getElementById(parsedOptions.stylesheetId) : null;
2479
2476
  if (IN_BROWSER) {
2480
2477
  vue.watch(styles, updateStyles, {
2481
2478
  immediate: true
@@ -2487,7 +2484,7 @@
2487
2484
  if (typeof document !== 'undefined' && !styleEl) {
2488
2485
  const el = document.createElement('style');
2489
2486
  el.type = 'text/css';
2490
- el.id = 'vuetify-theme-stylesheet';
2487
+ el.id = parsedOptions.stylesheetId;
2491
2488
  if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce);
2492
2489
  styleEl = el;
2493
2490
  document.head.appendChild(styleEl);
@@ -2536,9 +2533,6 @@
2536
2533
  if (!theme) throw new Error('Could not find Vuetify theme injection');
2537
2534
  return theme;
2538
2535
  }
2539
- function createCssClass(lines, selector, content) {
2540
- lines.push(`${selector} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
2541
- }
2542
2536
  function genCssVariables(theme) {
2543
2537
  const lightOverlay = theme.dark ? 2 : 1;
2544
2538
  const darkOverlay = theme.dark ? 1 : 2;
@@ -2814,6 +2808,8 @@
2814
2808
  }
2815
2809
  }
2816
2810
 
2811
+ // Utilities
2812
+
2817
2813
  // Types
2818
2814
 
2819
2815
  const makeVDialogTransitionProps = propsFactory({
@@ -4160,7 +4156,7 @@
4160
4156
  if (!vm) {
4161
4157
  throw new Error('[Vuetify] useGroupItem composable must be used inside a component setup function');
4162
4158
  }
4163
- const id = getUid();
4159
+ const id = vue.useId();
4164
4160
  vue.provide(Symbol.for(`${injectKey.description}:id`), id);
4165
4161
  const group = vue.inject(injectKey, null);
4166
4162
  if (!group) {
@@ -6140,7 +6136,7 @@
6140
6136
  slots
6141
6137
  } = _ref;
6142
6138
  const modelValue = useProxiedModel(props, 'modelValue');
6143
- const uid = getUid();
6139
+ const uid = vue.useId();
6144
6140
  const id = vue.computed(() => props.id || `v-selection-control-group-${uid}`);
6145
6141
  const name = vue.computed(() => props.name || id.value);
6146
6142
  const updateHandlers = new Set();
@@ -6277,7 +6273,7 @@
6277
6273
  backgroundColorStyles,
6278
6274
  trueValue
6279
6275
  } = useSelectionControl(props);
6280
- const uid = getUid();
6276
+ const uid = vue.useId();
6281
6277
  const isFocused = vue.shallowRef(false);
6282
6278
  const isFocusVisible = vue.shallowRef(false);
6283
6279
  const input = vue.ref();
@@ -6722,7 +6718,7 @@
6722
6718
  }, 'validation');
6723
6719
  function useValidation(props) {
6724
6720
  let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
6725
- let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : getUid();
6721
+ let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : vue.useId();
6726
6722
  const model = useProxiedModel(props, 'modelValue');
6727
6723
  const validationModel = vue.computed(() => props.validationValue === undefined ? model.value : props.validationValue);
6728
6724
  const form = useForm(props);
@@ -6914,7 +6910,7 @@
6914
6910
  const {
6915
6911
  InputIcon
6916
6912
  } = useInputIcon(props);
6917
- const uid = getUid();
6913
+ const uid = vue.useId();
6918
6914
  const id = vue.computed(() => props.id || `input-${uid}`);
6919
6915
  const messagesId = vue.computed(() => `${id.value}-messages`);
6920
6916
  const {
@@ -7022,7 +7018,7 @@
7022
7018
  focus,
7023
7019
  blur
7024
7020
  } = useFocus(props);
7025
- const uid = getUid();
7021
+ const uid = vue.useId();
7026
7022
  const id = vue.computed(() => props.id || `checkbox-${uid}`);
7027
7023
  useRender(() => {
7028
7024
  const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
@@ -7762,6 +7758,7 @@
7762
7758
 
7763
7759
  const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group');
7764
7760
  const makeVChipGroupProps = propsFactory({
7761
+ baseColor: String,
7765
7762
  column: Boolean,
7766
7763
  filter: Boolean,
7767
7764
  valueComparator: {
@@ -7801,6 +7798,7 @@
7801
7798
  } = useGroup(props, VChipGroupSymbol);
7802
7799
  provideDefaults({
7803
7800
  VChip: {
7801
+ baseColor: vue.toRef(props, 'baseColor'),
7804
7802
  color: vue.toRef(props, 'color'),
7805
7803
  disabled: vue.toRef(props, 'disabled'),
7806
7804
  filter: vue.toRef(props, 'filter'),
@@ -7834,6 +7832,7 @@
7834
7832
  activeClass: String,
7835
7833
  appendAvatar: String,
7836
7834
  appendIcon: IconValue,
7835
+ baseColor: String,
7837
7836
  closable: Boolean,
7838
7837
  closeIcon: {
7839
7838
  type: IconValue,
@@ -7908,11 +7907,6 @@
7908
7907
  const {
7909
7908
  borderClasses
7910
7909
  } = useBorder(props);
7911
- const {
7912
- colorClasses,
7913
- colorStyles,
7914
- variantClasses
7915
- } = useVariant(props);
7916
7910
  const {
7917
7911
  densityClasses
7918
7912
  } = useDensity(props);
@@ -7942,6 +7936,18 @@
7942
7936
  emit('click:close', e);
7943
7937
  }
7944
7938
  }));
7939
+ const variantProps = vue.computed(() => {
7940
+ const showColor = !group || group.isSelected.value;
7941
+ return {
7942
+ color: showColor ? props.color ?? props.baseColor : props.baseColor,
7943
+ variant: props.variant
7944
+ };
7945
+ });
7946
+ const {
7947
+ colorClasses,
7948
+ colorStyles,
7949
+ variantClasses
7950
+ } = useVariant(variantProps);
7945
7951
  function onClick(e) {
7946
7952
  emit('click', e);
7947
7953
  if (!isClickable.value) return;
@@ -7962,7 +7968,6 @@
7962
7968
  const hasFilter = !!(slots.filter || props.filter) && group;
7963
7969
  const hasPrependMedia = !!(props.prependIcon || props.prependAvatar);
7964
7970
  const hasPrepend = !!(hasPrependMedia || slots.prepend);
7965
- const hasColor = !group || group.isSelected.value;
7966
7971
  return isActive.value && vue.withDirectives(vue.createVNode(Tag, vue.mergeProps({
7967
7972
  "class": ['v-chip', {
7968
7973
  'v-chip--disabled': props.disabled,
@@ -7971,8 +7976,8 @@
7971
7976
  'v-chip--filter': hasFilter,
7972
7977
  'v-chip--pill': props.pill,
7973
7978
  [`${props.activeClass}`]: props.activeClass && link.isActive?.value
7974
- }, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value, props.class],
7975
- "style": [hasColor ? colorStyles.value : undefined, props.style],
7979
+ }, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value, props.class],
7980
+ "style": [colorStyles.value, props.style],
7976
7981
  "disabled": props.disabled || undefined,
7977
7982
  "draggable": props.draggable,
7978
7983
  "tabindex": isClickable.value ? 0 : undefined,
@@ -8701,7 +8706,7 @@
8701
8706
  };
8702
8707
  const useNestedItem = (id, isGroup) => {
8703
8708
  const parent = vue.inject(VNestedSymbol, emptyNested);
8704
- const uidSymbol = Symbol(getUid());
8709
+ const uidSymbol = Symbol('nested item');
8705
8710
  const computedId = vue.computed(() => id.value !== undefined ? id.value : uidSymbol);
8706
8711
  const item = {
8707
8712
  ...parent,
@@ -11211,7 +11216,7 @@
11211
11216
  const {
11212
11217
  isRtl
11213
11218
  } = useRtl();
11214
- const uid = getUid();
11219
+ const uid = vue.useId();
11215
11220
  const id = vue.computed(() => props.id || `v-menu-${uid}`);
11216
11221
  const overlay = vue.ref();
11217
11222
  const parent = vue.inject(VMenuSymbol, null);
@@ -11507,7 +11512,7 @@
11507
11512
  } = useRtl();
11508
11513
  const isActive = vue.computed(() => props.dirty || props.active);
11509
11514
  const hasLabel = vue.computed(() => !props.singleLine && !!(props.label || slots.label));
11510
- const uid = getUid();
11515
+ const uid = vue.useId();
11511
11516
  const id = vue.computed(() => props.id || `input-${uid}`);
11512
11517
  const messagesId = vue.computed(() => `${id.value}-messages`);
11513
11518
  const labelRef = vue.ref();
@@ -11973,6 +11978,10 @@
11973
11978
  type: [Number, String],
11974
11979
  default: null
11975
11980
  },
11981
+ itemKey: {
11982
+ type: [String, Array, Function],
11983
+ default: null
11984
+ },
11976
11985
  height: [Number, String]
11977
11986
  }, 'virtual');
11978
11987
  function useVirtual(props, items) {
@@ -12151,11 +12160,14 @@
12151
12160
  }
12152
12161
  }
12153
12162
  const computedItems = vue.computed(() => {
12154
- return items.value.slice(first.value, last.value).map((item, index) => ({
12155
- raw: item,
12156
- index: index + first.value,
12157
- key: isObject(item) && 'value' in item ? item.value : index + first.value
12158
- }));
12163
+ return items.value.slice(first.value, last.value).map((item, index) => {
12164
+ const _index = index + first.value;
12165
+ return {
12166
+ raw: item,
12167
+ index: _index,
12168
+ key: getPropertyFromItem(item, props.itemKey, _index)
12169
+ };
12170
+ });
12159
12171
  });
12160
12172
  vue.watch(items, () => {
12161
12173
  sizes = Array.from({
@@ -12167,7 +12179,7 @@
12167
12179
  updateOffsets.immediate();
12168
12180
  calculateVisibleItems();
12169
12181
  }, {
12170
- deep: true
12182
+ deep: 1
12171
12183
  });
12172
12184
  return {
12173
12185
  calculateVisibleItems,
@@ -12673,7 +12685,8 @@
12673
12685
  }, null)), vue.createVNode(VVirtualScroll, {
12674
12686
  "ref": vVirtualScrollRef,
12675
12687
  "renderless": true,
12676
- "items": displayItems.value
12688
+ "items": displayItems.value,
12689
+ "itemKey": "value"
12677
12690
  }, {
12678
12691
  default: _ref2 => {
12679
12692
  let {
@@ -13248,7 +13261,8 @@
13248
13261
  }, null)), vue.createVNode(VVirtualScroll, {
13249
13262
  "ref": vVirtualScrollRef,
13250
13263
  "renderless": true,
13251
- "items": displayItems.value
13264
+ "items": displayItems.value,
13265
+ "itemKey": "value"
13252
13266
  }, {
13253
13267
  default: _ref4 => {
13254
13268
  let {
@@ -17128,7 +17142,8 @@
17128
17142
  }, null)), vue.createVNode(VVirtualScroll, {
17129
17143
  "ref": vVirtualScrollRef,
17130
17144
  "renderless": true,
17131
- "items": displayItems.value
17145
+ "items": displayItems.value,
17146
+ "itemKey": "value"
17132
17147
  }, {
17133
17148
  default: _ref4 => {
17134
17149
  let {
@@ -24668,7 +24683,7 @@
24668
24683
  attrs,
24669
24684
  slots
24670
24685
  } = _ref;
24671
- const uid = getUid();
24686
+ const uid = vue.useId();
24672
24687
  const id = vue.computed(() => props.id || `radio-group-${uid}`);
24673
24688
  const model = useProxiedModel(props, 'modelValue');
24674
24689
  useRender(() => {
@@ -25031,7 +25046,8 @@
25031
25046
  onClick
25032
25047
  };
25033
25048
  }));
25034
- const name = vue.computed(() => props.name ?? `v-rating-${getUid()}`);
25049
+ const uid = vue.useId();
25050
+ const name = vue.computed(() => props.name ?? `v-rating-${uid}`);
25035
25051
  function VRatingItem(_ref2) {
25036
25052
  let {
25037
25053
  value,
@@ -25555,6 +25571,8 @@
25555
25571
  }
25556
25572
  }, 'Line');
25557
25573
 
25574
+ // Utilities
25575
+
25558
25576
  // Types
25559
25577
 
25560
25578
  const makeVBarlineProps = propsFactory({
@@ -25568,7 +25586,7 @@
25568
25586
  let {
25569
25587
  slots
25570
25588
  } = _ref;
25571
- const uid = getUid();
25589
+ const uid = vue.useId();
25572
25590
  const id = vue.computed(() => props.id || `barline-${uid}`);
25573
25591
  const autoDrawDuration = vue.computed(() => Number(props.autoDrawDuration) || 500);
25574
25592
  const hasLabels = vue.computed(() => {
@@ -25751,6 +25769,8 @@
25751
25769
  };
25752
25770
  }
25753
25771
 
25772
+ // Utilities
25773
+
25754
25774
  // Types
25755
25775
 
25756
25776
  const makeVTrendlineProps = propsFactory({
@@ -25764,7 +25784,7 @@
25764
25784
  let {
25765
25785
  slots
25766
25786
  } = _ref;
25767
- const uid = getUid();
25787
+ const uid = vue.useId();
25768
25788
  const id = vue.computed(() => props.id || `trendline-${uid}`);
25769
25789
  const autoDrawDuration = vue.computed(() => Number(props.autoDrawDuration) || (props.fill ? 500 : 2000));
25770
25790
  const lastLength = vue.ref(0);
@@ -26468,7 +26488,7 @@
26468
26488
  const loaderColor = vue.computed(() => {
26469
26489
  return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
26470
26490
  });
26471
- const uid = getUid();
26491
+ const uid = vue.useId();
26472
26492
  const id = vue.computed(() => props.id || `switch-${uid}`);
26473
26493
  function onChange() {
26474
26494
  if (indeterminate.value) {
@@ -27513,7 +27533,7 @@
27513
27533
  const {
27514
27534
  scopeId
27515
27535
  } = useScopeId();
27516
- const uid = getUid();
27536
+ const uid = vue.useId();
27517
27537
  const id = vue.computed(() => props.id || `v-tooltip-${uid}`);
27518
27538
  const overlay = vue.ref();
27519
27539
  const location = vue.computed(() => {
@@ -30721,7 +30741,6 @@
30721
30741
  };
30722
30742
  }
30723
30743
  }
30724
- getUid.reset();
30725
30744
  if (typeof __VUE_OPTIONS_API__ !== 'boolean' || __VUE_OPTIONS_API__) {
30726
30745
  app.mixin({
30727
30746
  computed: {
@@ -30750,7 +30769,7 @@
30750
30769
  goTo
30751
30770
  };
30752
30771
  }
30753
- const version$1 = "3.7.5-master.2024-12-17";
30772
+ const version$1 = "3.7.6-dev.2025-01-06";
30754
30773
  createVuetify$1.version = version$1;
30755
30774
 
30756
30775
  // Vue's inject() can only be used in setup
@@ -31003,7 +31022,7 @@
31003
31022
 
31004
31023
  /* eslint-disable local-rules/sort-imports */
31005
31024
 
31006
- const version = "3.7.5-master.2024-12-17";
31025
+ const version = "3.7.6-dev.2025-01-06";
31007
31026
 
31008
31027
  /* eslint-disable local-rules/sort-imports */
31009
31028