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
  */
@@ -1623,7 +1623,7 @@
1623
1623
  // Utilities
1624
1624
  function getPrefixedEventHandlers(attrs, suffix, getData) {
1625
1625
  return Object.keys(attrs).filter(key => isOn(key) && key.endsWith(suffix)).reduce((acc, key) => {
1626
- acc[key.slice(0, -suffix.length)] = event => attrs[key](event, getData(event));
1626
+ acc[key.slice(0, -suffix.length)] = event => callEvent(attrs[key], event, getData(event));
1627
1627
  return acc;
1628
1628
  }, {});
1629
1629
  }
@@ -5644,6 +5644,7 @@
5644
5644
  const href = vue.toRef(() => props.href);
5645
5645
  return {
5646
5646
  isLink,
5647
+ isRouterLink: vue.toRef(() => false),
5647
5648
  isClickable,
5648
5649
  href,
5649
5650
  linkProps: vue.reactive({
@@ -5667,8 +5668,10 @@
5667
5668
  return link.value.isExactActive?.value && deepEqual(link.value.route.value.query, route.value.query);
5668
5669
  });
5669
5670
  const href = vue.computed(() => props.to ? link.value?.route.value.href : props.href);
5671
+ const isRouterLink = vue.toRef(() => !!props.to);
5670
5672
  return {
5671
5673
  isLink,
5674
+ isRouterLink,
5672
5675
  isClickable,
5673
5676
  isActive,
5674
5677
  route: link.value?.route,
@@ -5676,7 +5679,9 @@
5676
5679
  href,
5677
5680
  linkProps: vue.reactive({
5678
5681
  href,
5679
- 'aria-current': vue.toRef(() => isActive.value ? 'page' : undefined)
5682
+ 'aria-current': vue.toRef(() => isActive.value ? 'page' : undefined),
5683
+ 'aria-disabled': vue.toRef(() => props.disabled && isLink.value ? 'true' : undefined),
5684
+ tabindex: vue.toRef(() => props.disabled && isLink.value ? '-1' : undefined)
5680
5685
  })
5681
5686
  };
5682
5687
  }
@@ -6126,7 +6131,7 @@
6126
6131
  if (props.active !== undefined) {
6127
6132
  return props.active;
6128
6133
  }
6129
- if (link.isLink.value) {
6134
+ if (link.isRouterLink.value) {
6130
6135
  return link.isActive?.value;
6131
6136
  }
6132
6137
  return group?.isSelected.value;
@@ -6167,7 +6172,7 @@
6167
6172
  const hasPrepend = !!(props.prependIcon || slots.prepend);
6168
6173
  const hasAppend = !!(props.appendIcon || slots.append);
6169
6174
  const hasIcon = !!(props.icon && props.icon !== true);
6170
- return vue.withDirectives(vue.createVNode(Tag, vue.mergeProps({
6175
+ return vue.withDirectives(vue.createVNode(Tag, vue.mergeProps(link.linkProps, {
6171
6176
  "type": Tag === 'a' ? undefined : 'button',
6172
6177
  "class": ['v-btn', group?.selectedClass.value, {
6173
6178
  'v-btn--active': isActive.value,
@@ -6183,11 +6188,11 @@
6183
6188
  }, 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],
6184
6189
  "style": [colorStyles.value, dimensionStyles.value, locationStyles.value, sizeStyles.value, props.style],
6185
6190
  "aria-busy": props.loading ? true : undefined,
6186
- "disabled": isDisabled.value || undefined,
6191
+ "disabled": isDisabled.value && Tag !== 'a' || undefined,
6187
6192
  "tabindex": props.loading || props.readonly ? -1 : undefined,
6188
6193
  "onClick": onClick,
6189
6194
  "value": valueAttr.value
6190
- }, link.linkProps), {
6195
+ }), {
6191
6196
  default: () => [genOverlays(true, 'v-btn'), !props.icon && hasPrepend && vue.createElementVNode("span", {
6192
6197
  "key": "prepend",
6193
6198
  "class": "v-btn__prepend"
@@ -7932,7 +7937,7 @@
7932
7937
  const rtl = goTo?.rtl.value;
7933
7938
  const target = (typeof _target === 'number' ? _target : getTarget$1(_target)) ?? 0;
7934
7939
  const container = options.container === 'parent' && target instanceof HTMLElement ? target.parentElement : getContainer(options.container);
7935
- const ease = window.matchMedia('(prefers-reduced-motion: reduce)').matches ? options.patterns.instant : typeof options.easing === 'function' ? options.easing : options.patterns[options.easing];
7940
+ const ease = PREFERS_REDUCED_MOTION() ? options.patterns.instant : typeof options.easing === 'function' ? options.easing : options.patterns[options.easing];
7936
7941
  if (!ease) throw new TypeError(`Easing function "${options.easing}" not found.`);
7937
7942
  let targetLocation;
7938
7943
  if (typeof target === 'number') {
@@ -8644,7 +8649,7 @@
8644
8649
  const hasFilter = !!(slots.filter || props.filter) && group;
8645
8650
  const hasPrependMedia = !!(props.prependIcon || props.prependAvatar);
8646
8651
  const hasPrepend = !!(hasPrependMedia || slots.prepend);
8647
- return isActive.value && vue.withDirectives(vue.createVNode(Tag, vue.mergeProps({
8652
+ return isActive.value && vue.withDirectives(vue.createVNode(Tag, vue.mergeProps(link.linkProps, {
8648
8653
  "class": ['v-chip', {
8649
8654
  'v-chip--disabled': props.disabled,
8650
8655
  'v-chip--label': props.label,
@@ -8659,7 +8664,7 @@
8659
8664
  "tabindex": isClickable.value ? 0 : undefined,
8660
8665
  "onClick": onClick,
8661
8666
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
8662
- }, link.linkProps), {
8667
+ }), {
8663
8668
  default: () => [genOverlays(isClickable.value, 'v-chip'), hasFilter && vue.createVNode(VExpandXTransition, {
8664
8669
  "key": "filter"
8665
8670
  }, {
@@ -9862,7 +9867,7 @@
9862
9867
  if (props.activeColor) {
9863
9868
  deprecate('active-color', ['color', 'base-color']);
9864
9869
  }
9865
- return vue.withDirectives(vue.createVNode(Tag, vue.mergeProps({
9870
+ return vue.withDirectives(vue.createVNode(Tag, vue.mergeProps(link.linkProps, {
9866
9871
  "class": ['v-list-item', {
9867
9872
  'v-list-item--active': isActive.value,
9868
9873
  'v-list-item--disabled': props.disabled,
@@ -9878,7 +9883,7 @@
9878
9883
  "role": role.value,
9879
9884
  "onClick": onClick,
9880
9885
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
9881
- }, link.linkProps), {
9886
+ }), {
9882
9887
  default: () => [genOverlays(isClickable.value || isActive.value, 'v-list-item'), hasPrepend && vue.createElementVNode("div", {
9883
9888
  "key": "prepend",
9884
9889
  "class": "v-list-item__prepend"
@@ -14160,7 +14165,7 @@
14160
14165
  } else {
14161
14166
  if (!props.multiple && search.value == null) model.value = [];
14162
14167
  menu.value = false;
14163
- if (props.multiple || hasSelectionSlot.value) search.value = '';
14168
+ search.value = '';
14164
14169
  selectionIndex.value = -1;
14165
14170
  }
14166
14171
  });
@@ -15383,7 +15388,7 @@
15383
15388
  const hasImage = !!(slots.image || props.image);
15384
15389
  const hasCardItem = hasHeader || hasPrepend || hasAppend;
15385
15390
  const hasText = !!(slots.text || props.text != null);
15386
- return vue.withDirectives(vue.createVNode(Tag, vue.mergeProps({
15391
+ return vue.withDirectives(vue.createVNode(Tag, vue.mergeProps(link.linkProps, {
15387
15392
  "class": ['v-card', {
15388
15393
  'v-card--disabled': props.disabled,
15389
15394
  'v-card--flat': props.flat,
@@ -15393,7 +15398,7 @@
15393
15398
  "style": [colorStyles.value, dimensionStyles.value, locationStyles.value, props.style],
15394
15399
  "onClick": isClickable && link.navigate,
15395
15400
  "tabindex": props.disabled ? -1 : undefined
15396
- }, link.linkProps), {
15401
+ }), {
15397
15402
  default: () => [hasImage && vue.createElementVNode("div", {
15398
15403
  "key": "image",
15399
15404
  "class": "v-card__image"
@@ -19261,7 +19266,6 @@
19261
19266
  const isFocused = vue.shallowRef(false);
19262
19267
  const isPristine = vue.shallowRef(true);
19263
19268
  const listHasFocus = vue.shallowRef(false);
19264
- const showAllItemsForNoMatch = vue.shallowRef(false);
19265
19269
  const vMenuRef = vue.ref();
19266
19270
  const vVirtualScrollRef = vue.ref();
19267
19271
  const selectionIndex = vue.shallowRef(-1);
@@ -19317,22 +19321,14 @@
19317
19321
  const {
19318
19322
  filteredItems,
19319
19323
  getMatches
19320
- } = useFilter(props, items, search);
19321
- const hasMatchingItems = vue.computed(() => {
19322
- return props.hideSelected ? filteredItems.value.some(filteredItem => !model.value.some(s => s.value === filteredItem.value)) : filteredItems.value.length > 0;
19323
- });
19324
+ } = useFilter(props, items, () => isPristine.value ? '' : search.value);
19324
19325
  const displayItems = vue.computed(() => {
19325
19326
  if (props.hideSelected) {
19326
19327
  return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value));
19327
19328
  }
19328
- if (filteredItems.value.length === 0 && showAllItemsForNoMatch.value) {
19329
- return items.value;
19330
- }
19331
19329
  return filteredItems.value;
19332
19330
  });
19333
- const menuDisabled = vue.computed(() => {
19334
- return form.isReadonly.value || form.isDisabled.value;
19335
- });
19331
+ const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
19336
19332
  const _menu = useProxiedModel(props, 'menu');
19337
19333
  const menu = vue.computed({
19338
19334
  get: () => _menu.value,
@@ -19349,17 +19345,13 @@
19349
19345
  ariaLabel
19350
19346
  } = useMenuActivator(props, menu);
19351
19347
  vue.watch(_search, value => {
19352
- showAllItemsForNoMatch.value = false;
19353
19348
  if (cleared) {
19354
19349
  // wait for clear to finish, VTextField sets _search to null
19355
19350
  // then search computed triggers and updates _search to ''
19356
19351
  vue.nextTick(() => cleared = false);
19357
19352
  } else if (isFocused.value && !menu.value) {
19358
- menu.value = hasMatchingItems.value || !props.hideNoData;
19359
- } else if (isFocused.value && menu.value && !hasMatchingItems.value && props.hideNoData) {
19360
- menu.value = false;
19353
+ menu.value = true;
19361
19354
  }
19362
- isPristine.value = !value;
19363
19355
  emit('update:search', value);
19364
19356
  });
19365
19357
  vue.watch(model, value => {
@@ -19538,19 +19530,13 @@
19538
19530
  }
19539
19531
  }
19540
19532
  });
19541
- vue.watch(menu, val => {
19542
- if (!props.hideSelected && val && model.value.length) {
19533
+ vue.watch(menu, () => {
19534
+ if (!props.hideSelected && menu.value && model.value.length) {
19543
19535
  const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
19544
19536
  IN_BROWSER && window.requestAnimationFrame(() => {
19545
19537
  index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
19546
19538
  });
19547
19539
  }
19548
- if (val && search.value && !hasMatchingItems.value) {
19549
- showAllItemsForNoMatch.value = true;
19550
- }
19551
- isPristine.value = !search.value;
19552
- }, {
19553
- immediate: true
19554
19540
  });
19555
19541
  vue.watch(items, (newVal, oldVal) => {
19556
19542
  if (menu.value) return;
@@ -19747,7 +19733,7 @@
19747
19733
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
19748
19734
  args[_key] = arguments[_key];
19749
19735
  }
19750
- return vue.createElementVNode(vue.Fragment, null, [slots['append-inner']?.(...args), props.menuIcon ? vue.createVNode(VIcon, {
19736
+ return vue.createElementVNode(vue.Fragment, null, [slots['append-inner']?.(...args), (!props.hideNoData || props.items.length) && props.menuIcon ? vue.createVNode(VIcon, {
19751
19737
  "class": "v-combobox__menu-icon",
19752
19738
  "color": vTextFieldRef.value?.fieldIconColor,
19753
19739
  "icon": props.menuIcon,
@@ -19890,20 +19876,20 @@
19890
19876
  }, v => {
19891
19877
  return [...v.values()];
19892
19878
  });
19893
- function getItemKey(item) {
19894
- return isObject(item.value) ? item.key : item.value;
19895
- }
19896
19879
  function expand(item, value) {
19897
19880
  const newExpanded = new Set(expanded.value);
19881
+ const rawValue = vue.toRaw(item.value);
19898
19882
  if (!value) {
19899
- newExpanded.delete(getItemKey(item));
19883
+ const item = [...expanded.value].find(x => vue.toRaw(x) === rawValue);
19884
+ newExpanded.delete(item);
19900
19885
  } else {
19901
- newExpanded.add(getItemKey(item));
19886
+ newExpanded.add(rawValue);
19902
19887
  }
19903
19888
  expanded.value = newExpanded;
19904
19889
  }
19905
19890
  function isExpanded(item) {
19906
- return expanded.value.has(getItemKey(item));
19891
+ const rawValue = vue.toRaw(item.value);
19892
+ return [...expanded.value].some(x => vue.toRaw(x) === rawValue);
19907
19893
  }
19908
19894
  function toggleExpand(item) {
19909
19895
  expand(item, !isExpanded(item));
@@ -26766,6 +26752,7 @@
26766
26752
  useRender(() => {
26767
26753
  const {
26768
26754
  modelValue: _,
26755
+ type,
26769
26756
  ...textFieldProps
26770
26757
  } = VTextField.filterProps(props);
26771
26758
  function incrementControlNode() {
@@ -29215,7 +29202,7 @@
29215
29202
  } = useFocus(props);
29216
29203
  const control = vue.ref();
29217
29204
  const inputRef = vue.ref();
29218
- const isForcedColorsModeActive = IN_BROWSER && window.matchMedia('(forced-colors: active)').matches;
29205
+ const isForcedColorsModeActive = SUPPORTS_MATCH_MEDIA && window.matchMedia('(forced-colors: active)').matches;
29219
29206
  const loaderColor = vue.toRef(() => {
29220
29207
  return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
29221
29208
  });
@@ -34239,7 +34226,6 @@
34239
34226
  "categories": categories,
34240
34227
  "onClick:date": (e, day) => {
34241
34228
  if (attrs['onUpdate:modelValue']) emit('update:modelValue', day.date);
34242
- if (attrs['onClick:date']) emit('click:date', e, day);
34243
34229
  }
34244
34230
  }), base.getScopedSlots()), [[vue.resolveDirective("resize"), base.updateEventVisibility, void 0, {
34245
34231
  quiet: true
@@ -37877,7 +37863,7 @@
37877
37863
  };
37878
37864
  });
37879
37865
  }
37880
- const version$1 = "3.10.2";
37866
+ const version$1 = "3.10.3";
37881
37867
  createVuetify$1.version = version$1;
37882
37868
 
37883
37869
  // Vue's inject() can only be used in setup
@@ -38175,7 +38161,7 @@
38175
38161
 
38176
38162
  /* eslint-disable local-rules/sort-imports */
38177
38163
 
38178
- const version = "3.10.2";
38164
+ const version = "3.10.3";
38179
38165
 
38180
38166
  /* eslint-disable local-rules/sort-imports */
38181
38167