vuetify 3.4.0-beta.0 → 3.4.0

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 (204) hide show
  1. package/dist/json/attributes.json +1980 -2004
  2. package/dist/json/importMap.json +110 -110
  3. package/dist/json/tags.json +1 -7
  4. package/dist/json/web-types.json +3767 -3807
  5. package/dist/vuetify-labs.css +1045 -1032
  6. package/dist/vuetify-labs.d.ts +227 -305
  7. package/dist/vuetify-labs.esm.js +115 -87
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +115 -87
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +546 -533
  12. package/dist/vuetify.d.ts +260 -338
  13. package/dist/vuetify.esm.js +115 -87
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +115 -87
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +963 -961
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAlert/index.d.mts +1 -1
  21. package/lib/components/VApp/index.d.mts +1 -1
  22. package/lib/components/VAppBar/VAppBar.mjs +1 -1
  23. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  24. package/lib/components/VAppBar/index.d.mts +1 -1
  25. package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -1
  26. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  27. package/lib/components/VAutocomplete/index.d.mts +1 -1
  28. package/lib/components/VAvatar/index.d.mts +1 -1
  29. package/lib/components/VBadge/VBadge.mjs +2 -2
  30. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  31. package/lib/components/VBadge/index.d.mts +1 -1
  32. package/lib/components/VBanner/index.d.mts +1 -1
  33. package/lib/components/VBottomNavigation/index.d.mts +1 -1
  34. package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -1
  35. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
  36. package/lib/components/VBottomSheet/index.d.mts +1 -1
  37. package/lib/components/VBreadcrumbs/index.d.mts +1 -1
  38. package/lib/components/VBtn/VBtn.css +0 -1
  39. package/lib/components/VBtn/_variables.scss +1 -1
  40. package/lib/components/VBtn/index.d.mts +1 -1
  41. package/lib/components/VBtnGroup/VBtnGroup.css +0 -1
  42. package/lib/components/VBtnGroup/index.d.mts +1 -1
  43. package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -1
  44. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  45. package/lib/components/VBtnToggle/index.d.mts +1 -1
  46. package/lib/components/VCard/index.d.mts +1 -1
  47. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  48. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  49. package/lib/components/VCarousel/VCarouselItem.mjs +2 -2
  50. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  51. package/lib/components/VCarousel/index.d.mts +1 -1
  52. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  53. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  54. package/lib/components/VCheckbox/VCheckboxBtn.mjs +1 -1
  55. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  56. package/lib/components/VCheckbox/index.d.mts +1 -1
  57. package/lib/components/VChip/index.d.mts +1 -1
  58. package/lib/components/VChipGroup/index.d.mts +1 -1
  59. package/lib/components/VCode/index.d.mts +1 -1
  60. package/lib/components/VColorPicker/VColorPicker.mjs +1 -1
  61. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  62. package/lib/components/VColorPicker/index.d.mts +1 -1
  63. package/lib/components/VCombobox/VCombobox.mjs +1 -1
  64. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  65. package/lib/components/VCombobox/index.d.mts +1 -1
  66. package/lib/components/VCounter/index.d.mts +1 -1
  67. package/lib/components/VDataIterator/index.d.mts +1 -1
  68. package/lib/components/VDataTable/VDataTable.css +6 -1
  69. package/lib/components/VDataTable/VDataTable.mjs +6 -5
  70. package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
  71. package/lib/components/VDataTable/VDataTable.sass +5 -1
  72. package/lib/components/VDataTable/VDataTableHeaders.mjs +3 -2
  73. package/lib/components/VDataTable/VDataTableHeaders.mjs.map +1 -1
  74. package/lib/components/VDataTable/VDataTableRow.mjs +8 -4
  75. package/lib/components/VDataTable/VDataTableRow.mjs.map +1 -1
  76. package/lib/components/VDataTable/VDataTableServer.mjs +8 -7
  77. package/lib/components/VDataTable/VDataTableServer.mjs.map +1 -1
  78. package/lib/components/VDataTable/VDataTableVirtual.mjs +7 -6
  79. package/lib/components/VDataTable/VDataTableVirtual.mjs.map +1 -1
  80. package/lib/components/VDataTable/index.d.mts +213 -196
  81. package/lib/components/VDatePicker/VDatePicker.mjs +6 -6
  82. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  83. package/lib/components/VDatePicker/index.d.mts +1 -1
  84. package/lib/components/VDefaultsProvider/index.d.mts +1 -1
  85. package/lib/components/VDialog/VDialog.mjs +1 -1
  86. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  87. package/lib/components/VDialog/index.d.mts +1 -1
  88. package/lib/components/VDivider/index.d.mts +1 -1
  89. package/lib/components/VExpansionPanel/index.d.mts +1 -1
  90. package/lib/components/VField/index.d.mts +1 -1
  91. package/lib/components/VFileInput/VFileInput.mjs +3 -3
  92. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  93. package/lib/components/VFileInput/index.d.mts +1 -1
  94. package/lib/components/VFooter/index.d.mts +1 -1
  95. package/lib/components/VForm/index.d.mts +1 -1
  96. package/lib/components/VGrid/VSpacer.mjs +3 -0
  97. package/lib/components/VGrid/VSpacer.mjs.map +1 -1
  98. package/lib/components/VGrid/index.d.mts +1 -1
  99. package/lib/components/VHover/index.d.mts +1 -1
  100. package/lib/components/VIcon/index.d.mts +1 -1
  101. package/lib/components/VImg/VImg.mjs +1 -1
  102. package/lib/components/VImg/VImg.mjs.map +1 -1
  103. package/lib/components/VImg/index.d.mts +1 -1
  104. package/lib/components/VInfiniteScroll/index.d.mts +1 -1
  105. package/lib/components/VInput/index.d.mts +1 -1
  106. package/lib/components/VItemGroup/index.d.mts +1 -1
  107. package/lib/components/VKbd/index.d.mts +1 -1
  108. package/lib/components/VLabel/index.d.mts +1 -1
  109. package/lib/components/VLayout/index.d.mts +1 -1
  110. package/lib/components/VLazy/index.d.mts +1 -1
  111. package/lib/components/VList/VList.mjs +2 -2
  112. package/lib/components/VList/VList.mjs.map +1 -1
  113. package/lib/components/VList/VListChildren.mjs +1 -1
  114. package/lib/components/VList/VListChildren.mjs.map +1 -1
  115. package/lib/components/VList/index.d.mts +1 -1
  116. package/lib/components/VLocaleProvider/index.d.mts +1 -1
  117. package/lib/components/VMain/index.d.mts +1 -1
  118. package/lib/components/VMenu/VMenu.mjs +1 -1
  119. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  120. package/lib/components/VMenu/index.d.mts +1 -1
  121. package/lib/components/VMessages/index.d.mts +1 -1
  122. package/lib/components/VNavigationDrawer/index.d.mts +1 -1
  123. package/lib/components/VOtpInput/index.d.mts +1 -1
  124. package/lib/components/VOverlay/index.d.mts +1 -1
  125. package/lib/components/VPagination/index.d.mts +1 -1
  126. package/lib/components/VParallax/index.d.mts +1 -1
  127. package/lib/components/VProgressCircular/index.d.mts +1 -1
  128. package/lib/components/VProgressLinear/index.d.mts +1 -1
  129. package/lib/components/VRadio/index.d.mts +1 -1
  130. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  131. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  132. package/lib/components/VRadioGroup/index.d.mts +1 -1
  133. package/lib/components/VRangeSlider/VRangeSlider.mjs +1 -1
  134. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  135. package/lib/components/VRangeSlider/index.d.mts +1 -1
  136. package/lib/components/VRating/index.d.mts +1 -1
  137. package/lib/components/VResponsive/index.d.mts +1 -1
  138. package/lib/components/VSelect/VSelect.mjs +1 -1
  139. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  140. package/lib/components/VSelect/index.d.mts +1 -1
  141. package/lib/components/VSelectionControl/index.d.mts +1 -1
  142. package/lib/components/VSelectionControlGroup/index.d.mts +1 -1
  143. package/lib/components/VSheet/index.d.mts +1 -1
  144. package/lib/components/VSkeletonLoader/index.d.mts +1 -1
  145. package/lib/components/VSlideGroup/index.d.mts +1 -1
  146. package/lib/components/VSlider/VSlider.mjs +1 -1
  147. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  148. package/lib/components/VSlider/index.d.mts +1 -1
  149. package/lib/components/VSnackbar/VSnackbar.mjs +1 -1
  150. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  151. package/lib/components/VSnackbar/index.d.mts +1 -1
  152. package/lib/components/VStepper/VStepper.mjs +1 -1
  153. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  154. package/lib/components/VStepper/VStepperWindow.mjs +9 -7
  155. package/lib/components/VStepper/VStepperWindow.mjs.map +1 -1
  156. package/lib/components/VStepper/VStepperWindowItem.mjs +4 -2
  157. package/lib/components/VStepper/VStepperWindowItem.mjs.map +1 -1
  158. package/lib/components/VStepper/index.d.mts +19 -141
  159. package/lib/components/VSwitch/VSwitch.mjs +2 -2
  160. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  161. package/lib/components/VSwitch/index.d.mts +1 -1
  162. package/lib/components/VSystemBar/index.d.mts +1 -1
  163. package/lib/components/VTable/VTable.css +12 -2
  164. package/lib/components/VTable/VTable.sass +7 -2
  165. package/lib/components/VTable/index.d.mts +1 -1
  166. package/lib/components/VTabs/VTab.mjs +1 -1
  167. package/lib/components/VTabs/VTab.mjs.map +1 -1
  168. package/lib/components/VTabs/VTabs.mjs +1 -1
  169. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  170. package/lib/components/VTabs/index.d.mts +1 -1
  171. package/lib/components/VTextField/VTextField.mjs +3 -3
  172. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  173. package/lib/components/VTextField/index.d.mts +1 -1
  174. package/lib/components/VTextarea/VTextarea.mjs +5 -3
  175. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  176. package/lib/components/VTextarea/index.d.mts +1 -1
  177. package/lib/components/VThemeProvider/index.d.mts +1 -1
  178. package/lib/components/VTimeline/index.d.mts +1 -1
  179. package/lib/components/VToolbar/index.d.mts +1 -1
  180. package/lib/components/VTooltip/VTooltip.mjs +1 -1
  181. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  182. package/lib/components/VTooltip/index.d.mts +1 -1
  183. package/lib/components/VValidation/index.d.mts +1 -1
  184. package/lib/components/VVirtualScroll/index.d.mts +1 -1
  185. package/lib/components/VWindow/index.d.mts +1 -1
  186. package/lib/components/index.d.mts +227 -305
  187. package/lib/components/transitions/index.d.mts +1 -1
  188. package/lib/composables/list-items.mjs +2 -2
  189. package/lib/composables/list-items.mjs.map +1 -1
  190. package/lib/entry-bundler.mjs +1 -1
  191. package/lib/entry-bundler.mjs.map +1 -1
  192. package/lib/framework.mjs +1 -1
  193. package/lib/framework.mjs.map +1 -1
  194. package/lib/index.d.mts +33 -33
  195. package/lib/labs/VConfirmEdit/index.d.mts +1 -1
  196. package/lib/labs/VPicker/VPicker.mjs +1 -1
  197. package/lib/labs/VPicker/VPicker.mjs.map +1 -1
  198. package/lib/labs/VPicker/index.d.mts +1 -1
  199. package/lib/labs/components.d.mts +1 -1
  200. package/lib/util/defineComponent.mjs +2 -2
  201. package/lib/util/defineComponent.mjs.map +1 -1
  202. package/lib/util/helpers.mjs +17 -3
  203. package/lib/util/helpers.mjs.map +1 -1
  204. package/package.json +3 -3
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.4.0-beta.0
2
+ * Vuetify v3.4.0
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -215,7 +215,21 @@ function keys(o) {
215
215
  function has(obj, key) {
216
216
  return key.every(k => obj.hasOwnProperty(k));
217
217
  }
218
- function pick(obj, paths, exclude) {
218
+ // Array of keys
219
+ function pick(obj, paths) {
220
+ const found = {};
221
+ const keys = new Set(Object.keys(obj));
222
+ for (const path of paths) {
223
+ if (keys.has(path)) {
224
+ found[path] = obj[path];
225
+ }
226
+ }
227
+ return found;
228
+ }
229
+
230
+ // Array of keys
231
+
232
+ function pickWithRest(obj, paths, exclude) {
219
233
  const found = Object.create(null);
220
234
  const rest = Object.create(null);
221
235
  for (const key in obj) {
@@ -253,9 +267,9 @@ function isComposingIgnoreKey(e) {
253
267
  * attributes should be passed to the <input> element inside.
254
268
  */
255
269
  function filterInputAttrs(attrs) {
256
- const [events, props] = pick(attrs, [onRE]);
270
+ const [events, props] = pickWithRest(attrs, [onRE]);
257
271
  const inputEvents = omit(events, bubblingEvents);
258
- const [rootAttrs, inputAttrs] = pick(props, ['class', 'style', 'id', /^data-/]);
272
+ const [rootAttrs, inputAttrs] = pickWithRest(props, ['class', 'style', 'id', /^data-/]);
259
273
  Object.assign(rootAttrs, events);
260
274
  Object.assign(inputAttrs, inputEvents);
261
275
  return [rootAttrs, inputAttrs];
@@ -1300,9 +1314,9 @@ function defineComponent(options) {
1300
1314
  }
1301
1315
  if (options._setup) {
1302
1316
  options.props = propsFactory(options.props ?? {}, options.name)();
1303
- const propKeys = Object.keys(options.props);
1317
+ const propKeys = Object.keys(options.props).filter(key => key !== 'class' && key !== 'style');
1304
1318
  options.filterProps = function filterProps(props) {
1305
- return pick(props, propKeys, ['class', 'style']);
1319
+ return pick(props, propKeys);
1306
1320
  };
1307
1321
  options.props._as = String;
1308
1322
  options.setup = function setup(props, ctx) {
@@ -3289,7 +3303,7 @@ const VImg = genericComponent()({
3289
3303
  });
3290
3304
  }
3291
3305
  useRender(() => {
3292
- const [responsiveProps] = VResponsive.filterProps(props);
3306
+ const responsiveProps = VResponsive.filterProps(props);
3293
3307
  return withDirectives(createVNode(VResponsive, mergeProps({
3294
3308
  "class": ['v-img', {
3295
3309
  'v-img--booting': !isBooted.value
@@ -3828,7 +3842,7 @@ const VAppBar = genericComponent()({
3828
3842
  absolute: toRef(props, 'absolute')
3829
3843
  });
3830
3844
  useRender(() => {
3831
- const [toolbarProps] = VToolbar.filterProps(props);
3845
+ const toolbarProps = VToolbar.filterProps(props);
3832
3846
  return createVNode(VToolbar, mergeProps({
3833
3847
  "ref": vToolbarRef,
3834
3848
  "class": ['v-app-bar', {
@@ -4202,7 +4216,7 @@ const VBtnToggle = genericComponent()({
4202
4216
  selected
4203
4217
  } = useGroup(props, VBtnToggleSymbol);
4204
4218
  useRender(() => {
4205
- const [btnGroupProps] = VBtnGroup.filterProps(props);
4219
+ const btnGroupProps = VBtnGroup.filterProps(props);
4206
4220
  return createVNode(VBtnGroup, mergeProps({
4207
4221
  "class": ['v-btn-toggle', props.class]
4208
4222
  }, btnGroupProps, {
@@ -6084,7 +6098,7 @@ const VCheckboxBtn = genericComponent()({
6084
6098
  return indeterminate.value ? props.indeterminateIcon : props.trueIcon;
6085
6099
  });
6086
6100
  useRender(() => {
6087
- const controlProps = omit(VSelectionControl.filterProps(props)[0], ['modelValue']);
6101
+ const controlProps = omit(VSelectionControl.filterProps(props), ['modelValue']);
6088
6102
  return createVNode(VSelectionControl, mergeProps(controlProps, {
6089
6103
  "modelValue": model.value,
6090
6104
  "onUpdate:modelValue": [$event => model.value = $event, onChange],
@@ -6664,8 +6678,8 @@ const VCheckbox = genericComponent()({
6664
6678
  const id = computed(() => props.id || `checkbox-${uid}`);
6665
6679
  useRender(() => {
6666
6680
  const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
6667
- const [inputProps, _1] = VInput.filterProps(props);
6668
- const [checkboxProps, _2] = VCheckboxBtn.filterProps(props);
6681
+ const inputProps = VInput.filterProps(props);
6682
+ const checkboxProps = VCheckboxBtn.filterProps(props);
6669
6683
  return createVNode(VInput, mergeProps({
6670
6684
  "class": ['v-checkbox', props.class]
6671
6685
  }, rootAttrs, inputProps, {
@@ -8033,7 +8047,7 @@ const VListChildren = genericComponent()({
8033
8047
  item
8034
8048
  }) : undefined
8035
8049
  };
8036
- const [listGroupProps, _1] = VListGroup.filterProps(itemProps);
8050
+ const listGroupProps = VListGroup.filterProps(itemProps);
8037
8051
  return children ? createVNode(VListGroup, mergeProps({
8038
8052
  "value": itemProps?.value
8039
8053
  }, listGroupProps), {
@@ -8098,7 +8112,7 @@ function transformItem$3(props, item) {
8098
8112
  const title = getPropertyFromItem(item, props.itemTitle, item);
8099
8113
  const value = getPropertyFromItem(item, props.itemValue, title);
8100
8114
  const children = getPropertyFromItem(item, props.itemChildren);
8101
- const itemProps = props.itemProps === true ? typeof item === 'object' && item != null && !Array.isArray(item) ? 'children' in item ? pick(item, ['children'])[1] : item : undefined : getPropertyFromItem(item, props.itemProps);
8115
+ const itemProps = props.itemProps === true ? typeof item === 'object' && item != null && !Array.isArray(item) ? 'children' in item ? omit(item, ['children']) : item : undefined : getPropertyFromItem(item, props.itemProps);
8102
8116
  const _props = {
8103
8117
  title,
8104
8118
  value,
@@ -8167,7 +8181,7 @@ function transformItem$2(props, item) {
8167
8181
  const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle);
8168
8182
  const value = getPropertyFromItem(item, props.itemValue, undefined);
8169
8183
  const children = getPropertyFromItem(item, props.itemChildren);
8170
- const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps);
8184
+ const itemProps = props.itemProps === true ? omit(item, ['children']) : getPropertyFromItem(item, props.itemProps);
8171
8185
  const _props = {
8172
8186
  title,
8173
8187
  value,
@@ -10138,7 +10152,7 @@ const VMenu = genericComponent()({
10138
10152
  onKeydown: onActivatorKeydown
10139
10153
  }, props.activatorProps));
10140
10154
  useRender(() => {
10141
- const [overlayProps] = VOverlay.filterProps(props);
10155
+ const overlayProps = VOverlay.filterProps(props);
10142
10156
  return createVNode(VOverlay, mergeProps({
10143
10157
  "ref": overlay,
10144
10158
  "class": ['v-menu', props.class],
@@ -10611,11 +10625,11 @@ const VTextField = genericComponent()({
10611
10625
  const hasCounter = !!(slots.counter || props.counter !== false && props.counter != null);
10612
10626
  const hasDetails = !!(hasCounter || slots.details);
10613
10627
  const [rootAttrs, inputAttrs] = filterInputAttrs(attrs);
10614
- const [{
10628
+ const {
10615
10629
  modelValue: _,
10616
10630
  ...inputProps
10617
- }] = VInput.filterProps(props);
10618
- const [fieldProps] = filterFieldProps(props);
10631
+ } = VInput.filterProps(props);
10632
+ const fieldProps = filterFieldProps(props);
10619
10633
  return createVNode(VInput, mergeProps({
10620
10634
  "ref": vInputRef,
10621
10635
  "modelValue": model.value,
@@ -11348,7 +11362,7 @@ const VSelect = genericComponent()({
11348
11362
  const hasChips = !!(props.chips || slots.chip);
11349
11363
  const hasList = !!(!props.hideNoData || displayItems.value.length || slots['prepend-item'] || slots['append-item'] || slots['no-data']);
11350
11364
  const isDirty = model.value.length > 0;
11351
- const [textFieldProps] = VTextField.filterProps(props);
11365
+ const textFieldProps = VTextField.filterProps(props);
11352
11366
  const placeholder = isDirty || !isFocused.value && props.label && !props.persistentPlaceholder ? undefined : props.placeholder;
11353
11367
  return createVNode(VTextField, mergeProps({
11354
11368
  "ref": vTextFieldRef
@@ -11880,7 +11894,7 @@ const VAutocomplete = genericComponent()({
11880
11894
  const hasChips = !!(props.chips || slots.chip);
11881
11895
  const hasList = !!(!props.hideNoData || displayItems.value.length || slots['prepend-item'] || slots['append-item'] || slots['no-data']);
11882
11896
  const isDirty = model.value.length > 0;
11883
- const [textFieldProps] = VTextField.filterProps(props);
11897
+ const textFieldProps = VTextField.filterProps(props);
11884
11898
  return createVNode(VTextField, mergeProps({
11885
11899
  "ref": vTextFieldRef
11886
11900
  }, textFieldProps, {
@@ -12117,7 +12131,7 @@ const VBadge = genericComponent()({
12117
12131
  useRender(() => {
12118
12132
  const value = Number(props.content);
12119
12133
  const content = !props.max || isNaN(value) ? props.content : value <= +props.max ? value : `${props.max}+`;
12120
- const [badgeAttrs, attrs] = pick(ctx.attrs, ['aria-atomic', 'aria-label', 'aria-live', 'role', 'title']);
12134
+ const [badgeAttrs, attrs] = pickWithRest(ctx.attrs, ['aria-atomic', 'aria-label', 'aria-live', 'role', 'title']);
12121
12135
  return createVNode(props.tag, mergeProps({
12122
12136
  "class": ['v-badge', {
12123
12137
  'v-badge--bordered': props.bordered,
@@ -12486,7 +12500,7 @@ const VDialog = genericComponent()({
12486
12500
  'aria-expanded': String(isActive.value)
12487
12501
  }, props.activatorProps));
12488
12502
  useRender(() => {
12489
- const [overlayProps] = VOverlay.filterProps(props);
12503
+ const overlayProps = VOverlay.filterProps(props);
12490
12504
  return createVNode(VOverlay, mergeProps({
12491
12505
  "ref": overlay,
12492
12506
  "class": ['v-dialog', {
@@ -12538,7 +12552,7 @@ const VBottomSheet = genericComponent()({
12538
12552
  } = _ref;
12539
12553
  const isActive = useProxiedModel(props, 'modelValue');
12540
12554
  useRender(() => {
12541
- const [dialogProps] = VDialog.filterProps(props);
12555
+ const dialogProps = VDialog.filterProps(props);
12542
12556
  return createVNode(VDialog, mergeProps(dialogProps, {
12543
12557
  "contentClass": ['v-bottom-sheet__content', props.contentClass],
12544
12558
  "modelValue": isActive.value,
@@ -13345,7 +13359,7 @@ const VCarousel = genericComponent()({
13345
13359
  window.requestAnimationFrame(startTimeout);
13346
13360
  }
13347
13361
  useRender(() => {
13348
- const [windowProps] = VWindow.filterProps(props);
13362
+ const windowProps = VWindow.filterProps(props);
13349
13363
  return createVNode(VWindow, mergeProps({
13350
13364
  "ref": windowRef
13351
13365
  }, windowProps, {
@@ -13535,8 +13549,8 @@ const VCarouselItem = genericComponent()({
13535
13549
  attrs
13536
13550
  } = _ref;
13537
13551
  useRender(() => {
13538
- const [imgProps] = VImg.filterProps(props);
13539
- const [windowItemProps] = VWindowItem.filterProps(props);
13552
+ const imgProps = VImg.filterProps(props);
13553
+ const windowItemProps = VWindowItem.filterProps(props);
13540
13554
  return createVNode(VWindowItem, mergeProps({
13541
13555
  "class": "v-carousel-item"
13542
13556
  }, windowItemProps), {
@@ -14608,7 +14622,7 @@ const VSlider = genericComponent()({
14608
14622
  } = useFocus(props);
14609
14623
  const trackStop = computed(() => position(model.value));
14610
14624
  useRender(() => {
14611
- const [inputProps, _] = VInput.filterProps(props);
14625
+ const inputProps = VInput.filterProps(props);
14612
14626
  const hasPrepend = !!(props.label || slots.label || slots.prepend);
14613
14627
  return createVNode(VInput, mergeProps({
14614
14628
  "class": ['v-slider', {
@@ -15279,7 +15293,7 @@ const VColorPicker = defineComponent({
15279
15293
  }
15280
15294
  });
15281
15295
  useRender(() => {
15282
- const [sheetProps] = VSheet.filterProps(props);
15296
+ const sheetProps = VSheet.filterProps(props);
15283
15297
  return createVNode(VSheet, mergeProps({
15284
15298
  "rounded": props.rounded,
15285
15299
  "elevation": props.elevation,
@@ -15624,7 +15638,7 @@ const VCombobox = genericComponent()({
15624
15638
  const hasChips = !!(props.chips || slots.chip);
15625
15639
  const hasList = !!(!props.hideNoData || displayItems.value.length || slots['prepend-item'] || slots['append-item'] || slots['no-data']);
15626
15640
  const isDirty = model.value.length > 0;
15627
- const [textFieldProps] = VTextField.filterProps(props);
15641
+ const textFieldProps = VTextField.filterProps(props);
15628
15642
  return createVNode(VTextField, mergeProps({
15629
15643
  "ref": vTextFieldRef
15630
15644
  }, textFieldProps, {
@@ -17730,11 +17744,12 @@ const VDataTableHeaders = genericComponent()({
17730
17744
  "colspan": column.colspan,
17731
17745
  "rowspan": column.rowspan,
17732
17746
  "onClick": column.sortable ? () => toggleSort(column) : undefined,
17747
+ "fixed": column.fixed,
17733
17748
  "lastFixed": column.lastFixed,
17734
17749
  "noPadding": noPadding
17735
17750
  }, column.headerProps), {
17736
17751
  default: () => {
17737
- const columnSlotName = `column.${column.key}`;
17752
+ const columnSlotName = `header.${column.key}`;
17738
17753
  const columnSlotProps = {
17739
17754
  column,
17740
17755
  selectAll,
@@ -17747,7 +17762,7 @@ const VDataTableHeaders = genericComponent()({
17747
17762
  };
17748
17763
  if (slots[columnSlotName]) return slots[columnSlotName](columnSlotProps);
17749
17764
  if (column.key === 'data-table-select') {
17750
- return slots['column.data-table-select']?.(columnSlotProps) ?? (showSelectAll && createVNode(VCheckboxBtn, {
17765
+ return slots['header.data-table-select']?.(columnSlotProps) ?? (showSelectAll && createVNode(VCheckboxBtn, {
17751
17766
  "modelValue": allSelected.value,
17752
17767
  "indeterminate": someSelected.value && !allSelected.value,
17753
17768
  "onUpdate:modelValue": selectAll
@@ -17873,7 +17888,9 @@ const makeVDataTableRowProps = propsFactory({
17873
17888
  index: Number,
17874
17889
  item: Object,
17875
17890
  cellProps: [Object, Function],
17876
- onClick: Function
17891
+ onClick: EventProp(),
17892
+ onContextmenu: EventProp(),
17893
+ onDblclick: EventProp()
17877
17894
  }, 'VDataTableRow');
17878
17895
  const VDataTableRow = genericComponent()({
17879
17896
  name: 'VDataTableRow',
@@ -17895,9 +17912,11 @@ const VDataTableRow = genericComponent()({
17895
17912
  } = useHeaders();
17896
17913
  useRender(() => createVNode("tr", {
17897
17914
  "class": ['v-data-table__tr', {
17898
- 'v-data-table__tr--clickable': !!props.onClick
17915
+ 'v-data-table__tr--clickable': !!(props.onClick || props.onContextmenu || props.onDblclick)
17899
17916
  }],
17900
- "onClick": props.onClick
17917
+ "onClick": props.onClick,
17918
+ "onContextmenu": props.onContextmenu,
17919
+ "onDblclick": props.onDblclick
17901
17920
  }, [props.item && columns.value.map((column, i) => {
17902
17921
  const item = props.item;
17903
17922
  const slotName = `item.${column.key}`;
@@ -18332,16 +18351,17 @@ const VDataTable = genericComponent()({
18332
18351
  toggleExpand,
18333
18352
  isGroupOpen,
18334
18353
  toggleGroup,
18335
- items: paginatedItemsWithoutGroups.value,
18354
+ items: paginatedItemsWithoutGroups.value.map(item => item.raw),
18355
+ internalItems: paginatedItemsWithoutGroups.value,
18336
18356
  groupedItems: paginatedItems.value,
18337
18357
  columns: columns.value,
18338
18358
  headers: headers.value
18339
18359
  }));
18340
18360
  useRender(() => {
18341
- const [dataTableFooterProps] = VDataTableFooter.filterProps(props);
18342
- const [dataTableHeadersProps] = VDataTableHeaders.filterProps(props);
18343
- const [dataTableRowsProps] = VDataTableRows.filterProps(props);
18344
- const [tableProps] = VTable.filterProps(props);
18361
+ const dataTableFooterProps = VDataTableFooter.filterProps(props);
18362
+ const dataTableHeadersProps = VDataTableHeaders.filterProps(props);
18363
+ const dataTableRowsProps = VDataTableRows.filterProps(props);
18364
+ const tableProps = VTable.filterProps(props);
18345
18365
  return createVNode(VTable, mergeProps({
18346
18366
  "class": ['v-data-table', {
18347
18367
  'v-data-table--show-select': props.showSelect,
@@ -18382,7 +18402,7 @@ const VDataTableVirtual = genericComponent()({
18382
18402
  },
18383
18403
  setup(props, _ref) {
18384
18404
  let {
18385
- emit,
18405
+ attrs,
18386
18406
  slots
18387
18407
  } = _ref;
18388
18408
  const {
@@ -18491,15 +18511,16 @@ const VDataTableVirtual = genericComponent()({
18491
18511
  toggleExpand,
18492
18512
  isGroupOpen,
18493
18513
  toggleGroup,
18494
- items: allItems.value,
18514
+ items: allItems.value.map(item => item.raw),
18515
+ internalItems: allItems.value,
18495
18516
  groupedItems: flatItems.value,
18496
18517
  columns: columns.value,
18497
18518
  headers: headers.value
18498
18519
  }));
18499
18520
  useRender(() => {
18500
- const [dataTableHeadersProps] = VDataTableHeaders.filterProps(props);
18501
- const [dataTableRowsProps] = VDataTableRows.filterProps(props);
18502
- const [tableProps] = VTable.filterProps(props);
18521
+ const dataTableHeadersProps = VDataTableHeaders.filterProps(props);
18522
+ const dataTableRowsProps = VDataTableRows.filterProps(props);
18523
+ const tableProps = VTable.filterProps(props);
18503
18524
  return createVNode(VTable, mergeProps({
18504
18525
  "class": ['v-data-table', {
18505
18526
  'v-data-table--loading': props.loading
@@ -18529,7 +18550,7 @@ const VDataTableVirtual = genericComponent()({
18529
18550
  height: 0,
18530
18551
  border: 0
18531
18552
  }
18532
- }, null)]), slots['body.prepend']?.(slotProps.value), createVNode(VDataTableRows, mergeProps(dataTableRowsProps, {
18553
+ }, null)]), slots['body.prepend']?.(slotProps.value), createVNode(VDataTableRows, mergeProps(attrs, dataTableRowsProps, {
18533
18554
  "items": displayItems.value
18534
18555
  }), {
18535
18556
  ...slots,
@@ -18594,7 +18615,7 @@ const VDataTableServer = genericComponent()({
18594
18615
  },
18595
18616
  setup(props, _ref) {
18596
18617
  let {
18597
- emit,
18618
+ attrs,
18598
18619
  slots
18599
18620
  } = _ref;
18600
18621
  const {
@@ -18701,16 +18722,17 @@ const VDataTableServer = genericComponent()({
18701
18722
  toggleExpand,
18702
18723
  isGroupOpen,
18703
18724
  toggleGroup,
18704
- items: itemsWithoutGroups.value,
18725
+ items: itemsWithoutGroups.value.map(item => item.raw),
18726
+ internalItems: itemsWithoutGroups.value,
18705
18727
  groupedItems: flatItems.value,
18706
18728
  columns: columns.value,
18707
18729
  headers: headers.value
18708
18730
  }));
18709
18731
  useRender(() => {
18710
- const [dataTableFooterProps] = VDataTableFooter.filterProps(props);
18711
- const [dataTableHeadersProps] = VDataTableHeaders.filterProps(props);
18712
- const [dataTableRowsProps] = VDataTableRows.filterProps(props);
18713
- const [tableProps] = VTable.filterProps(props);
18732
+ const dataTableFooterProps = VDataTableFooter.filterProps(props);
18733
+ const dataTableHeadersProps = VDataTableHeaders.filterProps(props);
18734
+ const dataTableRowsProps = VDataTableRows.filterProps(props);
18735
+ const tableProps = VTable.filterProps(props);
18714
18736
  return createVNode(VTable, mergeProps({
18715
18737
  "class": ['v-data-table', {
18716
18738
  'v-data-table--loading': props.loading
@@ -18726,7 +18748,7 @@ const VDataTableServer = genericComponent()({
18726
18748
  }), slots)]), slots.thead?.(slotProps.value), createVNode("tbody", {
18727
18749
  "class": "v-data-table__tbody",
18728
18750
  "role": "rowgroup"
18729
- }, [slots['body.prepend']?.(slotProps.value), slots.body ? slots.body(slotProps.value) : createVNode(VDataTableRows, mergeProps(dataTableRowsProps, {
18751
+ }, [slots['body.prepend']?.(slotProps.value), slots.body ? slots.body(slotProps.value) : createVNode(VDataTableRows, mergeProps(attrs, dataTableRowsProps, {
18730
18752
  "items": flatItems.value
18731
18753
  }), slots), slots['body.append']?.(slotProps.value)]), slots.tbody?.(slotProps.value), slots.tfoot?.(slotProps.value)]),
18732
18754
  bottom: () => slots.bottom ? slots.bottom(slotProps.value) : createVNode(VDataTableFooter, dataTableFooterProps, {
@@ -19005,7 +19027,7 @@ const VRow = genericComponent()({
19005
19027
  }
19006
19028
  });
19007
19029
 
19008
- // Utilities
19030
+ // Styles
19009
19031
  const VSpacer = createSimpleFunctional('v-spacer', 'div', 'VSpacer');
19010
19032
 
19011
19033
  // Types
@@ -19536,7 +19558,7 @@ const VPicker = genericComponent()({
19536
19558
  backgroundColorStyles
19537
19559
  } = useBackgroundColor(toRef(props, 'color'));
19538
19560
  useRender(() => {
19539
- const [sheetProps] = VSheet.filterProps(props);
19561
+ const sheetProps = VSheet.filterProps(props);
19540
19562
  const hasTitle = !!(props.title || slots.title);
19541
19563
  return createVNode(VSheet, mergeProps(sheetProps, {
19542
19564
  "color": props.bgColor,
@@ -19723,12 +19745,12 @@ const VDatePicker = genericComponent()({
19723
19745
  model.value = val;
19724
19746
  });
19725
19747
  useRender(() => {
19726
- const [pickerProps] = VPicker.filterProps(props);
19727
- const [datePickerControlsProps] = VDatePickerControls.filterProps(props);
19728
- const [datePickerHeaderProps] = VDatePickerHeader.filterProps(props);
19729
- const [datePickerMonthProps] = VDatePickerMonth.filterProps(props);
19730
- const [datePickerMonthsProps] = VDatePickerMonths.filterProps(omit(props, ['modelValue']));
19731
- const [datePickerYearsProps] = VDatePickerYears.filterProps(omit(props, ['modelValue']));
19748
+ const pickerProps = VPicker.filterProps(props);
19749
+ const datePickerControlsProps = VDatePickerControls.filterProps(props);
19750
+ const datePickerHeaderProps = VDatePickerHeader.filterProps(props);
19751
+ const datePickerMonthProps = VDatePickerMonth.filterProps(props);
19752
+ const datePickerMonthsProps = omit(VDatePickerMonths.filterProps(props), ['modelValue']);
19753
+ const datePickerYearsProps = omit(VDatePickerYears.filterProps(props), ['modelValue']);
19732
19754
  return createVNode(VPicker, mergeProps(pickerProps, {
19733
19755
  "class": ['v-date-picker', `v-date-picker--${viewMode.value}`, props.class],
19734
19756
  "style": props.style,
@@ -20144,11 +20166,11 @@ const VFileInput = genericComponent()({
20144
20166
  const hasCounter = !!(slots.counter || props.counter);
20145
20167
  const hasDetails = !!(hasCounter || slots.details);
20146
20168
  const [rootAttrs, inputAttrs] = filterInputAttrs(attrs);
20147
- const [{
20169
+ const {
20148
20170
  modelValue: _,
20149
20171
  ...inputProps
20150
- }] = VInput.filterProps(props);
20151
- const [fieldProps] = filterFieldProps(props);
20172
+ } = VInput.filterProps(props);
20173
+ const fieldProps = filterFieldProps(props);
20152
20174
  return createVNode(VInput, mergeProps({
20153
20175
  "ref": vInputRef,
20154
20176
  "modelValue": model.value,
@@ -22142,8 +22164,8 @@ const VRadioGroup = genericComponent()({
22142
22164
  const model = useProxiedModel(props, 'modelValue');
22143
22165
  useRender(() => {
22144
22166
  const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
22145
- const [inputProps, _1] = VInput.filterProps(props);
22146
- const [controlProps, _2] = VSelectionControl.filterProps(props);
22167
+ const inputProps = VInput.filterProps(props);
22168
+ const controlProps = VSelectionControl.filterProps(props);
22147
22169
  const label = slots.label ? slots.label({
22148
22170
  label: props.label,
22149
22171
  props: {
@@ -22288,7 +22310,7 @@ const VRangeSlider = genericComponent()({
22288
22310
  const trackStart = computed(() => position(model.value[0]));
22289
22311
  const trackStop = computed(() => position(model.value[1]));
22290
22312
  useRender(() => {
22291
- const [inputProps, _] = VInput.filterProps(props);
22313
+ const inputProps = VInput.filterProps(props);
22292
22314
  const hasPrepend = !!(props.label || slots.label || slots.prepend);
22293
22315
  return createVNode(VInput, mergeProps({
22294
22316
  "class": ['v-slider', 'v-range-slider', {
@@ -23233,7 +23255,7 @@ const VSnackbar = genericComponent()({
23233
23255
  startTimeout();
23234
23256
  }
23235
23257
  useRender(() => {
23236
- const [overlayProps] = VOverlay.filterProps(props);
23258
+ const overlayProps = VOverlay.filterProps(props);
23237
23259
  const hasContent = !!(slots.default || slots.text || props.text);
23238
23260
  return createVNode(VOverlay, mergeProps({
23239
23261
  "ref": overlay,
@@ -23482,9 +23504,7 @@ const VStepperItem = genericComponent()({
23482
23504
 
23483
23505
  const VStepperSymbol$1 = Symbol.for('vuetify:v-stepper');
23484
23506
  const makeVStepperWindowProps = propsFactory({
23485
- ...makeVWindowProps({
23486
- mandatory: false
23487
- })
23507
+ ...omit(makeVWindowProps(), ['continuous', 'nextIcon', 'prevIcon', 'showArrows', 'touch', 'mandatory'])
23488
23508
  }, 'VStepperWindow');
23489
23509
  const VStepperWindow = genericComponent()({
23490
23510
  name: 'VStepperWindow',
@@ -23513,11 +23533,15 @@ const VStepperWindow = genericComponent()({
23513
23533
  }
23514
23534
  });
23515
23535
  useRender(() => {
23516
- const [windowProps] = VWindow.filterProps(props);
23517
- return createVNode(VWindow, mergeProps(windowProps, {
23536
+ const windowProps = VWindow.filterProps(props);
23537
+ return createVNode(VWindow, mergeProps({
23538
+ "_as": "VStepperWindow"
23539
+ }, windowProps, {
23518
23540
  "modelValue": model.value,
23519
23541
  "onUpdate:modelValue": $event => model.value = $event,
23520
- "class": "v-stepper-window"
23542
+ "class": "v-stepper-window",
23543
+ "mandatory": false,
23544
+ "touch": false
23521
23545
  }), slots);
23522
23546
  });
23523
23547
  return {};
@@ -23535,8 +23559,10 @@ const VStepperWindowItem = genericComponent()({
23535
23559
  slots
23536
23560
  } = _ref;
23537
23561
  useRender(() => {
23538
- const [windowItemProps] = VWindowItem.filterProps(props);
23539
- return createVNode(VWindowItem, mergeProps(windowItemProps, {
23562
+ const windowItemProps = VWindowItem.filterProps(props);
23563
+ return createVNode(VWindowItem, mergeProps({
23564
+ "_as": "VStepperWindowItem"
23565
+ }, windowItemProps, {
23540
23566
  "class": "v-stepper-window-item"
23541
23567
  }), slots);
23542
23568
  });
@@ -23628,7 +23654,7 @@ const VStepper = genericComponent()({
23628
23654
  }
23629
23655
  });
23630
23656
  useRender(() => {
23631
- const [sheetProps] = VSheet.filterProps(props);
23657
+ const sheetProps = VSheet.filterProps(props);
23632
23658
  const hasHeader = !!(slots.header || props.items.length);
23633
23659
  const hasWindow = props.items.length > 0;
23634
23660
  const hasActions = !props.hideActions && !!(hasWindow || slots.actions);
@@ -23734,8 +23760,8 @@ const VSwitch = genericComponent()({
23734
23760
  }
23735
23761
  useRender(() => {
23736
23762
  const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
23737
- const [inputProps, _1] = VInput.filterProps(props);
23738
- const [controlProps, _2] = VSelectionControl.filterProps(props);
23763
+ const inputProps = VInput.filterProps(props);
23764
+ const controlProps = VSelectionControl.filterProps(props);
23739
23765
  return createVNode(VInput, mergeProps({
23740
23766
  "class": ['v-switch', {
23741
23767
  'v-switch--inset': props.inset
@@ -23948,7 +23974,7 @@ const VTab = genericComponent()({
23948
23974
  }
23949
23975
  }
23950
23976
  useRender(() => {
23951
- const [btnProps] = VBtn.filterProps(props);
23977
+ const btnProps = VBtn.filterProps(props);
23952
23978
  return createVNode(VBtn, mergeProps({
23953
23979
  "symbol": VTabsSymbol,
23954
23980
  "ref": rootEl,
@@ -24040,7 +24066,7 @@ const VTabs = genericComponent()({
24040
24066
  }
24041
24067
  });
24042
24068
  useRender(() => {
24043
- const [slideGroupProps] = VSlideGroup.filterProps(props);
24069
+ const slideGroupProps = VSlideGroup.filterProps(props);
24044
24070
  return createVNode(VSlideGroup, mergeProps(slideGroupProps, {
24045
24071
  "modelValue": model.value,
24046
24072
  "onUpdate:modelValue": $event => model.value = $event,
@@ -24207,11 +24233,11 @@ const VTextarea = genericComponent()({
24207
24233
  const hasCounter = !!(slots.counter || props.counter || props.counterValue);
24208
24234
  const hasDetails = !!(hasCounter || slots.details);
24209
24235
  const [rootAttrs, inputAttrs] = filterInputAttrs(attrs);
24210
- const [{
24236
+ const {
24211
24237
  modelValue: _,
24212
24238
  ...inputProps
24213
- }] = VInput.filterProps(props);
24214
- const [fieldProps] = filterFieldProps(props);
24239
+ } = VInput.filterProps(props);
24240
+ const fieldProps = filterFieldProps(props);
24215
24241
  return createVNode(VInput, mergeProps({
24216
24242
  "ref": vInputRef,
24217
24243
  "modelValue": model.value,
@@ -24233,6 +24259,7 @@ const VTextarea = genericComponent()({
24233
24259
  ...slots,
24234
24260
  default: _ref2 => {
24235
24261
  let {
24262
+ id,
24236
24263
  isDisabled,
24237
24264
  isDirty,
24238
24265
  isReadonly,
@@ -24249,6 +24276,7 @@ const VTextarea = genericComponent()({
24249
24276
  "onClick:prependInner": props['onClick:prependInner'],
24250
24277
  "onClick:appendInner": props['onClick:appendInner']
24251
24278
  }, fieldProps, {
24279
+ "id": id.value,
24252
24280
  "active": isActive.value || isDirty.value,
24253
24281
  "centerAffix": rows.value === 1 && !isPlainOrUnderlined.value,
24254
24282
  "dirty": isDirty.value || props.dirty,
@@ -24652,7 +24680,7 @@ const VTooltip = genericComponent()({
24652
24680
  'aria-describedby': id.value
24653
24681
  }, props.activatorProps));
24654
24682
  useRender(() => {
24655
- const [overlayProps] = VOverlay.filterProps(props);
24683
+ const overlayProps = VOverlay.filterProps(props);
24656
24684
  return createVNode(VOverlay, mergeProps({
24657
24685
  "ref": overlay,
24658
24686
  "class": ['v-tooltip', props.class],
@@ -25150,7 +25178,7 @@ function createVuetify$1() {
25150
25178
  date
25151
25179
  };
25152
25180
  }
25153
- const version$1 = "3.4.0-beta.0";
25181
+ const version$1 = "3.4.0";
25154
25182
  createVuetify$1.version = version$1;
25155
25183
 
25156
25184
  // Vue's inject() can only be used in setup
@@ -25164,7 +25192,7 @@ function inject(key) {
25164
25192
 
25165
25193
  /* eslint-disable local-rules/sort-imports */
25166
25194
 
25167
- const version = "3.4.0-beta.0";
25195
+ const version = "3.4.0";
25168
25196
 
25169
25197
  /* eslint-disable local-rules/sort-imports */
25170
25198