@vuetify/nightly 3.6.13-3.7.0-beta.0.0-pr-20092.a834b18 → 3.6.14-master.2024-08-01

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 (202) hide show
  1. package/dist/json/attributes.json +127 -275
  2. package/dist/json/importMap-labs.json +20 -20
  3. package/dist/json/importMap.json +130 -130
  4. package/dist/json/tags.json +5 -42
  5. package/dist/json/web-types.json +241 -612
  6. package/dist/vuetify-labs.css +3861 -3156
  7. package/dist/vuetify-labs.d.ts +368 -697
  8. package/dist/vuetify-labs.esm.js +238 -240
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +238 -240
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +1162 -457
  13. package/dist/vuetify.d.ts +348 -611
  14. package/dist/vuetify.esm.js +99 -159
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +99 -159
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +1038 -1037
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAlert/VAlert.css +5 -1
  22. package/lib/components/VAppBar/index.d.mts +0 -6
  23. package/lib/components/VAutocomplete/VAutocomplete.css +4 -0
  24. package/lib/components/VAutocomplete/VAutocomplete.mjs +8 -15
  25. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  26. package/lib/components/VAutocomplete/index.d.mts +42 -61
  27. package/lib/components/VAvatar/VAvatar.css +2 -7
  28. package/lib/components/VAvatar/VAvatar.mjs +2 -7
  29. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  30. package/lib/components/VAvatar/VAvatar.sass +0 -1
  31. package/lib/components/VAvatar/_variables.scss +0 -13
  32. package/lib/components/VAvatar/index.d.mts +0 -6
  33. package/lib/components/VBadge/VBadge.css +2 -0
  34. package/lib/components/VBanner/VBanner.css +12 -4
  35. package/lib/components/VBottomNavigation/VBottomNavigation.css +11 -3
  36. package/lib/components/VBottomSheet/VBottomSheet.css +2 -0
  37. package/lib/components/VBreadcrumbs/index.d.mts +8 -8
  38. package/lib/components/VBtn/VBtn.css +16 -9
  39. package/lib/components/VBtn/VBtn.mjs +2 -4
  40. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  41. package/lib/components/VBtn/VBtn.sass +4 -4
  42. package/lib/components/VBtn/index.d.mts +0 -6
  43. package/lib/components/VBtnGroup/VBtnGroup.css +12 -4
  44. package/lib/components/VCard/VCard.css +9 -1
  45. package/lib/components/VCarousel/VCarousel.css +2 -0
  46. package/lib/components/VCarousel/index.d.mts +0 -9
  47. package/lib/components/VCheckbox/index.d.mts +6 -6
  48. package/lib/components/VChip/VChip.css +15 -9
  49. package/lib/components/VChip/VChip.sass +1 -1
  50. package/lib/components/VColorPicker/VColorPicker.css +2 -0
  51. package/lib/components/VColorPicker/VColorPicker.sass +4 -4
  52. package/lib/components/VColorPicker/VColorPickerPreview.sass +4 -4
  53. package/lib/components/VCombobox/VCombobox.css +4 -0
  54. package/lib/components/VCombobox/VCombobox.mjs +8 -15
  55. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  56. package/lib/components/VCombobox/index.d.mts +42 -61
  57. package/lib/components/VDialog/VDialog.css +5 -0
  58. package/lib/components/VDialog/index.d.mts +3 -3
  59. package/lib/components/VDivider/VDivider.css +2 -0
  60. package/lib/components/VExpansionPanel/VExpansionPanel.css +11 -5
  61. package/lib/components/VExpansionPanel/VExpansionPanel.sass +3 -3
  62. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +2 -7
  63. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  64. package/lib/components/VExpansionPanel/index.d.mts +0 -72
  65. package/lib/components/VFab/index.d.mts +0 -6
  66. package/lib/components/VField/VField.css +13 -1
  67. package/lib/components/VField/VField.sass +5 -8
  68. package/lib/components/VFileInput/index.d.mts +18 -18
  69. package/lib/components/VFooter/VFooter.css +12 -4
  70. package/lib/components/VFooter/VFooter.mjs +20 -14
  71. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  72. package/lib/components/VFooter/index.d.mts +3 -3
  73. package/lib/components/VForm/index.d.mts +9 -9
  74. package/lib/components/VGrid/VContainer.mjs +1 -6
  75. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  76. package/lib/components/VGrid/VGrid.sass +1 -1
  77. package/lib/components/VGrid/_mixins.sass +4 -4
  78. package/lib/components/VGrid/index.d.mts +0 -36
  79. package/lib/components/VImg/VImg.css +6 -9
  80. package/lib/components/VImg/VImg.mjs +0 -2
  81. package/lib/components/VImg/VImg.mjs.map +1 -1
  82. package/lib/components/VImg/VImg.sass +0 -9
  83. package/lib/components/VImg/index.d.mts +0 -9
  84. package/lib/components/VInput/index.d.mts +6 -6
  85. package/lib/components/VKbd/VKbd.css +2 -0
  86. package/lib/components/VList/VList.css +12 -4
  87. package/lib/components/VList/VListItem.css +23 -13
  88. package/lib/components/VList/VListItem.mjs +1 -3
  89. package/lib/components/VList/VListItem.mjs.map +1 -1
  90. package/lib/components/VList/VListItem.sass +2 -2
  91. package/lib/components/VList/index.d.mts +18 -19
  92. package/lib/components/VMain/VMain.css +2 -0
  93. package/lib/components/VMenu/VMenu.css +6 -0
  94. package/lib/components/VMenu/VMenu.mjs +8 -26
  95. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  96. package/lib/components/VMenu/index.d.mts +15 -30
  97. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +9 -3
  98. package/lib/components/VOtpInput/VOtpInput.css +3 -1
  99. package/lib/components/VOtpInput/VOtpInput.sass +1 -2
  100. package/lib/components/VOverflowBtn/VOverflowBtn.sass +1 -1
  101. package/lib/components/VOverlay/VOverlay.mjs +4 -5
  102. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  103. package/lib/components/VOverlay/useActivator.mjs +2 -3
  104. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  105. package/lib/components/VRadioGroup/index.d.mts +6 -6
  106. package/lib/components/VRangeSlider/index.d.mts +6 -6
  107. package/lib/components/VSelect/VSelect.css +4 -0
  108. package/lib/components/VSelect/VSelect.mjs +13 -15
  109. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  110. package/lib/components/VSelect/index.d.mts +42 -61
  111. package/lib/components/VSelect/useScrolling.mjs +3 -3
  112. package/lib/components/VSelect/useScrolling.mjs.map +1 -1
  113. package/lib/components/VSelectionControl/VSelectionControl.css +6 -4
  114. package/lib/components/VSelectionControl/VSelectionControl.sass +1 -1
  115. package/lib/components/VSheet/VSheet.css +12 -4
  116. package/lib/components/VSkeletonLoader/VSkeletonLoader.css +6 -4
  117. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +9 -8
  118. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  119. package/lib/components/VSkeletonLoader/VSkeletonLoader.sass +1 -2
  120. package/lib/components/VSlideGroup/VSlideGroup.mjs +1 -3
  121. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  122. package/lib/components/VSlideGroup/index.d.mts +0 -6
  123. package/lib/components/VSlider/VSliderThumb.sass +2 -2
  124. package/lib/components/VSlider/index.d.mts +6 -6
  125. package/lib/components/VSnackbar/VSnackbar.css +2 -0
  126. package/lib/components/VSnackbar/VSnackbar.mjs +4 -4
  127. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  128. package/lib/components/VSnackbar/index.d.mts +3 -3
  129. package/lib/components/VSpeedDial/index.d.mts +13 -28
  130. package/lib/components/VStepper/VStepper.css +8 -2
  131. package/lib/components/VStepper/VStepper.sass +2 -4
  132. package/lib/components/VStepper/VStepperItem.css +4 -1
  133. package/lib/components/VStepper/VStepperItem.sass +1 -1
  134. package/lib/components/VSwitch/VSwitch.css +2 -0
  135. package/lib/components/VSwitch/VSwitch.sass +10 -10
  136. package/lib/components/VSwitch/index.d.mts +6 -6
  137. package/lib/components/VSystemBar/VSystemBar.css +14 -8
  138. package/lib/components/VTable/VTable.css +8 -4
  139. package/lib/components/VTable/VTable.sass +2 -3
  140. package/lib/components/VTabs/index.d.mts +3 -21
  141. package/lib/components/VTextField/index.d.mts +18 -18
  142. package/lib/components/VTextarea/index.d.mts +18 -18
  143. package/lib/components/VTimeline/VTimeline.css +2 -0
  144. package/lib/components/VToolbar/VToolbar.css +21 -7
  145. package/lib/components/VToolbar/VToolbar.sass +1 -2
  146. package/lib/components/VTooltip/index.d.mts +3 -3
  147. package/lib/components/VTreeview/VTreeview.sass +9 -9
  148. package/lib/components/VValidation/index.d.mts +8 -9
  149. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +0 -2
  150. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  151. package/lib/components/VVirtualScroll/index.d.mts +0 -3
  152. package/lib/components/index.d.mts +302 -565
  153. package/lib/composables/nested/nested.mjs +3 -3
  154. package/lib/composables/nested/nested.mjs.map +1 -1
  155. package/lib/composables/nested/openStrategies.mjs +2 -4
  156. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  157. package/lib/composables/nested/selectStrategies.mjs +5 -5
  158. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  159. package/lib/composables/validation.mjs +6 -8
  160. package/lib/composables/validation.mjs.map +1 -1
  161. package/lib/composables/virtual.mjs +0 -1
  162. package/lib/composables/virtual.mjs.map +1 -1
  163. package/lib/entry-bundler.mjs +1 -1
  164. package/lib/entry-bundler.mjs.map +1 -1
  165. package/lib/framework.mjs +1 -1
  166. package/lib/framework.mjs.map +1 -1
  167. package/lib/index.d.mts +46 -46
  168. package/lib/labs/VDateInput/index.d.mts +6 -6
  169. package/lib/labs/VNumberInput/VNumberInput.mjs +60 -36
  170. package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
  171. package/lib/labs/VNumberInput/index.d.mts +23 -14
  172. package/lib/labs/VPicker/VPicker.css +6 -2
  173. package/lib/labs/VPicker/VPicker.sass +2 -3
  174. package/lib/labs/VSnackbarQueue/index.d.mts +3 -3
  175. package/lib/labs/VStepperVertical/index.d.mts +0 -36
  176. package/lib/labs/VTreeview/VTreeview.mjs +5 -7
  177. package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
  178. package/lib/labs/VTreeview/VTreeviewChildren.mjs +10 -33
  179. package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
  180. package/lib/labs/VTreeview/VTreeviewItem.css +1 -1
  181. package/lib/labs/VTreeview/VTreeviewItem.mjs +74 -14
  182. package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
  183. package/lib/labs/VTreeview/VTreeviewItem.sass +5 -2
  184. package/lib/labs/VTreeview/index.d.mts +60 -77
  185. package/lib/labs/components.d.mts +92 -136
  186. package/lib/styles/generic/_colors.scss +9 -3
  187. package/lib/styles/main.css +520 -0
  188. package/lib/styles/tools/_absolute.sass +8 -7
  189. package/lib/styles/tools/_border.sass +4 -3
  190. package/lib/styles/tools/_display.sass +8 -7
  191. package/lib/styles/tools/_elevation.sass +4 -2
  192. package/lib/styles/tools/_index.sass +0 -1
  193. package/lib/styles/tools/_radius.sass +6 -5
  194. package/lib/styles/tools/_rounded.sass +2 -1
  195. package/lib/styles/tools/_theme.sass +3 -2
  196. package/lib/styles/tools/_typography.sass +6 -5
  197. package/lib/styles/tools/_utilities.sass +5 -5
  198. package/lib/styles/utilities/_index.sass +7 -7
  199. package/lib/util/helpers.mjs +0 -5
  200. package/lib/util/helpers.mjs.map +1 -1
  201. package/package.json +1 -1
  202. package/lib/styles/tools/_sheet.sass +0 -14
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.6.13-3.7.0-beta.0.0-pr-20092.a834b18
2
+ * Vuetify v3.6.14-master.2024-08-01
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -498,11 +498,6 @@ function templateRef() {
498
498
  });
499
499
  return fn;
500
500
  }
501
- function checkPrintable(e) {
502
- const isPrintableChar = e.key.length === 1;
503
- const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
504
- return isPrintableChar && noModifier;
505
- }
506
501
 
507
502
  // Utilities
508
503
  const block = ['top', 'bottom'];
@@ -3693,7 +3688,6 @@ const Intersect = {
3693
3688
  // not intended for public use, this is passed in by vuetify-loader
3694
3689
 
3695
3690
  const makeVImgProps = propsFactory({
3696
- absolute: Boolean,
3697
3691
  alt: String,
3698
3692
  cover: Boolean,
3699
3693
  color: String,
@@ -3950,7 +3944,6 @@ const VImg = genericComponent()({
3950
3944
  const responsiveProps = VResponsive.filterProps(props);
3951
3945
  return withDirectives(createVNode(VResponsive, mergeProps({
3952
3946
  "class": ['v-img', {
3953
- 'v-img--absolute': props.absolute,
3954
3947
  'v-img--booting': !isBooted.value
3955
3948
  }, backgroundColorClasses.value, roundedClasses.value, props.class],
3956
3949
  "style": [{
@@ -5751,7 +5744,6 @@ const makeVBtnProps = propsFactory({
5751
5744
  type: Boolean,
5752
5745
  default: undefined
5753
5746
  },
5754
- activeColor: String,
5755
5747
  baseColor: String,
5756
5748
  symbol: {
5757
5749
  type: null,
@@ -5843,11 +5835,10 @@ const VBtn = genericComponent()({
5843
5835
  }
5844
5836
  return group?.isSelected.value;
5845
5837
  });
5846
- const color = computed(() => isActive.value ? props.activeColor ?? props.color : props.color);
5847
5838
  const variantProps = computed(() => {
5848
5839
  const showColor = group?.isSelected.value && (!link.isLink.value || link.isActive?.value) || !group || link.isActive?.value;
5849
5840
  return {
5850
- color: showColor ? color.value ?? props.baseColor : props.baseColor,
5841
+ color: showColor ? props.color ?? props.baseColor : props.baseColor,
5851
5842
  variant: props.variant
5852
5843
  };
5853
5844
  });
@@ -5949,7 +5940,7 @@ const VBtn = genericComponent()({
5949
5940
  "indeterminate": true,
5950
5941
  "width": "2"
5951
5942
  }, null)])]
5952
- }), [[Ripple, !isDisabled.value && !!props.ripple, '', {
5943
+ }), [[Ripple, !isDisabled.value && props.ripple, '', {
5953
5944
  center: !!props.icon
5954
5945
  }]]);
5955
5946
  });
@@ -6188,7 +6179,6 @@ const makeVAvatarProps = propsFactory({
6188
6179
  icon: IconValue,
6189
6180
  image: String,
6190
6181
  text: String,
6191
- ...makeBorderProps(),
6192
6182
  ...makeComponentProps(),
6193
6183
  ...makeDensityProps(),
6194
6184
  ...makeRoundedProps(),
@@ -6209,9 +6199,6 @@ const VAvatar = genericComponent()({
6209
6199
  const {
6210
6200
  themeClasses
6211
6201
  } = provideTheme(props);
6212
- const {
6213
- borderClasses
6214
- } = useBorder(props);
6215
6202
  const {
6216
6203
  colorClasses,
6217
6204
  colorStyles,
@@ -6231,7 +6218,7 @@ const VAvatar = genericComponent()({
6231
6218
  "class": ['v-avatar', {
6232
6219
  'v-avatar--start': props.start,
6233
6220
  'v-avatar--end': props.end
6234
- }, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, props.class],
6221
+ }, themeClasses.value, colorClasses.value, densityClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, props.class],
6235
6222
  "style": [colorStyles.value, sizeStyles.value, props.style]
6236
6223
  }, {
6237
6224
  default: () => [!slots.default ? props.image ? createVNode(VImg, {
@@ -6247,7 +6234,7 @@ const VAvatar = genericComponent()({
6247
6234
  "defaults": {
6248
6235
  VImg: {
6249
6236
  cover: true,
6250
- image: props.image
6237
+ src: props.image
6251
6238
  },
6252
6239
  VIcon: {
6253
6240
  icon: props.icon
@@ -6931,14 +6918,12 @@ function useValidation(props) {
6931
6918
  const validateOn = computed(() => {
6932
6919
  let value = (props.validateOn ?? form?.validateOn.value) || 'input';
6933
6920
  if (value === 'lazy') value = 'input lazy';
6934
- if (value === 'eager') value = 'input eager';
6935
6921
  const set = new Set(value?.split(' ') ?? []);
6936
6922
  return {
6923
+ blur: set.has('blur') || set.has('input'),
6937
6924
  input: set.has('input'),
6938
- blur: set.has('blur') || set.has('input') || set.has('invalid-input'),
6939
- invalidInput: set.has('invalid-input'),
6940
- lazy: set.has('lazy'),
6941
- eager: set.has('eager')
6925
+ submit: set.has('submit'),
6926
+ lazy: set.has('lazy')
6942
6927
  };
6943
6928
  });
6944
6929
  const isValid = computed(() => {
@@ -6975,11 +6960,11 @@ function useValidation(props) {
6975
6960
  });
6976
6961
  onMounted(async () => {
6977
6962
  if (!validateOn.value.lazy) {
6978
- await validate(!validateOn.value.eager);
6963
+ await validate(true);
6979
6964
  }
6980
6965
  form?.update(uid.value, isValid.value, errorMessages.value);
6981
6966
  });
6982
- useToggleScope(() => validateOn.value.input || validateOn.value.invalidInput && isValid.value === false, () => {
6967
+ useToggleScope(() => validateOn.value.input, () => {
6983
6968
  watch(validationModel, () => {
6984
6969
  if (validationModel.value != null) {
6985
6970
  validate();
@@ -7007,7 +6992,7 @@ function useValidation(props) {
7007
6992
  async function resetValidation() {
7008
6993
  isPristine.value = true;
7009
6994
  if (!validateOn.value.lazy) {
7010
- await validate(!validateOn.value.eager);
6995
+ await validate(true);
7011
6996
  } else {
7012
6997
  internalErrorMessages.value = [];
7013
6998
  }
@@ -7947,9 +7932,7 @@ const VSlideGroup = genericComponent()({
7947
7932
  selected: group.selected,
7948
7933
  scrollTo,
7949
7934
  scrollOffset,
7950
- focus,
7951
- hasPrev,
7952
- hasNext
7935
+ focus
7953
7936
  };
7954
7937
  }
7955
7938
  });
@@ -8419,7 +8402,6 @@ const leafSingleActiveStrategy = mandatory => {
8419
8402
  return strategy;
8420
8403
  };
8421
8404
 
8422
- // Utilities
8423
8405
  const singleOpenStrategy = {
8424
8406
  open: _ref => {
8425
8407
  let {
@@ -8453,11 +8435,11 @@ const multipleOpenStrategy = {
8453
8435
  parents
8454
8436
  } = _ref2;
8455
8437
  if (value) {
8456
- let parent = toRaw(parents.get(id));
8438
+ let parent = parents.get(id);
8457
8439
  opened.add(id);
8458
8440
  while (parent != null && parent !== id) {
8459
8441
  opened.add(parent);
8460
- parent = toRaw(parents.get(parent));
8442
+ parent = parents.get(parent);
8461
8443
  }
8462
8444
  return opened;
8463
8445
  } else {
@@ -8628,18 +8610,18 @@ const classicSelectStrategy = mandatory => {
8628
8610
  const items = [id];
8629
8611
  while (items.length) {
8630
8612
  const item = items.shift();
8631
- selected.set(toRaw(item), value ? 'on' : 'off');
8613
+ selected.set(item, value ? 'on' : 'off');
8632
8614
  if (children.has(item)) {
8633
8615
  items.push(...children.get(item));
8634
8616
  }
8635
8617
  }
8636
- let parent = toRaw(parents.get(id));
8618
+ let parent = parents.get(id);
8637
8619
  while (parent) {
8638
8620
  const childrenIds = children.get(parent);
8639
- const everySelected = childrenIds.every(cid => selected.get(toRaw(cid)) === 'on');
8640
- const noneSelected = childrenIds.every(cid => !selected.has(toRaw(cid)) || selected.get(toRaw(cid)) === 'off');
8621
+ const everySelected = childrenIds.every(cid => selected.get(cid) === 'on');
8622
+ const noneSelected = childrenIds.every(cid => !selected.has(cid) || selected.get(cid) === 'off');
8641
8623
  selected.set(parent, everySelected ? 'on' : noneSelected ? 'off' : 'indeterminate');
8642
- parent = toRaw(parents.get(parent));
8624
+ parent = parents.get(parent);
8643
8625
  }
8644
8626
 
8645
8627
  // If mandatory and planned deselect results in no selected
@@ -8717,7 +8699,7 @@ const useNested = props => {
8717
8699
  let isUnmounted = false;
8718
8700
  const children = ref(new Map());
8719
8701
  const parents = ref(new Map());
8720
- const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(toRaw(v)), v => [...v.values()]);
8702
+ const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(v), v => [...v.values()]);
8721
8703
  const activeStrategy = computed(() => {
8722
8704
  if (typeof props.activeStrategy === 'object') return props.activeStrategy;
8723
8705
  if (typeof props.activeStrategy === 'function') return props.activeStrategy(props.mandatory);
@@ -8890,9 +8872,9 @@ const useNestedItem = (id, isGroup) => {
8890
8872
  const item = {
8891
8873
  ...parent,
8892
8874
  id: computedId,
8893
- open: (open, e) => parent.root.open(toRaw(computedId.value), open, e),
8875
+ open: (open, e) => parent.root.open(computedId.value, open, e),
8894
8876
  openOnSelect: (open, e) => parent.root.openOnSelect(computedId.value, open, e),
8895
- isOpen: computed(() => parent.root.opened.value.has(toRaw(computedId.value))),
8877
+ isOpen: computed(() => parent.root.opened.value.has(computedId.value)),
8896
8878
  parent: computed(() => parent.root.parents.value.get(computedId.value)),
8897
8879
  activate: (activated, e) => parent.root.activate(computedId.value, activated, e),
8898
8880
  isActivated: computed(() => parent.root.activated.value.has(toRaw(computedId.value))),
@@ -9116,7 +9098,6 @@ const VListItem = genericComponent()({
9116
9098
  activate,
9117
9099
  isActivated,
9118
9100
  select,
9119
- isOpen,
9120
9101
  isSelected,
9121
9102
  isIndeterminate,
9122
9103
  isGroupActivator,
@@ -9171,7 +9152,6 @@ const VListItem = genericComponent()({
9171
9152
  const slotProps = computed(() => ({
9172
9153
  isActive: isActive.value,
9173
9154
  select,
9174
- isOpen: isOpen.value,
9175
9155
  isSelected: isSelected.value,
9176
9156
  isIndeterminate: isIndeterminate.value
9177
9157
  }));
@@ -9191,7 +9171,7 @@ const VListItem = genericComponent()({
9191
9171
  function onKeyDown(e) {
9192
9172
  if (e.key === 'Enter' || e.key === ' ') {
9193
9173
  e.preventDefault();
9194
- e.target.dispatchEvent(new MouseEvent('click', e));
9174
+ onClick(e);
9195
9175
  }
9196
9176
  }
9197
9177
  useRender(() => {
@@ -10514,8 +10494,7 @@ const makeActivatorProps = propsFactory({
10514
10494
  function useActivator(props, _ref) {
10515
10495
  let {
10516
10496
  isActive,
10517
- isTop,
10518
- contentEl
10497
+ isTop
10519
10498
  } = _ref;
10520
10499
  const vm = getCurrentInstance('useActivator');
10521
10500
  const activatorEl = ref();
@@ -10632,7 +10611,7 @@ function useActivator(props, _ref) {
10632
10611
  return events;
10633
10612
  });
10634
10613
  watch(isTop, val => {
10635
- if (val && (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused) || openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered)) && !contentEl.value?.contains(document.activeElement)) {
10614
+ if (val && (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused) || openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered))) {
10636
10615
  isActive.value = false;
10637
10616
  }
10638
10617
  });
@@ -11038,9 +11017,6 @@ const VOverlay = genericComponent()({
11038
11017
  attrs,
11039
11018
  emit
11040
11019
  } = _ref;
11041
- const root = ref();
11042
- const scrimEl = ref();
11043
- const contentEl = ref();
11044
11020
  const model = useProxiedModel(props, 'modelValue');
11045
11021
  const isActive = computed({
11046
11022
  get: () => model.value,
@@ -11078,8 +11054,7 @@ const VOverlay = genericComponent()({
11078
11054
  scrimEvents
11079
11055
  } = useActivator(props, {
11080
11056
  isActive,
11081
- isTop: localTop,
11082
- contentEl
11057
+ isTop: localTop
11083
11058
  });
11084
11059
  const {
11085
11060
  teleportTarget
@@ -11100,6 +11075,9 @@ const VOverlay = genericComponent()({
11100
11075
  watch(() => props.disabled, v => {
11101
11076
  if (v) isActive.value = false;
11102
11077
  });
11078
+ const root = ref();
11079
+ const scrimEl = ref();
11080
+ const contentEl = ref();
11103
11081
  const {
11104
11082
  contentStyles,
11105
11083
  updateLocation
@@ -11350,12 +11328,10 @@ const makeVMenuProps = propsFactory({
11350
11328
  // TODO
11351
11329
  // disableKeys: Boolean,
11352
11330
  id: String,
11353
- submenu: Boolean,
11354
11331
  ...omit(makeVOverlayProps({
11355
11332
  closeDelay: 250,
11356
11333
  closeOnContentClick: true,
11357
11334
  locationStrategy: 'connected',
11358
- location: undefined,
11359
11335
  openDelay: 300,
11360
11336
  scrim: false,
11361
11337
  scrollStrategy: 'reposition',
@@ -11378,32 +11354,27 @@ const VMenu = genericComponent()({
11378
11354
  const {
11379
11355
  scopeId
11380
11356
  } = useScopeId();
11381
- const {
11382
- isRtl
11383
- } = useRtl();
11384
11357
  const uid = getUid();
11385
11358
  const id = computed(() => props.id || `v-menu-${uid}`);
11386
11359
  const overlay = ref();
11387
11360
  const parent = inject$1(VMenuSymbol, null);
11388
- const openChildren = shallowRef(new Set());
11361
+ const openChildren = shallowRef(0);
11389
11362
  provide(VMenuSymbol, {
11390
11363
  register() {
11391
- openChildren.value.add(uid);
11364
+ ++openChildren.value;
11392
11365
  },
11393
11366
  unregister() {
11394
- openChildren.value.delete(uid);
11367
+ --openChildren.value;
11395
11368
  },
11396
11369
  closeParents(e) {
11397
11370
  setTimeout(() => {
11398
- if (!openChildren.value.size && !props.persistent && (e == null || e && !isClickInsideElement(e, overlay.value.contentEl))) {
11371
+ if (!openChildren.value && !props.persistent && (e == null || overlay.value?.contentEl && !isClickInsideElement(e, overlay.value.contentEl))) {
11399
11372
  isActive.value = false;
11400
11373
  parent?.closeParents();
11401
11374
  }
11402
11375
  }, 40);
11403
11376
  }
11404
11377
  });
11405
- onBeforeUnmount(() => parent?.unregister());
11406
- onDeactivated(() => isActive.value = false);
11407
11378
  async function onFocusIn(e) {
11408
11379
  const before = e.relatedTarget;
11409
11380
  const after = e.target;
@@ -11443,9 +11414,9 @@ const VMenu = genericComponent()({
11443
11414
  isActive.value = false;
11444
11415
  overlay.value?.activatorEl?.focus();
11445
11416
  }
11446
- } else if (props.submenu && e.key === (isRtl.value ? 'ArrowRight' : 'ArrowLeft')) {
11417
+ } else if (['Enter', ' '].includes(e.key) && props.closeOnContentClick) {
11447
11418
  isActive.value = false;
11448
- overlay.value?.activatorEl?.focus();
11419
+ parent?.closeParents();
11449
11420
  }
11450
11421
  }
11451
11422
  function onActivatorKeydown(e) {
@@ -11454,21 +11425,12 @@ const VMenu = genericComponent()({
11454
11425
  if (el && isActive.value) {
11455
11426
  if (e.key === 'ArrowDown') {
11456
11427
  e.preventDefault();
11457
- e.stopImmediatePropagation();
11458
11428
  focusChild(el, 'next');
11459
11429
  } else if (e.key === 'ArrowUp') {
11460
11430
  e.preventDefault();
11461
- e.stopImmediatePropagation();
11462
11431
  focusChild(el, 'prev');
11463
- } else if (props.submenu) {
11464
- if (e.key === (isRtl.value ? 'ArrowRight' : 'ArrowLeft')) {
11465
- isActive.value = false;
11466
- } else if (e.key === (isRtl.value ? 'ArrowLeft' : 'ArrowRight')) {
11467
- e.preventDefault();
11468
- focusChild(el, 'first');
11469
- }
11470
11432
  }
11471
- } else if (props.submenu ? e.key === (isRtl.value ? 'ArrowLeft' : 'ArrowRight') : ['ArrowDown', 'ArrowUp'].includes(e.key)) {
11433
+ } else if (['ArrowDown', 'ArrowUp'].includes(e.key)) {
11472
11434
  isActive.value = true;
11473
11435
  e.preventDefault();
11474
11436
  setTimeout(() => setTimeout(() => onActivatorKeydown(e)));
@@ -11492,7 +11454,6 @@ const VMenu = genericComponent()({
11492
11454
  "onUpdate:modelValue": $event => isActive.value = $event,
11493
11455
  "absolute": true,
11494
11456
  "activatorProps": activatorProps.value,
11495
- "location": props.location ?? (props.submenu ? 'end' : 'bottom'),
11496
11457
  "onClick:outside": onClickOutside,
11497
11458
  "onKeydown": onKeydown
11498
11459
  }, scopeId), {
@@ -12325,7 +12286,6 @@ function useVirtual(props, items) {
12325
12286
  deep: true
12326
12287
  });
12327
12288
  return {
12328
- calculateVisibleItems,
12329
12289
  containerRef,
12330
12290
  markerRef,
12331
12291
  computedItems,
@@ -12389,7 +12349,6 @@ const VVirtualScroll = genericComponent()({
12389
12349
  dimensionStyles
12390
12350
  } = useDimension(props);
12391
12351
  const {
12392
- calculateVisibleItems,
12393
12352
  containerRef,
12394
12353
  markerRef,
12395
12354
  handleScroll,
@@ -12461,7 +12420,6 @@ const VVirtualScroll = genericComponent()({
12461
12420
  }, [children])]);
12462
12421
  });
12463
12422
  return {
12464
- calculateVisibleItems,
12465
12423
  scrollToIndex
12466
12424
  };
12467
12425
  }
@@ -12530,9 +12488,9 @@ function useScrolling(listRef, textFieldRef) {
12530
12488
  }
12531
12489
  }
12532
12490
  return {
12533
- onScrollPassive: onListScroll,
12534
- onKeydown: onListKeydown
12535
- }; // typescript doesn't know about vue's event merging
12491
+ onListScroll,
12492
+ onListKeydown
12493
+ };
12536
12494
  }
12537
12495
 
12538
12496
  // Types
@@ -12607,7 +12565,7 @@ const VSelect = genericComponent()({
12607
12565
  const menu = computed({
12608
12566
  get: () => _menu.value,
12609
12567
  set: v => {
12610
- if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
12568
+ if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
12611
12569
  _menu.value = v;
12612
12570
  }
12613
12571
  });
@@ -12646,7 +12604,10 @@ const VSelect = genericComponent()({
12646
12604
  };
12647
12605
  });
12648
12606
  const listRef = ref();
12649
- const listEvents = useScrolling(listRef, vTextFieldRef);
12607
+ const {
12608
+ onListScroll,
12609
+ onListKeydown
12610
+ } = useScrolling(listRef, vTextFieldRef);
12650
12611
  function onClear(e) {
12651
12612
  if (props.openOnClear) {
12652
12613
  menu.value = true;
@@ -12656,11 +12617,6 @@ const VSelect = genericComponent()({
12656
12617
  if (menuDisabled.value) return;
12657
12618
  menu.value = !menu.value;
12658
12619
  }
12659
- function onListKeydown(e) {
12660
- if (checkPrintable(e)) {
12661
- onKeydown(e);
12662
- }
12663
- }
12664
12620
  function onKeydown(e) {
12665
12621
  if (!e.key || props.readonly || form?.isReadonly.value) return;
12666
12622
  if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {
@@ -12681,6 +12637,11 @@ const VSelect = genericComponent()({
12681
12637
  // html select hotkeys
12682
12638
  const KEYBOARD_LOOKUP_THRESHOLD = 1000; // milliseconds
12683
12639
 
12640
+ function checkPrintable(e) {
12641
+ const isPrintableChar = e.key.length === 1;
12642
+ const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
12643
+ return isPrintableChar && noModifier;
12644
+ }
12684
12645
  if (props.multiple || !checkPrintable(e)) return;
12685
12646
  const now = performance.now();
12686
12647
  if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {
@@ -12725,11 +12686,6 @@ const VSelect = genericComponent()({
12725
12686
  menu.value = false;
12726
12687
  }
12727
12688
  }
12728
- function onAfterEnter() {
12729
- if (props.eager) {
12730
- vVirtualScrollRef.value?.calculateVisibleItems();
12731
- }
12732
- }
12733
12689
  function onAfterLeave() {
12734
12690
  if (isFocused.value) {
12735
12691
  vTextFieldRef.value?.focus();
@@ -12808,7 +12764,6 @@ const VSelect = genericComponent()({
12808
12764
  "openOnClick": false,
12809
12765
  "closeOnContentClick": false,
12810
12766
  "transition": props.transition,
12811
- "onAfterEnter": onAfterEnter,
12812
12767
  "onAfterLeave": onAfterLeave
12813
12768
  }, computedMenuProps.value), {
12814
12769
  default: () => [hasList && createVNode(VList, mergeProps({
@@ -12818,10 +12773,11 @@ const VSelect = genericComponent()({
12818
12773
  "onMousedown": e => e.preventDefault(),
12819
12774
  "onKeydown": onListKeydown,
12820
12775
  "onFocusin": onFocusin,
12776
+ "onScrollPassive": onListScroll,
12821
12777
  "tabindex": "-1",
12822
12778
  "aria-live": "polite",
12823
12779
  "color": props.itemColor ?? props.color
12824
- }, listEvents, props.listProps), {
12780
+ }, props.listProps), {
12825
12781
  default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
12826
12782
  "title": t(props.noDataText)
12827
12783
  }, null)), createVNode(VVirtualScroll, {
@@ -13116,7 +13072,7 @@ const VAutocomplete = genericComponent()({
13116
13072
  const menu = computed({
13117
13073
  get: () => _menu.value,
13118
13074
  set: v => {
13119
- if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
13075
+ if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
13120
13076
  _menu.value = v;
13121
13077
  }
13122
13078
  });
@@ -13160,7 +13116,10 @@ const VAutocomplete = genericComponent()({
13160
13116
  });
13161
13117
  const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
13162
13118
  const listRef = ref();
13163
- const listEvents = useScrolling(listRef, vTextFieldRef);
13119
+ const {
13120
+ onListScroll,
13121
+ onListKeydown
13122
+ } = useScrolling(listRef, vTextFieldRef);
13164
13123
  function onClear(e) {
13165
13124
  if (props.openOnClear) {
13166
13125
  menu.value = true;
@@ -13179,11 +13138,6 @@ const VAutocomplete = genericComponent()({
13179
13138
  }
13180
13139
  menu.value = !menu.value;
13181
13140
  }
13182
- function onListKeydown(e) {
13183
- if (checkPrintable(e)) {
13184
- vTextFieldRef.value?.focus();
13185
- }
13186
- }
13187
13141
  function onKeydown(e) {
13188
13142
  if (props.readonly || form?.isReadonly.value) return;
13189
13143
  const selectionStart = vTextFieldRef.value.selectionStart;
@@ -13248,11 +13202,6 @@ const VAutocomplete = genericComponent()({
13248
13202
  }
13249
13203
  }
13250
13204
  }
13251
- function onAfterEnter() {
13252
- if (props.eager) {
13253
- vVirtualScrollRef.value?.calculateVisibleItems();
13254
- }
13255
- }
13256
13205
  function onAfterLeave() {
13257
13206
  if (isFocused.value) {
13258
13207
  isPristine.value = true;
@@ -13381,7 +13330,6 @@ const VAutocomplete = genericComponent()({
13381
13330
  "openOnClick": false,
13382
13331
  "closeOnContentClick": false,
13383
13332
  "transition": props.transition,
13384
- "onAfterEnter": onAfterEnter,
13385
13333
  "onAfterLeave": onAfterLeave
13386
13334
  }, props.menuProps), {
13387
13335
  default: () => [hasList && createVNode(VList, mergeProps({
@@ -13392,10 +13340,11 @@ const VAutocomplete = genericComponent()({
13392
13340
  "onKeydown": onListKeydown,
13393
13341
  "onFocusin": onFocusin,
13394
13342
  "onFocusout": onFocusout,
13343
+ "onScrollPassive": onListScroll,
13395
13344
  "tabindex": "-1",
13396
13345
  "aria-live": "polite",
13397
13346
  "color": props.itemColor ?? props.color
13398
- }, listEvents, props.listProps), {
13347
+ }, props.listProps), {
13399
13348
  default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
13400
13349
  "title": t(props.noDataText)
13401
13350
  }, null)), createVNode(VVirtualScroll, {
@@ -16956,7 +16905,7 @@ const VCombobox = genericComponent()({
16956
16905
  const menu = computed({
16957
16906
  get: () => _menu.value,
16958
16907
  set: v => {
16959
- if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
16908
+ if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
16960
16909
  _menu.value = v;
16961
16910
  }
16962
16911
  });
@@ -17039,7 +16988,10 @@ const VCombobox = genericComponent()({
17039
16988
  });
17040
16989
  const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
17041
16990
  const listRef = ref();
17042
- const listEvents = useScrolling(listRef, vTextFieldRef);
16991
+ const {
16992
+ onListScroll,
16993
+ onListKeydown
16994
+ } = useScrolling(listRef, vTextFieldRef);
17043
16995
  function onClear(e) {
17044
16996
  cleared = true;
17045
16997
  if (props.openOnClear) {
@@ -17058,11 +17010,6 @@ const VCombobox = genericComponent()({
17058
17010
  }
17059
17011
  menu.value = !menu.value;
17060
17012
  }
17061
- function onListKeydown(e) {
17062
- if (checkPrintable(e)) {
17063
- vTextFieldRef.value?.focus();
17064
- }
17065
- }
17066
17013
  // eslint-disable-next-line complexity
17067
17014
  function onKeydown(e) {
17068
17015
  if (isComposingIgnoreKey(e) || props.readonly || form?.isReadonly.value) return;
@@ -17127,11 +17074,6 @@ const VCombobox = genericComponent()({
17127
17074
  }
17128
17075
  }
17129
17076
  }
17130
- function onAfterEnter() {
17131
- if (props.eager) {
17132
- vVirtualScrollRef.value?.calculateVisibleItems();
17133
- }
17134
- }
17135
17077
  function onAfterLeave() {
17136
17078
  if (isFocused.value) {
17137
17079
  isPristine.value = true;
@@ -17256,7 +17198,6 @@ const VCombobox = genericComponent()({
17256
17198
  "openOnClick": false,
17257
17199
  "closeOnContentClick": false,
17258
17200
  "transition": props.transition,
17259
- "onAfterEnter": onAfterEnter,
17260
17201
  "onAfterLeave": onAfterLeave
17261
17202
  }, props.menuProps), {
17262
17203
  default: () => [hasList && createVNode(VList, mergeProps({
@@ -17267,10 +17208,11 @@ const VCombobox = genericComponent()({
17267
17208
  "onKeydown": onListKeydown,
17268
17209
  "onFocusin": onFocusin,
17269
17210
  "onFocusout": onFocusout,
17211
+ "onScrollPassive": onListScroll,
17270
17212
  "tabindex": "-1",
17271
17213
  "aria-live": "polite",
17272
17214
  "color": props.itemColor ?? props.color
17273
- }, listEvents, props.listProps), {
17215
+ }, props.listProps), {
17274
17216
  default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
17275
17217
  "title": t(props.noDataText)
17276
17218
  }, null)), createVNode(VVirtualScroll, {
@@ -21214,7 +21156,6 @@ const makeVContainerProps = propsFactory({
21214
21156
  default: false
21215
21157
  },
21216
21158
  ...makeComponentProps(),
21217
- ...makeDimensionProps(),
21218
21159
  ...makeTagProps()
21219
21160
  }, 'VContainer');
21220
21161
  const VContainer = genericComponent()({
@@ -21227,14 +21168,11 @@ const VContainer = genericComponent()({
21227
21168
  const {
21228
21169
  rtlClasses
21229
21170
  } = useRtl();
21230
- const {
21231
- dimensionStyles
21232
- } = useDimension(props);
21233
21171
  useRender(() => createVNode(props.tag, {
21234
21172
  "class": ['v-container', {
21235
21173
  'v-container--fluid': props.fluid
21236
21174
  }, rtlClasses.value, props.class],
21237
- "style": [dimensionStyles.value, props.style]
21175
+ "style": props.style
21238
21176
  }, slots));
21239
21177
  return {};
21240
21178
  }
@@ -22656,8 +22594,7 @@ const makeVExpansionPanelTitleProps = propsFactory({
22656
22594
  default: false
22657
22595
  },
22658
22596
  readonly: Boolean,
22659
- ...makeComponentProps(),
22660
- ...makeDimensionProps()
22597
+ ...makeComponentProps()
22661
22598
  }, 'VExpansionPanelTitle');
22662
22599
  const VExpansionPanelTitle = genericComponent()({
22663
22600
  name: 'VExpansionPanelTitle',
@@ -22675,9 +22612,6 @@ const VExpansionPanelTitle = genericComponent()({
22675
22612
  backgroundColorClasses,
22676
22613
  backgroundColorStyles
22677
22614
  } = useBackgroundColor(props, 'color');
22678
- const {
22679
- dimensionStyles
22680
- } = useDimension(props);
22681
22615
  const slotProps = computed(() => ({
22682
22616
  collapseIcon: props.collapseIcon,
22683
22617
  disabled: expansionPanel.disabled.value,
@@ -22692,7 +22626,7 @@ const VExpansionPanelTitle = genericComponent()({
22692
22626
  'v-expansion-panel-title--focusable': props.focusable,
22693
22627
  'v-expansion-panel-title--static': props.static
22694
22628
  }, backgroundColorClasses.value, props.class],
22695
- "style": [backgroundColorStyles.value, dimensionStyles.value, props.style],
22629
+ "style": [backgroundColorStyles.value, props.style],
22696
22630
  "type": "button",
22697
22631
  "tabindex": expansionPanel.disabled.value ? -1 : undefined,
22698
22632
  "disabled": expansionPanel.disabled.value,
@@ -23214,6 +23148,8 @@ const VFooter = genericComponent()({
23214
23148
  let {
23215
23149
  slots
23216
23150
  } = _ref;
23151
+ const layoutItemStyles = ref();
23152
+ const layoutIsReady = shallowRef();
23217
23153
  const {
23218
23154
  themeClasses
23219
23155
  } = provideTheme(props);
@@ -23238,17 +23174,20 @@ const VFooter = genericComponent()({
23238
23174
  autoHeight.value = entries[0].target.clientHeight;
23239
23175
  });
23240
23176
  const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10));
23241
- const {
23242
- layoutItemStyles,
23243
- layoutIsReady
23244
- } = useLayoutItem({
23245
- id: props.name,
23246
- order: computed(() => parseInt(props.order, 10)),
23247
- position: computed(() => 'bottom'),
23248
- layoutSize: height,
23249
- elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
23250
- active: computed(() => props.app),
23251
- absolute: toRef(props, 'absolute')
23177
+ useToggleScope(() => props.app, () => {
23178
+ const layout = useLayoutItem({
23179
+ id: props.name,
23180
+ order: computed(() => parseInt(props.order, 10)),
23181
+ position: computed(() => 'bottom'),
23182
+ layoutSize: height,
23183
+ elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
23184
+ active: computed(() => props.app),
23185
+ absolute: toRef(props, 'absolute')
23186
+ });
23187
+ watchEffect(() => {
23188
+ layoutItemStyles.value = layout.layoutItemStyles.value;
23189
+ layoutIsReady.value = layout.layoutIsReady;
23190
+ });
23252
23191
  });
23253
23192
  useRender(() => createVNode(props.tag, {
23254
23193
  "ref": resizeRef,
@@ -23257,7 +23196,7 @@ const VFooter = genericComponent()({
23257
23196
  height: convertToUnit(props.height)
23258
23197
  }, props.style]
23259
23198
  }, slots));
23260
- return props.app ? layoutIsReady : {};
23199
+ return props.app ? layoutIsReady.value : {};
23261
23200
  }
23262
23201
  });
23263
23202
 
@@ -25398,16 +25337,17 @@ const VSkeletonLoader = genericComponent()({
25398
25337
  const items = computed(() => genStructure(wrapInArray(props.type).join(',')));
25399
25338
  useRender(() => {
25400
25339
  const isLoading = !slots.default || props.loading;
25401
- return createVNode("div", {
25340
+ const loadingProps = props.boilerplate || !isLoading ? {} : {
25341
+ ariaLive: 'polite',
25342
+ ariaLabel: t(props.loadingText),
25343
+ role: 'alert'
25344
+ };
25345
+ return createVNode("div", mergeProps({
25402
25346
  "class": ['v-skeleton-loader', {
25403
25347
  'v-skeleton-loader--boilerplate': props.boilerplate
25404
25348
  }, themeClasses.value, backgroundColorClasses.value, elevationClasses.value],
25405
- "style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}],
25406
- "aria-busy": !props.boilerplate ? isLoading : undefined,
25407
- "aria-live": !props.boilerplate ? 'polite' : undefined,
25408
- "aria-label": !props.boilerplate ? t(props.loadingText) : undefined,
25409
- "role": !props.boilerplate ? 'alert' : undefined
25410
- }, [isLoading ? items.value : slots.default?.()]);
25349
+ "style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}]
25350
+ }, loadingProps), [isLoading ? items.value : slots.default?.()]);
25411
25351
  });
25412
25352
  return {};
25413
25353
  }
@@ -25440,14 +25380,14 @@ const VSlideGroupItem = genericComponent()({
25440
25380
  // Types
25441
25381
 
25442
25382
  function useCountdown(milliseconds) {
25443
- const time = shallowRef(milliseconds);
25383
+ const time = shallowRef(milliseconds());
25444
25384
  let timer = -1;
25445
25385
  function clear() {
25446
25386
  clearInterval(timer);
25447
25387
  }
25448
25388
  function reset() {
25449
25389
  clear();
25450
- nextTick(() => time.value = milliseconds);
25390
+ nextTick(() => time.value = milliseconds());
25451
25391
  }
25452
25392
  function start(el) {
25453
25393
  const style = el ? getComputedStyle(el) : {
@@ -25459,7 +25399,7 @@ function useCountdown(milliseconds) {
25459
25399
  const startTime = performance.now();
25460
25400
  timer = window.setInterval(() => {
25461
25401
  const elapsed = performance.now() - startTime + interval;
25462
- time.value = Math.max(milliseconds - elapsed, 0);
25402
+ time.value = Math.max(milliseconds() - elapsed, 0);
25463
25403
  if (time.value <= 0) clear();
25464
25404
  }, interval);
25465
25405
  }
@@ -25519,7 +25459,7 @@ const VSnackbar = genericComponent()({
25519
25459
  const {
25520
25460
  roundedClasses
25521
25461
  } = useRounded(props);
25522
- const countdown = useCountdown(Number(props.timeout));
25462
+ const countdown = useCountdown(() => Number(props.timeout));
25523
25463
  const overlay = ref();
25524
25464
  const timerRef = ref();
25525
25465
  const isHovering = shallowRef(false);
@@ -28198,7 +28138,7 @@ function createVuetify$1() {
28198
28138
  goTo
28199
28139
  };
28200
28140
  }
28201
- const version$1 = "3.6.13-3.7.0-beta.0.0-pr-20092.a834b18";
28141
+ const version$1 = "3.6.14-master.2024-08-01";
28202
28142
  createVuetify$1.version = version$1;
28203
28143
 
28204
28144
  // Vue's inject() can only be used in setup
@@ -28223,7 +28163,7 @@ const createVuetify = function () {
28223
28163
  ...options
28224
28164
  });
28225
28165
  };
28226
- const version = "3.6.13-3.7.0-beta.0.0-pr-20092.a834b18";
28166
+ const version = "3.6.14-master.2024-08-01";
28227
28167
  createVuetify.version = version;
28228
28168
 
28229
28169
  export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useLayout, useLocale, useRtl, useTheme, version };