vuetify 3.10.2 → 3.10.3

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 (205) hide show
  1. package/dist/json/attributes.json +1022 -1022
  2. package/dist/json/importMap-labs.json +18 -18
  3. package/dist/json/importMap.json +148 -148
  4. package/dist/json/web-types.json +1827 -1813
  5. package/dist/vuetify-labs.cjs +36 -50
  6. package/dist/vuetify-labs.css +5911 -5911
  7. package/dist/vuetify-labs.d.ts +1488 -1486
  8. package/dist/vuetify-labs.esm.js +36 -50
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +36 -50
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.cjs +36 -49
  13. package/dist/vuetify.cjs.map +1 -1
  14. package/dist/vuetify.css +6147 -6147
  15. package/dist/vuetify.d.ts +1112 -1110
  16. package/dist/vuetify.esm.js +36 -49
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +36 -49
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +2 -2
  21. package/dist/vuetify.min.js +1421 -1419
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/components/VAlert/VAlert.d.ts +3 -3
  24. package/lib/components/VAlert/VAlertTitle.d.ts +3 -3
  25. package/lib/components/VApp/VApp.d.ts +3 -3
  26. package/lib/components/VAppBar/VAppBar.d.ts +3 -3
  27. package/lib/components/VAppBar/VAppBarNavIcon.d.ts +6 -6
  28. package/lib/components/VAppBar/VAppBarTitle.d.ts +3 -3
  29. package/lib/components/VAutocomplete/VAutocomplete.d.ts +116 -116
  30. package/lib/components/VAutocomplete/VAutocomplete.js +1 -1
  31. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  32. package/lib/components/VAvatar/VAvatar.d.ts +3 -3
  33. package/lib/components/VBadge/VBadge.d.ts +3 -3
  34. package/lib/components/VBanner/VBanner.d.ts +3 -3
  35. package/lib/components/VBanner/VBannerActions.d.ts +3 -3
  36. package/lib/components/VBanner/VBannerText.d.ts +3 -3
  37. package/lib/components/VBottomNavigation/VBottomNavigation.d.ts +3 -3
  38. package/lib/components/VBottomSheet/VBottomSheet.d.ts +3 -3
  39. package/lib/components/VBreadcrumbs/VBreadcrumbs.d.ts +3 -3
  40. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.d.ts +3 -3
  41. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.d.ts +3 -3
  42. package/lib/components/VBtn/VBtn.d.ts +6 -6
  43. package/lib/components/VBtn/VBtn.js +4 -4
  44. package/lib/components/VBtn/VBtn.js.map +1 -1
  45. package/lib/components/VBtnGroup/VBtnGroup.d.ts +3 -3
  46. package/lib/components/VBtnToggle/VBtnToggle.d.ts +3 -3
  47. package/lib/components/VCard/VCard.d.ts +6 -6
  48. package/lib/components/VCard/VCard.js +2 -2
  49. package/lib/components/VCard/VCard.js.map +1 -1
  50. package/lib/components/VCard/VCardActions.d.ts +3 -3
  51. package/lib/components/VCard/VCardItem.d.ts +3 -3
  52. package/lib/components/VCard/VCardSubtitle.d.ts +3 -3
  53. package/lib/components/VCard/VCardText.d.ts +3 -3
  54. package/lib/components/VCard/VCardTitle.d.ts +3 -3
  55. package/lib/components/VCarousel/VCarousel.d.ts +3 -3
  56. package/lib/components/VCarousel/VCarouselItem.d.ts +3 -3
  57. package/lib/components/VCheckbox/VCheckbox.d.ts +15 -15
  58. package/lib/components/VCheckbox/VCheckboxBtn.d.ts +6 -6
  59. package/lib/components/VChip/VChip.d.ts +6 -6
  60. package/lib/components/VChip/VChip.js +2 -2
  61. package/lib/components/VChip/VChip.js.map +1 -1
  62. package/lib/components/VChipGroup/VChipGroup.d.ts +3 -3
  63. package/lib/components/VCode/index.d.ts +3 -3
  64. package/lib/components/VCombobox/VCombobox.d.ts +116 -116
  65. package/lib/components/VCombobox/VCombobox.js +6 -25
  66. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  67. package/lib/components/VCounter/VCounter.d.ts +3 -3
  68. package/lib/components/VDataIterator/VDataIterator.d.ts +9 -9
  69. package/lib/components/VDataTable/VDataTable.d.ts +3 -3
  70. package/lib/components/VDataTable/VDataTableServer.d.ts +3 -3
  71. package/lib/components/VDataTable/VDataTableVirtual.d.ts +6 -6
  72. package/lib/components/VDataTable/composables/expand.js +8 -8
  73. package/lib/components/VDataTable/composables/expand.js.map +1 -1
  74. package/lib/components/VDatePicker/VDatePicker.d.ts +3 -3
  75. package/lib/components/VDialog/VDialog.d.ts +12 -12
  76. package/lib/components/VDivider/VDivider.d.ts +3 -3
  77. package/lib/components/VEmptyState/VEmptyState.d.ts +6 -6
  78. package/lib/components/VExpansionPanel/VExpansionPanel.d.ts +6 -6
  79. package/lib/components/VExpansionPanel/VExpansionPanelText.d.ts +3 -3
  80. package/lib/components/VExpansionPanel/VExpansionPanelTitle.d.ts +6 -6
  81. package/lib/components/VExpansionPanel/VExpansionPanels.d.ts +6 -6
  82. package/lib/components/VFab/VFab.d.ts +6 -6
  83. package/lib/components/VField/VField.d.ts +3 -3
  84. package/lib/components/VField/VFieldLabel.d.ts +3 -3
  85. package/lib/components/VFileInput/VFileInput.d.ts +12 -12
  86. package/lib/components/VFooter/VFooter.d.ts +3 -3
  87. package/lib/components/VForm/VForm.d.ts +6 -6
  88. package/lib/components/VGrid/VCol.d.ts +3 -3
  89. package/lib/components/VGrid/VContainer.d.ts +3 -3
  90. package/lib/components/VGrid/VRow.d.ts +3 -3
  91. package/lib/components/VGrid/VSpacer.d.ts +3 -3
  92. package/lib/components/VIcon/VIcon.d.ts +3 -3
  93. package/lib/components/VImg/VImg.d.ts +3 -3
  94. package/lib/components/VInput/VInput.d.ts +3 -3
  95. package/lib/components/VItemGroup/VItemGroup.d.ts +3 -3
  96. package/lib/components/VKbd/VKbd.d.ts +3 -3
  97. package/lib/components/VLabel/VLabel.d.ts +3 -3
  98. package/lib/components/VLayout/VLayout.d.ts +3 -3
  99. package/lib/components/VLayout/VLayoutItem.d.ts +3 -3
  100. package/lib/components/VLazy/VLazy.d.ts +3 -3
  101. package/lib/components/VList/VList.d.ts +11 -11
  102. package/lib/components/VList/VList.js.map +1 -1
  103. package/lib/components/VList/VListGroup.d.ts +3 -3
  104. package/lib/components/VList/VListImg.d.ts +3 -3
  105. package/lib/components/VList/VListItem.d.ts +6 -6
  106. package/lib/components/VList/VListItem.js +2 -2
  107. package/lib/components/VList/VListItem.js.map +1 -1
  108. package/lib/components/VList/VListItemAction.d.ts +3 -3
  109. package/lib/components/VList/VListItemMedia.d.ts +3 -3
  110. package/lib/components/VList/VListItemSubtitle.d.ts +3 -3
  111. package/lib/components/VList/VListItemTitle.d.ts +3 -3
  112. package/lib/components/VList/VListSubheader.d.ts +3 -3
  113. package/lib/components/VLocaleProvider/VLocaleProvider.d.ts +3 -3
  114. package/lib/components/VMain/VMain.d.ts +3 -3
  115. package/lib/components/VMenu/VMenu.d.ts +15 -15
  116. package/lib/components/VMessages/VMessages.d.ts +3 -3
  117. package/lib/components/VNavigationDrawer/VNavigationDrawer.d.ts +3 -3
  118. package/lib/components/VNumberInput/VNumberInput.d.ts +66 -66
  119. package/lib/components/VNumberInput/VNumberInput.js +1 -0
  120. package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
  121. package/lib/components/VOtpInput/VOtpInput.d.ts +3 -3
  122. package/lib/components/VOverlay/VOverlay.d.ts +3 -3
  123. package/lib/components/VPagination/VPagination.d.ts +3 -3
  124. package/lib/components/VParallax/VParallax.d.ts +3 -3
  125. package/lib/components/VProgressCircular/VProgressCircular.d.ts +3 -3
  126. package/lib/components/VProgressLinear/VProgressLinear.d.ts +3 -3
  127. package/lib/components/VRadio/VRadio.d.ts +6 -6
  128. package/lib/components/VRadioGroup/VRadioGroup.d.ts +15 -15
  129. package/lib/components/VRangeSlider/VRangeSlider.d.ts +12 -12
  130. package/lib/components/VRating/VRating.d.ts +3 -3
  131. package/lib/components/VResponsive/VResponsive.d.ts +3 -3
  132. package/lib/components/VSelect/VSelect.d.ts +140 -140
  133. package/lib/components/VSelectionControl/VSelectionControl.d.ts +6 -6
  134. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.d.ts +6 -6
  135. package/lib/components/VSheet/VSheet.d.ts +3 -3
  136. package/lib/components/VSlideGroup/VSlideGroup.d.ts +3 -3
  137. package/lib/components/VSlider/VSlider.d.ts +12 -12
  138. package/lib/components/VSlider/VSliderThumb.d.ts +6 -6
  139. package/lib/components/VSlider/VSliderTrack.d.ts +3 -3
  140. package/lib/components/VSnackbar/VSnackbar.d.ts +12 -12
  141. package/lib/components/VSnackbarQueue/VSnackbarQueue.d.ts +3 -3
  142. package/lib/components/VSpeedDial/VSpeedDial.d.ts +9 -9
  143. package/lib/components/VStepper/VStepper.d.ts +3 -3
  144. package/lib/components/VStepper/VStepperHeader.d.ts +3 -3
  145. package/lib/components/VStepper/VStepperItem.d.ts +3 -3
  146. package/lib/components/VStepper/VStepperWindow.d.ts +3 -3
  147. package/lib/components/VStepper/VStepperWindowItem.d.ts +3 -3
  148. package/lib/components/VSwitch/VSwitch.d.ts +15 -15
  149. package/lib/components/VSwitch/VSwitch.js +2 -2
  150. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  151. package/lib/components/VSystemBar/VSystemBar.d.ts +3 -3
  152. package/lib/components/VTable/VTable.d.ts +3 -3
  153. package/lib/components/VTabs/VTab.d.ts +24 -24
  154. package/lib/components/VTabs/VTabs.d.ts +3 -3
  155. package/lib/components/VTabs/VTabsWindow.d.ts +3 -3
  156. package/lib/components/VTabs/VTabsWindowItem.d.ts +3 -3
  157. package/lib/components/VTextField/VTextField.d.ts +21 -21
  158. package/lib/components/VTextarea/VTextarea.d.ts +12 -12
  159. package/lib/components/VThemeProvider/VThemeProvider.d.ts +3 -3
  160. package/lib/components/VTimePicker/VTimePicker.d.ts +3 -3
  161. package/lib/components/VTimeline/VTimeline.d.ts +3 -3
  162. package/lib/components/VTimeline/VTimelineDivider.d.ts +3 -3
  163. package/lib/components/VTimeline/VTimelineItem.d.ts +3 -3
  164. package/lib/components/VToolbar/VToolbar.d.ts +3 -3
  165. package/lib/components/VToolbar/VToolbarItems.d.ts +3 -3
  166. package/lib/components/VToolbar/VToolbarTitle.d.ts +3 -3
  167. package/lib/components/VTooltip/VTooltip.d.ts +15 -15
  168. package/lib/components/VTreeview/VTreeview.d.ts +26 -26
  169. package/lib/components/VTreeview/VTreeviewGroup.d.ts +3 -3
  170. package/lib/components/VTreeview/VTreeviewItem.d.ts +24 -24
  171. package/lib/components/VVirtualScroll/VVirtualScroll.d.ts +6 -6
  172. package/lib/components/VVirtualScroll/VVirtualScrollItem.d.ts +3 -3
  173. package/lib/components/VWindow/VWindow.d.ts +3 -3
  174. package/lib/components/VWindow/VWindowItem.d.ts +3 -3
  175. package/lib/components/transitions/createTransition.d.ts +6 -6
  176. package/lib/components/transitions/index.d.ts +78 -78
  177. package/lib/composables/goto.js +2 -2
  178. package/lib/composables/goto.js.map +1 -1
  179. package/lib/composables/router.d.ts +2 -0
  180. package/lib/composables/router.js +6 -1
  181. package/lib/composables/router.js.map +1 -1
  182. package/lib/entry-bundler.js +1 -1
  183. package/lib/framework.d.ts +65 -65
  184. package/lib/framework.js +1 -1
  185. package/lib/labs/VCalendar/VCalendar.js +0 -1
  186. package/lib/labs/VCalendar/VCalendar.js.map +1 -1
  187. package/lib/labs/VColorInput/VColorInput.d.ts +6 -6
  188. package/lib/labs/VDateInput/VDateInput.d.ts +66 -66
  189. package/lib/labs/VFileUpload/VFileUpload.d.ts +3 -3
  190. package/lib/labs/VFileUpload/VFileUploadItem.d.ts +6 -6
  191. package/lib/labs/VHotkey/VHotkey.d.ts +3 -3
  192. package/lib/labs/VIconBtn/VIconBtn.d.ts +3 -3
  193. package/lib/labs/VMaskInput/VMaskInput.d.ts +66 -66
  194. package/lib/labs/VPicker/VPicker.d.ts +3 -3
  195. package/lib/labs/VPicker/VPickerTitle.d.ts +3 -3
  196. package/lib/labs/VPie/VPieTooltip.d.ts +3 -3
  197. package/lib/labs/VStepperVertical/VStepperVertical.d.ts +6 -6
  198. package/lib/labs/VStepperVertical/VStepperVerticalItem.d.ts +6 -6
  199. package/lib/labs/VVideo/VVideo.d.ts +87 -87
  200. package/lib/labs/VVideo/VVideoControls.d.ts +40 -40
  201. package/lib/labs/VVideo/VVideoVolume.d.ts +33 -33
  202. package/lib/util/createSimpleFunctional.d.ts +3 -3
  203. package/lib/util/events.js +2 -2
  204. package/lib/util/events.js.map +1 -1
  205. package/package.json +9 -9
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.10.2
2
+ * Vuetify v3.10.3
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -1585,7 +1585,7 @@ const easingPatterns = {
1585
1585
  // Utilities
1586
1586
  function getPrefixedEventHandlers(attrs, suffix, getData) {
1587
1587
  return Object.keys(attrs).filter(key => isOn(key) && key.endsWith(suffix)).reduce((acc, key) => {
1588
- acc[key.slice(0, -suffix.length)] = event => attrs[key](event, getData(event));
1588
+ acc[key.slice(0, -suffix.length)] = event => callEvent(attrs[key], event, getData(event));
1589
1589
  return acc;
1590
1590
  }, {});
1591
1591
  }
@@ -5886,6 +5886,7 @@ function useLink(props, attrs) {
5886
5886
  const href = toRef(() => props.href);
5887
5887
  return {
5888
5888
  isLink,
5889
+ isRouterLink: toRef(() => false),
5889
5890
  isClickable,
5890
5891
  href,
5891
5892
  linkProps: reactive({
@@ -5909,8 +5910,10 @@ function useLink(props, attrs) {
5909
5910
  return link.value.isExactActive?.value && deepEqual(link.value.route.value.query, route.value.query);
5910
5911
  });
5911
5912
  const href = computed(() => props.to ? link.value?.route.value.href : props.href);
5913
+ const isRouterLink = toRef(() => !!props.to);
5912
5914
  return {
5913
5915
  isLink,
5916
+ isRouterLink,
5914
5917
  isClickable,
5915
5918
  isActive,
5916
5919
  route: link.value?.route,
@@ -5918,7 +5921,9 @@ function useLink(props, attrs) {
5918
5921
  href,
5919
5922
  linkProps: reactive({
5920
5923
  href,
5921
- 'aria-current': toRef(() => isActive.value ? 'page' : undefined)
5924
+ 'aria-current': toRef(() => isActive.value ? 'page' : undefined),
5925
+ 'aria-disabled': toRef(() => props.disabled && isLink.value ? 'true' : undefined),
5926
+ tabindex: toRef(() => props.disabled && isLink.value ? '-1' : undefined)
5922
5927
  })
5923
5928
  };
5924
5929
  }
@@ -6368,7 +6373,7 @@ const VBtn = genericComponent()({
6368
6373
  if (props.active !== undefined) {
6369
6374
  return props.active;
6370
6375
  }
6371
- if (link.isLink.value) {
6376
+ if (link.isRouterLink.value) {
6372
6377
  return link.isActive?.value;
6373
6378
  }
6374
6379
  return group?.isSelected.value;
@@ -6409,7 +6414,7 @@ const VBtn = genericComponent()({
6409
6414
  const hasPrepend = !!(props.prependIcon || slots.prepend);
6410
6415
  const hasAppend = !!(props.appendIcon || slots.append);
6411
6416
  const hasIcon = !!(props.icon && props.icon !== true);
6412
- return withDirectives(createVNode(Tag, mergeProps({
6417
+ return withDirectives(createVNode(Tag, mergeProps(link.linkProps, {
6413
6418
  "type": Tag === 'a' ? undefined : 'button',
6414
6419
  "class": ['v-btn', group?.selectedClass.value, {
6415
6420
  'v-btn--active': isActive.value,
@@ -6425,11 +6430,11 @@ const VBtn = genericComponent()({
6425
6430
  }, props.spaced ? ['v-btn--spaced', `v-btn--spaced-${props.spaced}`] : [], themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, props.class],
6426
6431
  "style": [colorStyles.value, dimensionStyles.value, locationStyles.value, sizeStyles.value, props.style],
6427
6432
  "aria-busy": props.loading ? true : undefined,
6428
- "disabled": isDisabled.value || undefined,
6433
+ "disabled": isDisabled.value && Tag !== 'a' || undefined,
6429
6434
  "tabindex": props.loading || props.readonly ? -1 : undefined,
6430
6435
  "onClick": onClick,
6431
6436
  "value": valueAttr.value
6432
- }, link.linkProps), {
6437
+ }), {
6433
6438
  default: () => [genOverlays(true, 'v-btn'), !props.icon && hasPrepend && createElementVNode("span", {
6434
6439
  "key": "prepend",
6435
6440
  "class": "v-btn__prepend"
@@ -8174,7 +8179,7 @@ async function scrollTo(_target, _options, horizontal, goTo) {
8174
8179
  const rtl = goTo?.rtl.value;
8175
8180
  const target = (typeof _target === 'number' ? _target : getTarget$1(_target)) ?? 0;
8176
8181
  const container = options.container === 'parent' && target instanceof HTMLElement ? target.parentElement : getContainer(options.container);
8177
- const ease = window.matchMedia('(prefers-reduced-motion: reduce)').matches ? options.patterns.instant : typeof options.easing === 'function' ? options.easing : options.patterns[options.easing];
8182
+ const ease = PREFERS_REDUCED_MOTION() ? options.patterns.instant : typeof options.easing === 'function' ? options.easing : options.patterns[options.easing];
8178
8183
  if (!ease) throw new TypeError(`Easing function "${options.easing}" not found.`);
8179
8184
  let targetLocation;
8180
8185
  if (typeof target === 'number') {
@@ -8886,7 +8891,7 @@ const VChip = genericComponent()({
8886
8891
  const hasFilter = !!(slots.filter || props.filter) && group;
8887
8892
  const hasPrependMedia = !!(props.prependIcon || props.prependAvatar);
8888
8893
  const hasPrepend = !!(hasPrependMedia || slots.prepend);
8889
- return isActive.value && withDirectives(createVNode(Tag, mergeProps({
8894
+ return isActive.value && withDirectives(createVNode(Tag, mergeProps(link.linkProps, {
8890
8895
  "class": ['v-chip', {
8891
8896
  'v-chip--disabled': props.disabled,
8892
8897
  'v-chip--label': props.label,
@@ -8901,7 +8906,7 @@ const VChip = genericComponent()({
8901
8906
  "tabindex": isClickable.value ? 0 : undefined,
8902
8907
  "onClick": onClick,
8903
8908
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
8904
- }, link.linkProps), {
8909
+ }), {
8905
8910
  default: () => [genOverlays(isClickable.value, 'v-chip'), hasFilter && createVNode(VExpandXTransition, {
8906
8911
  "key": "filter"
8907
8912
  }, {
@@ -10104,7 +10109,7 @@ const VListItem = genericComponent()({
10104
10109
  if (props.activeColor) {
10105
10110
  deprecate('active-color', ['color', 'base-color']);
10106
10111
  }
10107
- return withDirectives(createVNode(Tag, mergeProps({
10112
+ return withDirectives(createVNode(Tag, mergeProps(link.linkProps, {
10108
10113
  "class": ['v-list-item', {
10109
10114
  'v-list-item--active': isActive.value,
10110
10115
  'v-list-item--disabled': props.disabled,
@@ -10120,7 +10125,7 @@ const VListItem = genericComponent()({
10120
10125
  "role": role.value,
10121
10126
  "onClick": onClick,
10122
10127
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
10123
- }, link.linkProps), {
10128
+ }), {
10124
10129
  default: () => [genOverlays(isClickable.value || isActive.value, 'v-list-item'), hasPrepend && createElementVNode("div", {
10125
10130
  "key": "prepend",
10126
10131
  "class": "v-list-item__prepend"
@@ -14402,7 +14407,7 @@ const VAutocomplete = genericComponent()({
14402
14407
  } else {
14403
14408
  if (!props.multiple && search.value == null) model.value = [];
14404
14409
  menu.value = false;
14405
- if (props.multiple || hasSelectionSlot.value) search.value = '';
14410
+ search.value = '';
14406
14411
  selectionIndex.value = -1;
14407
14412
  }
14408
14413
  });
@@ -15625,7 +15630,7 @@ const VCard = genericComponent()({
15625
15630
  const hasImage = !!(slots.image || props.image);
15626
15631
  const hasCardItem = hasHeader || hasPrepend || hasAppend;
15627
15632
  const hasText = !!(slots.text || props.text != null);
15628
- return withDirectives(createVNode(Tag, mergeProps({
15633
+ return withDirectives(createVNode(Tag, mergeProps(link.linkProps, {
15629
15634
  "class": ['v-card', {
15630
15635
  'v-card--disabled': props.disabled,
15631
15636
  'v-card--flat': props.flat,
@@ -15635,7 +15640,7 @@ const VCard = genericComponent()({
15635
15640
  "style": [colorStyles.value, dimensionStyles.value, locationStyles.value, props.style],
15636
15641
  "onClick": isClickable && link.navigate,
15637
15642
  "tabindex": props.disabled ? -1 : undefined
15638
- }, link.linkProps), {
15643
+ }), {
15639
15644
  default: () => [hasImage && createElementVNode("div", {
15640
15645
  "key": "image",
15641
15646
  "class": "v-card__image"
@@ -19494,7 +19499,6 @@ const VCombobox = genericComponent()({
19494
19499
  const isFocused = shallowRef(false);
19495
19500
  const isPristine = shallowRef(true);
19496
19501
  const listHasFocus = shallowRef(false);
19497
- const showAllItemsForNoMatch = shallowRef(false);
19498
19502
  const vMenuRef = ref();
19499
19503
  const vVirtualScrollRef = ref();
19500
19504
  const selectionIndex = shallowRef(-1);
@@ -19550,22 +19554,14 @@ const VCombobox = genericComponent()({
19550
19554
  const {
19551
19555
  filteredItems,
19552
19556
  getMatches
19553
- } = useFilter(props, items, search);
19554
- const hasMatchingItems = computed(() => {
19555
- return props.hideSelected ? filteredItems.value.some(filteredItem => !model.value.some(s => s.value === filteredItem.value)) : filteredItems.value.length > 0;
19556
- });
19557
+ } = useFilter(props, items, () => isPristine.value ? '' : search.value);
19557
19558
  const displayItems = computed(() => {
19558
19559
  if (props.hideSelected) {
19559
19560
  return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value));
19560
19561
  }
19561
- if (filteredItems.value.length === 0 && showAllItemsForNoMatch.value) {
19562
- return items.value;
19563
- }
19564
19562
  return filteredItems.value;
19565
19563
  });
19566
- const menuDisabled = computed(() => {
19567
- return form.isReadonly.value || form.isDisabled.value;
19568
- });
19564
+ const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
19569
19565
  const _menu = useProxiedModel(props, 'menu');
19570
19566
  const menu = computed({
19571
19567
  get: () => _menu.value,
@@ -19582,17 +19578,13 @@ const VCombobox = genericComponent()({
19582
19578
  ariaLabel
19583
19579
  } = useMenuActivator(props, menu);
19584
19580
  watch(_search, value => {
19585
- showAllItemsForNoMatch.value = false;
19586
19581
  if (cleared) {
19587
19582
  // wait for clear to finish, VTextField sets _search to null
19588
19583
  // then search computed triggers and updates _search to ''
19589
19584
  nextTick(() => cleared = false);
19590
19585
  } else if (isFocused.value && !menu.value) {
19591
- menu.value = hasMatchingItems.value || !props.hideNoData;
19592
- } else if (isFocused.value && menu.value && !hasMatchingItems.value && props.hideNoData) {
19593
- menu.value = false;
19586
+ menu.value = true;
19594
19587
  }
19595
- isPristine.value = !value;
19596
19588
  emit('update:search', value);
19597
19589
  });
19598
19590
  watch(model, value => {
@@ -19771,19 +19763,13 @@ const VCombobox = genericComponent()({
19771
19763
  }
19772
19764
  }
19773
19765
  });
19774
- watch(menu, val => {
19775
- if (!props.hideSelected && val && model.value.length) {
19766
+ watch(menu, () => {
19767
+ if (!props.hideSelected && menu.value && model.value.length) {
19776
19768
  const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
19777
19769
  IN_BROWSER && window.requestAnimationFrame(() => {
19778
19770
  index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
19779
19771
  });
19780
19772
  }
19781
- if (val && search.value && !hasMatchingItems.value) {
19782
- showAllItemsForNoMatch.value = true;
19783
- }
19784
- isPristine.value = !search.value;
19785
- }, {
19786
- immediate: true
19787
19773
  });
19788
19774
  watch(items, (newVal, oldVal) => {
19789
19775
  if (menu.value) return;
@@ -19980,7 +19966,7 @@ const VCombobox = genericComponent()({
19980
19966
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
19981
19967
  args[_key] = arguments[_key];
19982
19968
  }
19983
- return createElementVNode(Fragment, null, [slots['append-inner']?.(...args), props.menuIcon ? createVNode(VIcon, {
19969
+ return createElementVNode(Fragment, null, [slots['append-inner']?.(...args), (!props.hideNoData || props.items.length) && props.menuIcon ? createVNode(VIcon, {
19984
19970
  "class": "v-combobox__menu-icon",
19985
19971
  "color": vTextFieldRef.value?.fieldIconColor,
19986
19972
  "icon": props.menuIcon,
@@ -20123,20 +20109,20 @@ function provideExpanded(props) {
20123
20109
  }, v => {
20124
20110
  return [...v.values()];
20125
20111
  });
20126
- function getItemKey(item) {
20127
- return isObject(item.value) ? item.key : item.value;
20128
- }
20129
20112
  function expand(item, value) {
20130
20113
  const newExpanded = new Set(expanded.value);
20114
+ const rawValue = toRaw(item.value);
20131
20115
  if (!value) {
20132
- newExpanded.delete(getItemKey(item));
20116
+ const item = [...expanded.value].find(x => toRaw(x) === rawValue);
20117
+ newExpanded.delete(item);
20133
20118
  } else {
20134
- newExpanded.add(getItemKey(item));
20119
+ newExpanded.add(rawValue);
20135
20120
  }
20136
20121
  expanded.value = newExpanded;
20137
20122
  }
20138
20123
  function isExpanded(item) {
20139
- return expanded.value.has(getItemKey(item));
20124
+ const rawValue = toRaw(item.value);
20125
+ return [...expanded.value].some(x => toRaw(x) === rawValue);
20140
20126
  }
20141
20127
  function toggleExpand(item) {
20142
20128
  expand(item, !isExpanded(item));
@@ -26999,6 +26985,7 @@ const VNumberInput = genericComponent()({
26999
26985
  useRender(() => {
27000
26986
  const {
27001
26987
  modelValue: _,
26988
+ type,
27002
26989
  ...textFieldProps
27003
26990
  } = VTextField.filterProps(props);
27004
26991
  function incrementControlNode() {
@@ -29448,7 +29435,7 @@ const VSwitch = genericComponent()({
29448
29435
  } = useFocus(props);
29449
29436
  const control = ref();
29450
29437
  const inputRef = ref();
29451
- const isForcedColorsModeActive = IN_BROWSER && window.matchMedia('(forced-colors: active)').matches;
29438
+ const isForcedColorsModeActive = SUPPORTS_MATCH_MEDIA && window.matchMedia('(forced-colors: active)').matches;
29452
29439
  const loaderColor = toRef(() => {
29453
29440
  return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
29454
29441
  });
@@ -32250,7 +32237,7 @@ function createVuetify$1() {
32250
32237
  };
32251
32238
  });
32252
32239
  }
32253
- const version$1 = "3.10.2";
32240
+ const version$1 = "3.10.3";
32254
32241
  createVuetify$1.version = version$1;
32255
32242
 
32256
32243
  // Vue's inject() can only be used in setup
@@ -32275,7 +32262,7 @@ const createVuetify = function () {
32275
32262
  ...options
32276
32263
  });
32277
32264
  };
32278
- const version = "3.10.2";
32265
+ const version = "3.10.3";
32279
32266
  createVuetify.version = version;
32280
32267
 
32281
32268
  export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useHotkey, useLayout, useLocale, useMask, useRtl, useTheme, version };