@vuetify/nightly 3.8.9-master.2025-06-12 → 3.8.9-master.2025-06-14

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 (47) hide show
  1. package/CHANGELOG.md +12 -3
  2. package/dist/json/attributes.json +3361 -3361
  3. package/dist/json/importMap-labs.json +30 -30
  4. package/dist/json/importMap.json +156 -156
  5. package/dist/json/web-types.json +6102 -6102
  6. package/dist/vuetify-labs.cjs +44 -22
  7. package/dist/vuetify-labs.css +3398 -3395
  8. package/dist/vuetify-labs.d.ts +59 -59
  9. package/dist/vuetify-labs.esm.js +44 -22
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +44 -22
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.cjs +41 -22
  14. package/dist/vuetify.cjs.map +1 -1
  15. package/dist/vuetify.css +4550 -4547
  16. package/dist/vuetify.d.ts +59 -59
  17. package/dist/vuetify.esm.js +41 -22
  18. package/dist/vuetify.esm.js.map +1 -1
  19. package/dist/vuetify.js +41 -22
  20. package/dist/vuetify.js.map +1 -1
  21. package/dist/vuetify.min.css +2 -2
  22. package/dist/vuetify.min.js +19 -17
  23. package/dist/vuetify.min.js.map +1 -1
  24. package/lib/components/VDataTable/VDataTable.css +6 -3
  25. package/lib/components/VDataTable/VDataTable.sass +4 -2
  26. package/lib/components/VDatePicker/VDatePicker.js +19 -13
  27. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  28. package/lib/components/VDatePicker/VDatePickerYears.js +1 -3
  29. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  30. package/lib/components/VField/VField.js +10 -2
  31. package/lib/components/VField/VField.js.map +1 -1
  32. package/lib/composables/hotkey.d.ts +9 -0
  33. package/lib/composables/hotkey.js +131 -0
  34. package/lib/composables/hotkey.js.map +1 -0
  35. package/lib/composables/transition.js +3 -3
  36. package/lib/composables/transition.js.map +1 -1
  37. package/lib/entry-bundler.js +1 -1
  38. package/lib/framework.d.ts +59 -59
  39. package/lib/framework.js +1 -1
  40. package/lib/labs/VFileUpload/VFileUploadItem.js +1 -0
  41. package/lib/labs/VFileUpload/VFileUploadItem.js.map +1 -1
  42. package/lib/labs/VTimePicker/VTimePickerClock.js +3 -1
  43. package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
  44. package/lib/util/helpers.d.ts +3 -0
  45. package/lib/util/helpers.js +7 -0
  46. package/lib/util/helpers.js.map +1 -1
  47. package/package.json +1 -1
@@ -101795,22 +101795,20 @@ declare module 'vue' {
101795
101795
  $children?: VNodeChild
101796
101796
  }
101797
101797
  export interface GlobalComponents {
101798
- VAutocomplete: VAutocomplete
101799
- VApp: VApp
101800
101798
  VAlert: VAlert
101801
101799
  VAlertTitle: VAlertTitle
101802
- VAvatar: VAvatar
101803
- VBadge: VBadge
101804
- VBottomSheet: VBottomSheet
101800
+ VAppBar: VAppBar
101801
+ VAppBarNavIcon: VAppBarNavIcon
101802
+ VAppBarTitle: VAppBarTitle
101803
+ VApp: VApp
101804
+ VAutocomplete: VAutocomplete
101805
101805
  VBanner: VBanner
101806
101806
  VBannerActions: VBannerActions
101807
101807
  VBannerText: VBannerText
101808
101808
  VBottomNavigation: VBottomNavigation
101809
- VBtn: VBtn
101809
+ VBadge: VBadge
101810
101810
  VBtnGroup: VBtnGroup
101811
- VAppBar: VAppBar
101812
- VAppBarNavIcon: VAppBarNavIcon
101813
- VAppBarTitle: VAppBarTitle
101811
+ VAvatar: VAvatar
101814
101812
  VCard: VCard
101815
101813
  VCardActions: VCardActions
101816
101814
  VCardItem: VCardItem
@@ -101818,16 +101816,20 @@ declare module 'vue' {
101818
101816
  VCardText: VCardText
101819
101817
  VCardTitle: VCardTitle
101820
101818
  VBtnToggle: VBtnToggle
101821
- VChipGroup: VChipGroup
101822
- VChip: VChip
101823
- VCarousel: VCarousel
101824
- VCarouselItem: VCarouselItem
101819
+ VBottomSheet: VBottomSheet
101820
+ VBreadcrumbs: VBreadcrumbs
101821
+ VBreadcrumbsItem: VBreadcrumbsItem
101822
+ VBreadcrumbsDivider: VBreadcrumbsDivider
101825
101823
  VCheckbox: VCheckbox
101826
101824
  VCheckboxBtn: VCheckboxBtn
101825
+ VBtn: VBtn
101826
+ VCarousel: VCarousel
101827
+ VCarouselItem: VCarouselItem
101828
+ VChip: VChip
101829
+ VCode: VCode
101830
+ VCombobox: VCombobox
101827
101831
  VCounter: VCounter
101828
101832
  VColorPicker: VColorPicker
101829
- VCombobox: VCombobox
101830
- VCode: VCode
101831
101833
  VDataTable: VDataTable
101832
101834
  VDataTableHeaders: VDataTableHeaders
101833
101835
  VDataTableFooter: VDataTableFooter
@@ -101835,38 +101837,40 @@ declare module 'vue' {
101835
101837
  VDataTableRow: VDataTableRow
101836
101838
  VDataTableVirtual: VDataTableVirtual
101837
101839
  VDataTableServer: VDataTableServer
101840
+ VChipGroup: VChipGroup
101838
101841
  VDatePicker: VDatePicker
101839
101842
  VDatePickerControls: VDatePickerControls
101840
101843
  VDatePickerHeader: VDatePickerHeader
101841
101844
  VDatePickerMonth: VDatePickerMonth
101842
101845
  VDatePickerMonths: VDatePickerMonths
101843
101846
  VDatePickerYears: VDatePickerYears
101844
- VDivider: VDivider
101845
101847
  VDialog: VDialog
101846
- VField: VField
101847
- VFieldLabel: VFieldLabel
101848
- VEmptyState: VEmptyState
101849
- VFileInput: VFileInput
101850
101848
  VExpansionPanels: VExpansionPanels
101851
101849
  VExpansionPanel: VExpansionPanel
101852
101850
  VExpansionPanelText: VExpansionPanelText
101853
101851
  VExpansionPanelTitle: VExpansionPanelTitle
101852
+ VDivider: VDivider
101854
101853
  VFooter: VFooter
101855
101854
  VFab: VFab
101856
- VImg: VImg
101857
- VInfiniteScroll: VInfiniteScroll
101855
+ VField: VField
101856
+ VFieldLabel: VFieldLabel
101857
+ VEmptyState: VEmptyState
101858
+ VFileInput: VFileInput
101858
101859
  VIcon: VIcon
101859
101860
  VComponentIcon: VComponentIcon
101860
101861
  VSvgIcon: VSvgIcon
101861
101862
  VLigatureIcon: VLigatureIcon
101862
101863
  VClassIcon: VClassIcon
101863
- VKbd: VKbd
101864
+ VImg: VImg
101865
+ VInfiniteScroll: VInfiniteScroll
101864
101866
  VItemGroup: VItemGroup
101865
101867
  VItem: VItem
101866
101868
  VInput: VInput
101869
+ VMenu: VMenu
101870
+ VKbd: VKbd
101867
101871
  VLabel: VLabel
101868
- VMain: VMain
101869
101872
  VNavigationDrawer: VNavigationDrawer
101873
+ VMessages: VMessages
101870
101874
  VList: VList
101871
101875
  VListGroup: VListGroup
101872
101876
  VListImg: VListImg
@@ -101876,24 +101880,21 @@ declare module 'vue' {
101876
101880
  VListItemSubtitle: VListItemSubtitle
101877
101881
  VListItemTitle: VListItemTitle
101878
101882
  VListSubheader: VListSubheader
101879
- VMenu: VMenu
101880
- VMessages: VMessages
101881
101883
  VNumberInput: VNumberInput
101882
- VOverlay: VOverlay
101883
101884
  VOtpInput: VOtpInput
101885
+ VOverlay: VOverlay
101886
+ VProgressCircular: VProgressCircular
101887
+ VRadioGroup: VRadioGroup
101884
101888
  VProgressLinear: VProgressLinear
101885
101889
  VPagination: VPagination
101886
- VRadioGroup: VRadioGroup
101887
- VProgressCircular: VProgressCircular
101888
- VRating: VRating
101890
+ VSelect: VSelect
101889
101891
  VSelectionControl: VSelectionControl
101890
101892
  VSelectionControlGroup: VSelectionControlGroup
101893
+ VRating: VRating
101894
+ VSheet: VSheet
101895
+ VSkeletonLoader: VSkeletonLoader
101891
101896
  VSlideGroup: VSlideGroup
101892
101897
  VSlideGroupItem: VSlideGroupItem
101893
- VSkeletonLoader: VSkeletonLoader
101894
- VSheet: VSheet
101895
- VSelect: VSelect
101896
- VSlider: VSlider
101897
101898
  VStepper: VStepper
101898
101899
  VStepperActions: VStepperActions
101899
101900
  VStepperHeader: VStepperHeader
@@ -101901,49 +101902,49 @@ declare module 'vue' {
101901
101902
  VStepperWindow: VStepperWindow
101902
101903
  VStepperWindowItem: VStepperWindowItem
101903
101904
  VSnackbar: VSnackbar
101904
- VSwitch: VSwitch
101905
+ VSlider: VSlider
101905
101906
  VSystemBar: VSystemBar
101906
- VTimeline: VTimeline
101907
- VTimelineItem: VTimelineItem
101907
+ VSwitch: VSwitch
101908
101908
  VTextarea: VTextarea
101909
+ VTable: VTable
101910
+ VTextField: VTextField
101909
101911
  VTab: VTab
101910
101912
  VTabs: VTabs
101911
101913
  VTabsWindow: VTabsWindow
101912
101914
  VTabsWindowItem: VTabsWindowItem
101913
- VTable: VTable
101914
- VTextField: VTextField
101915
- VToolbar: VToolbar
101916
- VToolbarTitle: VToolbarTitle
101917
- VToolbarItems: VToolbarItems
101918
101915
  VTooltip: VTooltip
101919
101916
  VWindow: VWindow
101920
101917
  VWindowItem: VWindowItem
101921
- VBreadcrumbs: VBreadcrumbs
101922
- VBreadcrumbsItem: VBreadcrumbsItem
101923
- VBreadcrumbsDivider: VBreadcrumbsDivider
101918
+ VTimeline: VTimeline
101919
+ VTimelineItem: VTimelineItem
101920
+ VToolbar: VToolbar
101921
+ VToolbarTitle: VToolbarTitle
101922
+ VToolbarItems: VToolbarItems
101923
+ VMain: VMain
101924
101924
  VConfirmEdit: VConfirmEdit
101925
101925
  VDataIterator: VDataIterator
101926
101926
  VDefaultsProvider: VDefaultsProvider
101927
+ VForm: VForm
101927
101928
  VContainer: VContainer
101928
101929
  VCol: VCol
101929
101930
  VRow: VRow
101930
101931
  VSpacer: VSpacer
101931
- VForm: VForm
101932
101932
  VHover: VHover
101933
- VLocaleProvider: VLocaleProvider
101934
101933
  VLayout: VLayout
101935
101934
  VLayoutItem: VLayoutItem
101936
101935
  VLazy: VLazy
101936
+ VLocaleProvider: VLocaleProvider
101937
101937
  VNoSsr: VNoSsr
101938
- VParallax: VParallax
101939
101938
  VRadio: VRadio
101939
+ VParallax: VParallax
101940
101940
  VRangeSlider: VRangeSlider
101941
+ VResponsive: VResponsive
101941
101942
  VSnackbarQueue: VSnackbarQueue
101942
101943
  VSparkline: VSparkline
101943
101944
  VSpeedDial: VSpeedDial
101944
- VThemeProvider: VThemeProvider
101945
- VVirtualScroll: VVirtualScroll
101946
101945
  VValidation: VValidation
101946
+ VVirtualScroll: VVirtualScroll
101947
+ VThemeProvider: VThemeProvider
101947
101948
  VFabTransition: VFabTransition
101948
101949
  VDialogBottomTransition: VDialogBottomTransition
101949
101950
  VDialogTopTransition: VDialogTopTransition
@@ -101960,29 +101961,28 @@ declare module 'vue' {
101960
101961
  VExpandTransition: VExpandTransition
101961
101962
  VExpandXTransition: VExpandXTransition
101962
101963
  VDialogTransition: VDialogTransition
101963
- VResponsive: VResponsive
101964
101964
  VCalendar: VCalendar
101965
101965
  VCalendarDay: VCalendarDay
101966
101966
  VCalendarHeader: VCalendarHeader
101967
101967
  VCalendarInterval: VCalendarInterval
101968
101968
  VCalendarIntervalEvent: VCalendarIntervalEvent
101969
101969
  VCalendarMonthDay: VCalendarMonthDay
101970
- VIconBtn: VIconBtn
101971
- VColorInput: VColorInput
101972
101970
  VFileUpload: VFileUpload
101973
101971
  VFileUploadItem: VFileUploadItem
101974
- VTreeview: VTreeview
101975
- VTreeviewItem: VTreeviewItem
101976
- VTreeviewGroup: VTreeviewGroup
101977
- VStepperVertical: VStepperVertical
101978
- VStepperVerticalItem: VStepperVerticalItem
101979
- VStepperVerticalActions: VStepperVerticalActions
101972
+ VIconBtn: VIconBtn
101980
101973
  VTimePicker: VTimePicker
101981
101974
  VTimePickerClock: VTimePickerClock
101982
101975
  VTimePickerControls: VTimePickerControls
101983
101976
  VPicker: VPicker
101984
101977
  VPickerTitle: VPickerTitle
101978
+ VStepperVertical: VStepperVertical
101979
+ VStepperVerticalItem: VStepperVerticalItem
101980
+ VStepperVerticalActions: VStepperVerticalActions
101985
101981
  VDateInput: VDateInput
101986
101982
  VPullToRefresh: VPullToRefresh
101983
+ VColorInput: VColorInput
101984
+ VTreeview: VTreeview
101985
+ VTreeviewItem: VTreeviewItem
101986
+ VTreeviewGroup: VTreeviewGroup
101987
101987
  }
101988
101988
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.9-master.2025-06-12
2
+ * Vuetify v3.8.9-master.2025-06-14
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -609,6 +609,13 @@ function camelizeProps(props) {
609
609
  }
610
610
  return out;
611
611
  }
612
+ function onlyDefinedProps(props) {
613
+ const booleanAttributes = ['checked', 'disabled'];
614
+ return Object.fromEntries(Object.entries(props).filter(_ref => {
615
+ let [key, v] = _ref;
616
+ return booleanAttributes.includes(key) ? !!v : v !== undefined;
617
+ }));
618
+ }
612
619
 
613
620
  // Utilities
614
621
  const block = ['top', 'bottom'];
@@ -3321,10 +3328,10 @@ const MaybeTransition = (props, _ref) => {
3321
3328
  } = isObject(transition) ? transition : {};
3322
3329
  let transitionProps;
3323
3330
  if (isObject(transition)) {
3324
- transitionProps = mergeProps(customProps, JSON.parse(JSON.stringify({
3331
+ transitionProps = mergeProps(customProps, onlyDefinedProps({
3325
3332
  disabled,
3326
3333
  group
3327
- })), rest);
3334
+ }), rest);
3328
3335
  } else {
3329
3336
  transitionProps = mergeProps({
3330
3337
  name: disabled || !transition ? '' : transition
@@ -11945,7 +11952,11 @@ const VField = genericComponent()({
11945
11952
  default: slots.loader
11946
11953
  }), hasPrepend && createElementVNode("div", {
11947
11954
  "key": "prepend",
11948
- "class": "v-field__prepend-inner"
11955
+ "class": "v-field__prepend-inner",
11956
+ "onMousedown": e => {
11957
+ e.preventDefault();
11958
+ e.stopPropagation();
11959
+ }
11949
11960
  }, [props.prependInnerIcon && createVNode(InputIcon, {
11950
11961
  "key": "prepend-icon",
11951
11962
  "name": "prependInner",
@@ -12014,7 +12025,11 @@ const VField = genericComponent()({
12014
12025
  })]), [[vShow, props.dirty]])]
12015
12026
  }), hasAppend && createElementVNode("div", {
12016
12027
  "key": "append",
12017
- "class": "v-field__append-inner"
12028
+ "class": "v-field__append-inner",
12029
+ "onMousedown": e => {
12030
+ e.preventDefault();
12031
+ e.stopPropagation();
12032
+ }
12018
12033
  }, [slots['append-inner']?.(slotProps.value), props.appendInnerIcon && createVNode(InputIcon, {
12019
12034
  "key": "append-icon",
12020
12035
  "name": "appendInner",
@@ -22473,9 +22488,7 @@ const VDatePickerYears = genericComponent()({
22473
22488
  const yearRef = templateRef();
22474
22489
  onMounted(async () => {
22475
22490
  await nextTick();
22476
- yearRef.el?.scrollIntoView({
22477
- block: 'center'
22478
- });
22491
+ yearRef.el?.focus();
22479
22492
  });
22480
22493
  function isYearAllowed(year) {
22481
22494
  if (Array.isArray(props.allowedYears) && props.allowedYears.length) {
@@ -22611,8 +22624,16 @@ const VDatePicker = genericComponent()({
22611
22624
  return value && adapter.isValid(value) ? value : today;
22612
22625
  });
22613
22626
  const headerColor = toRef(() => props.headerColor ?? props.color);
22614
- const month = ref(Number(props.month ?? adapter.getMonth(adapter.startOfMonth(internal.value))));
22615
- const year = ref(Number(props.year ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))));
22627
+ const _month = useProxiedModel(props, 'month');
22628
+ const month = computed({
22629
+ get: () => Number(_month.value ?? adapter.getMonth(adapter.startOfMonth(internal.value))),
22630
+ set: v => _month.value = v
22631
+ });
22632
+ const _year = useProxiedModel(props, 'year');
22633
+ const year = computed({
22634
+ get: () => Number(_year.value ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))),
22635
+ set: v => _year.value = v
22636
+ });
22616
22637
  const isReversing = shallowRef(false);
22617
22638
  const header = computed(() => {
22618
22639
  if (props.multiple && model.value.length > 1) {
@@ -22696,9 +22717,9 @@ const VDatePicker = genericComponent()({
22696
22717
  } else {
22697
22718
  year.value++;
22698
22719
  month.value = 0;
22699
- onUpdateYear(year.value);
22720
+ onUpdateYear();
22700
22721
  }
22701
- onUpdateMonth(month.value);
22722
+ onUpdateMonth();
22702
22723
  }
22703
22724
  function onClickPrev() {
22704
22725
  if (month.value > 0) {
@@ -22706,9 +22727,9 @@ const VDatePicker = genericComponent()({
22706
22727
  } else {
22707
22728
  year.value--;
22708
22729
  month.value = 11;
22709
- onUpdateYear(year.value);
22730
+ onUpdateYear();
22710
22731
  }
22711
- onUpdateMonth(month.value);
22732
+ onUpdateMonth();
22712
22733
  }
22713
22734
  function onClickDate() {
22714
22735
  viewMode.value = 'month';
@@ -22719,13 +22740,11 @@ const VDatePicker = genericComponent()({
22719
22740
  function onClickYear() {
22720
22741
  viewMode.value = viewMode.value === 'year' ? 'month' : 'year';
22721
22742
  }
22722
- function onUpdateMonth(value) {
22743
+ function onUpdateMonth() {
22723
22744
  if (viewMode.value === 'months') onClickMonth();
22724
- emit('update:month', value);
22725
22745
  }
22726
- function onUpdateYear(value) {
22746
+ function onUpdateYear() {
22727
22747
  if (viewMode.value === 'year') onClickYear();
22728
- emit('update:year', value);
22729
22748
  }
22730
22749
  watch(model, (val, oldVal) => {
22731
22750
  const arrBefore = wrapInArray(oldVal);
@@ -22737,11 +22756,11 @@ const VDatePicker = genericComponent()({
22737
22756
  const newYear = adapter.getYear(after);
22738
22757
  if (newMonth !== month.value) {
22739
22758
  month.value = newMonth;
22740
- onUpdateMonth(month.value);
22759
+ onUpdateMonth();
22741
22760
  }
22742
22761
  if (newYear !== year.value) {
22743
22762
  year.value = newYear;
22744
- onUpdateYear(year.value);
22763
+ onUpdateYear();
22745
22764
  }
22746
22765
  isReversing.value = adapter.isBefore(before, after);
22747
22766
  });
@@ -29823,6 +29842,7 @@ const VFileUploadItem = genericComponent()({
29823
29842
  "class": "v-file-upload-item"
29824
29843
  }), {
29825
29844
  ...slots,
29845
+ title: () => props?.title ?? props.file?.name,
29826
29846
  prepend: slotProps => createElementVNode(Fragment, null, [!slots.prepend ? createVNode(VAvatar, {
29827
29847
  "icon": props.fileIcon,
29828
29848
  "image": preview.value,
@@ -30671,6 +30691,7 @@ const VTimePickerClock = genericComponent()({
30671
30691
  const isDragging = ref(false);
30672
30692
  const valueOnMouseDown = ref(null);
30673
30693
  const valueOnMouseUp = ref(null);
30694
+ const emitChangeDebounced = debounce(value => emit('change', value), 750);
30674
30695
  const {
30675
30696
  textColorClasses,
30676
30697
  textColorStyles
@@ -30716,6 +30737,7 @@ const VTimePickerClock = genericComponent()({
30716
30737
  if (value !== props.displayedValue) {
30717
30738
  update(value);
30718
30739
  }
30740
+ emitChangeDebounced(value);
30719
30741
  }
30720
30742
  function isInner(value) {
30721
30743
  return props.double && value - props.min >= roundCount.value;
@@ -32149,7 +32171,7 @@ function createVuetify$1() {
32149
32171
  };
32150
32172
  });
32151
32173
  }
32152
- const version$1 = "3.8.9-master.2025-06-12";
32174
+ const version$1 = "3.8.9-master.2025-06-14";
32153
32175
  createVuetify$1.version = version$1;
32154
32176
 
32155
32177
  // Vue's inject() can only be used in setup
@@ -32447,7 +32469,7 @@ var index = /*#__PURE__*/Object.freeze({
32447
32469
 
32448
32470
  /* eslint-disable local-rules/sort-imports */
32449
32471
 
32450
- const version = "3.8.9-master.2025-06-12";
32472
+ const version = "3.8.9-master.2025-06-14";
32451
32473
 
32452
32474
  /* eslint-disable local-rules/sort-imports */
32453
32475