@vuetify/nightly 3.8.8-master.2025-06-04 → 3.8.8-master.2025-06-07

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 (41) hide show
  1. package/CHANGELOG.md +10 -3
  2. package/dist/json/attributes.json +3121 -3121
  3. package/dist/json/importMap-labs.json +24 -24
  4. package/dist/json/importMap.json +178 -178
  5. package/dist/json/web-types.json +5827 -5827
  6. package/dist/vuetify-labs.cjs +29 -35
  7. package/dist/vuetify-labs.css +3477 -3477
  8. package/dist/vuetify-labs.d.ts +71 -61
  9. package/dist/vuetify-labs.esm.js +29 -35
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +29 -35
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.cjs +23 -20
  14. package/dist/vuetify.cjs.map +1 -1
  15. package/dist/vuetify.css +3921 -3921
  16. package/dist/vuetify.d.ts +66 -61
  17. package/dist/vuetify.esm.js +23 -20
  18. package/dist/vuetify.esm.js.map +1 -1
  19. package/dist/vuetify.js +23 -20
  20. package/dist/vuetify.js.map +1 -1
  21. package/dist/vuetify.min.css +2 -2
  22. package/dist/vuetify.min.js +30 -30
  23. package/dist/vuetify.min.js.map +1 -1
  24. package/lib/components/VDataTable/VDataTableFooter.js +3 -1
  25. package/lib/components/VDataTable/VDataTableFooter.js.map +1 -1
  26. package/lib/components/VNumberInput/VNumberInput.d.ts +5 -0
  27. package/lib/components/VNumberInput/VNumberInput.js +7 -11
  28. package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
  29. package/lib/components/VOtpInput/VOtpInput.js +5 -2
  30. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  31. package/lib/components/VTextField/VTextField.js +5 -4
  32. package/lib/components/VTextField/VTextField.js.map +1 -1
  33. package/lib/entry-bundler.js +1 -1
  34. package/lib/framework.d.ts +61 -61
  35. package/lib/framework.js +1 -1
  36. package/lib/labs/VColorInput/VColorInput.js +3 -8
  37. package/lib/labs/VColorInput/VColorInput.js.map +1 -1
  38. package/lib/labs/VDateInput/VDateInput.d.ts +5 -0
  39. package/lib/labs/VDateInput/VDateInput.js +5 -9
  40. package/lib/labs/VDateInput/VDateInput.js.map +1 -1
  41. package/package.json +1 -1
package/dist/vuetify.d.ts CHANGED
@@ -51075,6 +51075,7 @@ declare const VNumberInput: {
51075
51075
  "v-slot:increment"?: false | ((arg: ControlSlot$1) => vue.VNodeChild) | undefined;
51076
51076
  "v-slot:decrement"?: false | ((arg: ControlSlot$1) => vue.VNodeChild) | undefined;
51077
51077
  } & {
51078
+ "onUpdate:focused"?: ((val: boolean) => any) | undefined;
51078
51079
  "onUpdate:modelValue"?: ((val: number) => any) | undefined;
51079
51080
  }, Omit<Omit<{
51080
51081
  $: vue.ComponentInternalInstance;
@@ -53015,6 +53016,7 @@ declare const VNumberInput: {
53015
53016
  } | {};
53016
53017
  }) | {};
53017
53018
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
53019
+ 'update:focused': (val: boolean) => true;
53018
53020
  'update:modelValue': (val: number) => true;
53019
53021
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
53020
53022
  flat: boolean;
@@ -53211,6 +53213,7 @@ declare const VNumberInput: {
53211
53213
  "v-slot:increment"?: false | ((arg: ControlSlot$1) => vue.VNodeChild) | undefined;
53212
53214
  "v-slot:decrement"?: false | ((arg: ControlSlot$1) => vue.VNodeChild) | undefined;
53213
53215
  } & {
53216
+ "onUpdate:focused"?: ((val: boolean) => any) | undefined;
53214
53217
  "onUpdate:modelValue"?: ((val: number) => any) | undefined;
53215
53218
  }, Omit<Omit<{
53216
53219
  $: vue.ComponentInternalInstance;
@@ -55324,6 +55327,7 @@ declare const VNumberInput: {
55324
55327
  "v-slot:increment"?: false | ((arg: ControlSlot$1) => vue.VNodeChild) | undefined;
55325
55328
  "v-slot:decrement"?: false | ((arg: ControlSlot$1) => vue.VNodeChild) | undefined;
55326
55329
  } & {
55330
+ "onUpdate:focused"?: ((val: boolean) => any) | undefined;
55327
55331
  "onUpdate:modelValue"?: ((val: number) => any) | undefined;
55328
55332
  }, Omit<Omit<{
55329
55333
  $: vue.ComponentInternalInstance;
@@ -57264,6 +57268,7 @@ declare const VNumberInput: {
57264
57268
  } | {};
57265
57269
  }) | {};
57266
57270
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
57271
+ 'update:focused': (val: boolean) => true;
57267
57272
  'update:modelValue': (val: number) => true;
57268
57273
  }, string, {
57269
57274
  flat: boolean;
@@ -85907,76 +85912,78 @@ declare module 'vue' {
85907
85912
  $children?: VNodeChild
85908
85913
  }
85909
85914
  export interface GlobalComponents {
85910
- VApp: VApp
85911
- VAlert: VAlert
85912
- VAlertTitle: VAlertTitle
85913
85915
  VAppBar: VAppBar
85914
85916
  VAppBarNavIcon: VAppBarNavIcon
85915
85917
  VAppBarTitle: VAppBarTitle
85916
- VAutocomplete: VAutocomplete
85918
+ VAlert: VAlert
85919
+ VAlertTitle: VAlertTitle
85917
85920
  VAvatar: VAvatar
85921
+ VApp: VApp
85922
+ VBadge: VBadge
85918
85923
  VBanner: VBanner
85919
85924
  VBannerActions: VBannerActions
85920
85925
  VBannerText: VBannerText
85921
- VBadge: VBadge
85922
- VBottomNavigation: VBottomNavigation
85926
+ VAutocomplete: VAutocomplete
85927
+ VBottomSheet: VBottomSheet
85923
85928
  VBreadcrumbs: VBreadcrumbs
85924
85929
  VBreadcrumbsItem: VBreadcrumbsItem
85925
85930
  VBreadcrumbsDivider: VBreadcrumbsDivider
85926
- VBottomSheet: VBottomSheet
85927
- VBtnGroup: VBtnGroup
85928
- VBtnToggle: VBtnToggle
85931
+ VBottomNavigation: VBottomNavigation
85929
85932
  VBtn: VBtn
85933
+ VBtnToggle: VBtnToggle
85934
+ VBtnGroup: VBtnGroup
85935
+ VCarousel: VCarousel
85936
+ VCarouselItem: VCarouselItem
85930
85937
  VCard: VCard
85931
85938
  VCardActions: VCardActions
85932
85939
  VCardItem: VCardItem
85933
85940
  VCardSubtitle: VCardSubtitle
85934
85941
  VCardText: VCardText
85935
85942
  VCardTitle: VCardTitle
85936
- VCarousel: VCarousel
85937
- VCarouselItem: VCarouselItem
85943
+ VDataTable: VDataTable
85944
+ VDataTableHeaders: VDataTableHeaders
85945
+ VDataTableFooter: VDataTableFooter
85946
+ VDataTableRows: VDataTableRows
85947
+ VDataTableRow: VDataTableRow
85948
+ VDataTableVirtual: VDataTableVirtual
85949
+ VDataTableServer: VDataTableServer
85950
+ VCode: VCode
85938
85951
  VCheckbox: VCheckbox
85939
85952
  VCheckboxBtn: VCheckboxBtn
85940
- VChipGroup: VChipGroup
85941
85953
  VChip: VChip
85954
+ VCounter: VCounter
85955
+ VChipGroup: VChipGroup
85942
85956
  VCombobox: VCombobox
85943
- VCode: VCode
85944
85957
  VColorPicker: VColorPicker
85945
- VCounter: VCounter
85946
- VDialog: VDialog
85947
85958
  VDatePicker: VDatePicker
85948
85959
  VDatePickerControls: VDatePickerControls
85949
85960
  VDatePickerHeader: VDatePickerHeader
85950
85961
  VDatePickerMonth: VDatePickerMonth
85951
85962
  VDatePickerMonths: VDatePickerMonths
85952
85963
  VDatePickerYears: VDatePickerYears
85953
- VDataTable: VDataTable
85954
- VDataTableHeaders: VDataTableHeaders
85955
- VDataTableFooter: VDataTableFooter
85956
- VDataTableRows: VDataTableRows
85957
- VDataTableRow: VDataTableRow
85958
- VDataTableVirtual: VDataTableVirtual
85959
- VDataTableServer: VDataTableServer
85960
85964
  VDivider: VDivider
85961
- VEmptyState: VEmptyState
85962
- VFooter: VFooter
85963
- VFileInput: VFileInput
85965
+ VDialog: VDialog
85964
85966
  VExpansionPanels: VExpansionPanels
85965
85967
  VExpansionPanel: VExpansionPanel
85966
85968
  VExpansionPanelText: VExpansionPanelText
85967
85969
  VExpansionPanelTitle: VExpansionPanelTitle
85968
85970
  VFab: VFab
85971
+ VFooter: VFooter
85972
+ VFileInput: VFileInput
85973
+ VField: VField
85974
+ VFieldLabel: VFieldLabel
85969
85975
  VIcon: VIcon
85970
85976
  VComponentIcon: VComponentIcon
85971
85977
  VSvgIcon: VSvgIcon
85972
85978
  VLigatureIcon: VLigatureIcon
85973
85979
  VClassIcon: VClassIcon
85974
- VImg: VImg
85975
85980
  VInfiniteScroll: VInfiniteScroll
85981
+ VInput: VInput
85982
+ VKbd: VKbd
85976
85983
  VItemGroup: VItemGroup
85977
85984
  VItem: VItem
85978
85985
  VLabel: VLabel
85979
- VKbd: VKbd
85986
+ VImg: VImg
85980
85987
  VList: VList
85981
85988
  VListGroup: VListGroup
85982
85989
  VListImg: VListImg
@@ -85986,74 +85993,72 @@ declare module 'vue' {
85986
85993
  VListItemSubtitle: VListItemSubtitle
85987
85994
  VListItemTitle: VListItemTitle
85988
85995
  VListSubheader: VListSubheader
85996
+ VMenu: VMenu
85989
85997
  VMain: VMain
85990
85998
  VNavigationDrawer: VNavigationDrawer
85991
- VMenu: VMenu
85992
85999
  VNumberInput: VNumberInput
85993
- VMessages: VMessages
85994
86000
  VOverlay: VOverlay
85995
- VPagination: VPagination
85996
- VProgressCircular: VProgressCircular
86001
+ VMessages: VMessages
85997
86002
  VOtpInput: VOtpInput
86003
+ VProgressCircular: VProgressCircular
86004
+ VPagination: VPagination
85998
86005
  VProgressLinear: VProgressLinear
85999
86006
  VRadioGroup: VRadioGroup
86000
- VSelect: VSelect
86001
- VSelectionControl: VSelectionControl
86002
86007
  VRating: VRating
86008
+ VSelect: VSelect
86003
86009
  VSelectionControlGroup: VSelectionControlGroup
86004
- VSheet: VSheet
86005
86010
  VSkeletonLoader: VSkeletonLoader
86011
+ VSheet: VSheet
86012
+ VSelectionControl: VSelectionControl
86006
86013
  VSlideGroup: VSlideGroup
86007
86014
  VSlideGroupItem: VSlideGroupItem
86015
+ VStepper: VStepper
86016
+ VStepperActions: VStepperActions
86017
+ VStepperHeader: VStepperHeader
86018
+ VStepperItem: VStepperItem
86019
+ VStepperWindow: VStepperWindow
86020
+ VStepperWindowItem: VStepperWindowItem
86008
86021
  VSnackbar: VSnackbar
86009
86022
  VSlider: VSlider
86010
- VField: VField
86011
- VFieldLabel: VFieldLabel
86012
- VSwitch: VSwitch
86013
86023
  VSystemBar: VSystemBar
86024
+ VSwitch: VSwitch
86025
+ VTimeline: VTimeline
86026
+ VTimelineItem: VTimelineItem
86014
86027
  VTab: VTab
86015
86028
  VTabs: VTabs
86016
86029
  VTabsWindow: VTabsWindow
86017
86030
  VTabsWindowItem: VTabsWindowItem
86018
- VStepper: VStepper
86019
- VStepperActions: VStepperActions
86020
- VStepperHeader: VStepperHeader
86021
- VStepperItem: VStepperItem
86022
- VStepperWindow: VStepperWindow
86023
- VStepperWindowItem: VStepperWindowItem
86024
- VTable: VTable
86025
86031
  VTextField: VTextField
86026
86032
  VTextarea: VTextarea
86027
- VTimeline: VTimeline
86028
- VTimelineItem: VTimelineItem
86029
- VTooltip: VTooltip
86030
86033
  VToolbar: VToolbar
86031
86034
  VToolbarTitle: VToolbarTitle
86032
86035
  VToolbarItems: VToolbarItems
86036
+ VTooltip: VTooltip
86033
86037
  VWindow: VWindow
86034
86038
  VWindowItem: VWindowItem
86035
86039
  VConfirmEdit: VConfirmEdit
86040
+ VTable: VTable
86036
86041
  VDataIterator: VDataIterator
86042
+ VDefaultsProvider: VDefaultsProvider
86037
86043
  VForm: VForm
86038
86044
  VContainer: VContainer
86039
86045
  VCol: VCol
86040
86046
  VRow: VRow
86041
86047
  VSpacer: VSpacer
86042
86048
  VHover: VHover
86043
- VLayout: VLayout
86044
- VLayoutItem: VLayoutItem
86045
86049
  VLazy: VLazy
86046
86050
  VLocaleProvider: VLocaleProvider
86047
86051
  VNoSsr: VNoSsr
86052
+ VRadio: VRadio
86048
86053
  VParallax: VParallax
86049
86054
  VRangeSlider: VRangeSlider
86050
- VRadio: VRadio
86051
86055
  VResponsive: VResponsive
86052
- VSparkline: VSparkline
86053
86056
  VSnackbarQueue: VSnackbarQueue
86054
86057
  VSpeedDial: VSpeedDial
86058
+ VSparkline: VSparkline
86055
86059
  VThemeProvider: VThemeProvider
86056
86060
  VValidation: VValidation
86061
+ VVirtualScroll: VVirtualScroll
86057
86062
  VFabTransition: VFabTransition
86058
86063
  VDialogBottomTransition: VDialogBottomTransition
86059
86064
  VDialogTopTransition: VDialogTopTransition
@@ -86070,30 +86075,30 @@ declare module 'vue' {
86070
86075
  VExpandTransition: VExpandTransition
86071
86076
  VExpandXTransition: VExpandXTransition
86072
86077
  VDialogTransition: VDialogTransition
86073
- VVirtualScroll: VVirtualScroll
86074
- VInput: VInput
86075
- VDefaultsProvider: VDefaultsProvider
86078
+ VEmptyState: VEmptyState
86079
+ VLayout: VLayout
86080
+ VLayoutItem: VLayoutItem
86076
86081
  VCalendar: VCalendar
86077
86082
  VCalendarDay: VCalendarDay
86078
86083
  VCalendarHeader: VCalendarHeader
86079
86084
  VCalendarInterval: VCalendarInterval
86080
86085
  VCalendarIntervalEvent: VCalendarIntervalEvent
86081
86086
  VCalendarMonthDay: VCalendarMonthDay
86082
- VFileUpload: VFileUpload
86083
- VFileUploadItem: VFileUploadItem
86084
- VColorInput: VColorInput
86087
+ VIconBtn: VIconBtn
86085
86088
  VPicker: VPicker
86086
86089
  VPickerTitle: VPickerTitle
86087
- VStepperVertical: VStepperVertical
86088
- VStepperVerticalItem: VStepperVerticalItem
86089
- VStepperVerticalActions: VStepperVerticalActions
86090
- VIconBtn: VIconBtn
86090
+ VColorInput: VColorInput
86091
86091
  VTimePicker: VTimePicker
86092
86092
  VTimePickerClock: VTimePickerClock
86093
86093
  VTimePickerControls: VTimePickerControls
86094
+ VFileUpload: VFileUpload
86095
+ VFileUploadItem: VFileUploadItem
86094
86096
  VTreeview: VTreeview
86095
86097
  VTreeviewItem: VTreeviewItem
86096
86098
  VTreeviewGroup: VTreeviewGroup
86099
+ VStepperVertical: VStepperVertical
86100
+ VStepperVerticalItem: VStepperVerticalItem
86101
+ VStepperVerticalActions: VStepperVerticalActions
86097
86102
  VDateInput: VDateInput
86098
86103
  VPullToRefresh: VPullToRefresh
86099
86104
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.8-master.2025-06-04
2
+ * Vuetify v3.8.8-master.2025-06-07
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -12392,10 +12392,12 @@ const VTextField = genericComponent()({
12392
12392
  const inputRef = ref();
12393
12393
  const isActive = computed(() => activeTypes.includes(props.type) || props.persistentPlaceholder || isFocused.value || props.active);
12394
12394
  function onFocus() {
12395
- if (inputRef.value !== document.activeElement) {
12396
- inputRef.value?.focus();
12397
- }
12398
12395
  if (!isFocused.value) focus();
12396
+ nextTick(() => {
12397
+ if (inputRef.value !== document.activeElement) {
12398
+ inputRef.value?.focus();
12399
+ }
12400
+ });
12399
12401
  }
12400
12402
  function onControlMousedown(e) {
12401
12403
  emit('mousedown:control', e);
@@ -12404,7 +12406,6 @@ const VTextField = genericComponent()({
12404
12406
  e.preventDefault();
12405
12407
  }
12406
12408
  function onControlClick(e) {
12407
- onFocus();
12408
12409
  emit('click:control', e);
12409
12410
  }
12410
12411
  function onClear(e, reset) {
@@ -20217,7 +20218,9 @@ const VDataTableFooter = genericComponent()({
20217
20218
  "class": "v-data-table-footer"
20218
20219
  }, [slots.prepend?.(), createElementVNode("div", {
20219
20220
  "class": "v-data-table-footer__items-per-page"
20220
- }, [createElementVNode("span", null, [t(props.itemsPerPageText)]), createVNode(VSelect, {
20221
+ }, [createElementVNode("span", {
20222
+ "aria-label": t(props.itemsPerPageText)
20223
+ }, [t(props.itemsPerPageText)]), createVNode(VSelect, {
20221
20224
  "items": itemsPerPageOptions.value,
20222
20225
  "modelValue": itemsPerPage.value,
20223
20226
  "onUpdate:modelValue": v => setItemsPerPage(Number(v)),
@@ -25163,6 +25166,7 @@ const VNumberInput = genericComponent()({
25163
25166
  ...makeVNumberInputProps()
25164
25167
  },
25165
25168
  emits: {
25169
+ 'update:focused': val => true,
25166
25170
  'update:modelValue': val => true
25167
25171
  },
25168
25172
  setup(props, _ref) {
@@ -25178,11 +25182,7 @@ const VNumberInput = genericComponent()({
25178
25182
  });
25179
25183
  const form = useForm(props);
25180
25184
  const controlsDisabled = computed(() => form.isDisabled.value || form.isReadonly.value);
25181
- const {
25182
- isFocused,
25183
- focus,
25184
- blur
25185
- } = useFocus(props);
25185
+ const isFocused = shallowRef(props.focused);
25186
25186
  function correctPrecision(val) {
25187
25187
  let precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : props.precision;
25188
25188
  const fixed = precision == null ? String(val) : val.toFixed(precision);
@@ -25367,11 +25367,9 @@ const VNumberInput = genericComponent()({
25367
25367
  inputText.value = model.value.toString();
25368
25368
  }
25369
25369
  function onFocus() {
25370
- focus();
25371
25370
  trimDecimalZeros();
25372
25371
  }
25373
25372
  function onBlur() {
25374
- blur();
25375
25373
  clampModel();
25376
25374
  }
25377
25375
  useRender(() => {
@@ -25464,9 +25462,12 @@ const VNumberInput = genericComponent()({
25464
25462
  }, null)]) : props.reverse && controlVariant.value !== 'hidden' ? createElementVNode(Fragment, null, [controlNode(), dividerNode()]) : undefined;
25465
25463
  const hasPrependInner = slots['prepend-inner'] || prependInnerControl;
25466
25464
  return createVNode(VTextField, mergeProps({
25467
- "ref": vTextFieldRef,
25465
+ "ref": vTextFieldRef
25466
+ }, textFieldProps, {
25468
25467
  "modelValue": inputText.value,
25469
25468
  "onUpdate:modelValue": $event => inputText.value = $event,
25469
+ "focused": isFocused.value,
25470
+ "onUpdate:focused": $event => isFocused.value = $event,
25470
25471
  "validationValue": model.value,
25471
25472
  "onBeforeinput": onBeforeinput,
25472
25473
  "onFocus": onFocus,
@@ -25479,8 +25480,7 @@ const VNumberInput = genericComponent()({
25479
25480
  'v-number-input--reverse': props.reverse,
25480
25481
  'v-number-input--split': controlVariant.value === 'split',
25481
25482
  'v-number-input--stacked': controlVariant.value === 'stacked'
25482
- }, props.class]
25483
- }, textFieldProps, {
25483
+ }, props.class],
25484
25484
  "style": props.style,
25485
25485
  "inputmode": "decimal"
25486
25486
  }), {
@@ -25615,7 +25615,7 @@ const VOtpInput = genericComponent()({
25615
25615
  function onPaste(index, e) {
25616
25616
  e.preventDefault();
25617
25617
  e.stopPropagation();
25618
- const clipboardText = e?.clipboardData?.getData('Text').slice(0, length.value) ?? '';
25618
+ const clipboardText = e?.clipboardData?.getData('Text').trim().slice(0, length.value) ?? '';
25619
25619
  if (isValidNumber(clipboardText)) return;
25620
25620
  model.value = clipboardText.split('');
25621
25621
  inputRef.value?.[index].blur();
@@ -25647,7 +25647,10 @@ const VOtpInput = genericComponent()({
25647
25647
  scoped: true
25648
25648
  });
25649
25649
  watch(model, val => {
25650
- if (val.length === length.value) emit('finish', val.join(''));
25650
+ if (val.length === length.value) {
25651
+ focusIndex.value = length.value - 1;
25652
+ emit('finish', val.join(''));
25653
+ }
25651
25654
  }, {
25652
25655
  deep: true
25653
25656
  });
@@ -29400,7 +29403,7 @@ function createVuetify$1() {
29400
29403
  };
29401
29404
  });
29402
29405
  }
29403
- const version$1 = "3.8.8-master.2025-06-04";
29406
+ const version$1 = "3.8.8-master.2025-06-07";
29404
29407
  createVuetify$1.version = version$1;
29405
29408
 
29406
29409
  // Vue's inject() can only be used in setup
@@ -29425,7 +29428,7 @@ const createVuetify = function () {
29425
29428
  ...options
29426
29429
  });
29427
29430
  };
29428
- const version = "3.8.8-master.2025-06-04";
29431
+ const version = "3.8.8-master.2025-06-07";
29429
29432
  createVuetify.version = version;
29430
29433
 
29431
29434
  export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useLayout, useLocale, useRtl, useTheme, version };