@vuetify/nightly 3.8.3-master.2025-04-30 → 3.8.3-master.2025-05-02

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.
@@ -88484,6 +88484,7 @@ declare const VDateInput: {
88484
88484
  weeksInMonth: "static" | "dynamic";
88485
88485
  hideWeekdays: boolean;
88486
88486
  showWeek: boolean;
88487
+ updateOn: ("blur" | "enter")[];
88487
88488
  } & {
88488
88489
  name?: string | undefined;
88489
88490
  max?: unknown;
@@ -90597,6 +90598,7 @@ declare const VDateInput: {
90597
90598
  firstDayOfWeek: string | number;
90598
90599
  hideWeekdays: boolean;
90599
90600
  showWeek: boolean;
90601
+ updateOn: ("blur" | "enter")[];
90600
90602
  }, true, {}, vue.SlotsType<Partial<{
90601
90603
  message: (arg: VMessageSlot) => vue.VNode[];
90602
90604
  clear: (arg: DefaultInputSlot & {
@@ -90675,6 +90677,7 @@ declare const VDateInput: {
90675
90677
  weeksInMonth: "static" | "dynamic";
90676
90678
  hideWeekdays: boolean;
90677
90679
  showWeek: boolean;
90680
+ updateOn: ("blur" | "enter")[];
90678
90681
  } & {
90679
90682
  name?: string | undefined;
90680
90683
  max?: unknown;
@@ -92784,6 +92787,7 @@ declare const VDateInput: {
92784
92787
  firstDayOfWeek: string | number;
92785
92788
  hideWeekdays: boolean;
92786
92789
  showWeek: boolean;
92790
+ updateOn: ("blur" | "enter")[];
92787
92791
  }>;
92788
92792
  __isFragment?: never;
92789
92793
  __isTeleport?: never;
@@ -92841,6 +92845,7 @@ declare const VDateInput: {
92841
92845
  weeksInMonth: "static" | "dynamic";
92842
92846
  hideWeekdays: boolean;
92843
92847
  showWeek: boolean;
92848
+ updateOn: ("blur" | "enter")[];
92844
92849
  } & {
92845
92850
  name?: string | undefined;
92846
92851
  max?: unknown;
@@ -94954,6 +94959,7 @@ declare const VDateInput: {
94954
94959
  firstDayOfWeek: string | number;
94955
94960
  hideWeekdays: boolean;
94956
94961
  showWeek: boolean;
94962
+ updateOn: ("blur" | "enter")[];
94957
94963
  }, {}, string, vue.SlotsType<Partial<{
94958
94964
  message: (arg: VMessageSlot) => vue.VNode[];
94959
94965
  clear: (arg: DefaultInputSlot & {
@@ -95185,9 +95191,12 @@ declare const VDateInput: {
95185
95191
  type: PropType<boolean>;
95186
95192
  default: boolean;
95187
95193
  };
95188
- mobile: {
95194
+ mobile: Omit<{
95189
95195
  type: PropType<boolean | null>;
95190
95196
  default: boolean;
95197
+ }, "type" | "default"> & {
95198
+ type: PropType<boolean | null>;
95199
+ default: NonNullable<boolean | null> | null;
95191
95200
  };
95192
95201
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
95193
95202
  displayFormat: (FunctionConstructor | StringConstructor)[];
@@ -95195,6 +95204,10 @@ declare const VDateInput: {
95195
95204
  type: PropType<StrategyProps$1["location"]>;
95196
95205
  default: string;
95197
95206
  };
95207
+ updateOn: {
95208
+ type: PropType<("blur" | "enter")[]>;
95209
+ default: () => string[];
95210
+ };
95198
95211
  }, vue.ExtractPropTypes<{
95199
95212
  max: PropType<unknown>;
95200
95213
  height: (StringConstructor | NumberConstructor)[];
@@ -95408,9 +95421,12 @@ declare const VDateInput: {
95408
95421
  type: PropType<boolean>;
95409
95422
  default: boolean;
95410
95423
  };
95411
- mobile: {
95424
+ mobile: Omit<{
95412
95425
  type: PropType<boolean | null>;
95413
95426
  default: boolean;
95427
+ }, "type" | "default"> & {
95428
+ type: PropType<boolean | null>;
95429
+ default: NonNullable<boolean | null> | null;
95414
95430
  };
95415
95431
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
95416
95432
  displayFormat: (FunctionConstructor | StringConstructor)[];
@@ -95418,6 +95434,10 @@ declare const VDateInput: {
95418
95434
  type: PropType<StrategyProps$1["location"]>;
95419
95435
  default: string;
95420
95436
  };
95437
+ updateOn: {
95438
+ type: PropType<("blur" | "enter")[]>;
95439
+ default: () => string[];
95440
+ };
95421
95441
  }>>;
95422
95442
  type VDateInput = InstanceType<typeof VDateInput>;
95423
95443
 
@@ -100903,23 +100923,19 @@ declare module 'vue' {
100903
100923
  $children?: VNodeChild
100904
100924
  }
100905
100925
  export interface GlobalComponents {
100906
- VApp: VApp
100907
100926
  VAppBar: VAppBar
100908
100927
  VAppBarNavIcon: VAppBarNavIcon
100909
100928
  VAppBarTitle: VAppBarTitle
100910
100929
  VAlert: VAlert
100911
100930
  VAlertTitle: VAlertTitle
100912
100931
  VAutocomplete: VAutocomplete
100932
+ VApp: VApp
100913
100933
  VAvatar: VAvatar
100914
- VBottomNavigation: VBottomNavigation
100915
- VBottomSheet: VBottomSheet
100916
- VBadge: VBadge
100917
100934
  VBanner: VBanner
100918
100935
  VBannerActions: VBannerActions
100919
100936
  VBannerText: VBannerText
100920
- VBreadcrumbs: VBreadcrumbs
100921
- VBreadcrumbsItem: VBreadcrumbsItem
100922
- VBreadcrumbsDivider: VBreadcrumbsDivider
100937
+ VBottomSheet: VBottomSheet
100938
+ VBadge: VBadge
100923
100939
  VBtnToggle: VBtnToggle
100924
100940
  VBtn: VBtn
100925
100941
  VCard: VCard
@@ -100928,17 +100944,17 @@ declare module 'vue' {
100928
100944
  VCardSubtitle: VCardSubtitle
100929
100945
  VCardText: VCardText
100930
100946
  VCardTitle: VCardTitle
100947
+ VChip: VChip
100931
100948
  VCheckbox: VCheckbox
100932
100949
  VCheckboxBtn: VCheckboxBtn
100933
- VBtnGroup: VBtnGroup
100950
+ VChipGroup: VChipGroup
100951
+ VBottomNavigation: VBottomNavigation
100952
+ VColorPicker: VColorPicker
100934
100953
  VCarousel: VCarousel
100935
100954
  VCarouselItem: VCarouselItem
100936
- VChipGroup: VChipGroup
100937
- VCounter: VCounter
100938
- VCode: VCode
100955
+ VBtnGroup: VBtnGroup
100939
100956
  VCombobox: VCombobox
100940
- VColorPicker: VColorPicker
100941
- VChip: VChip
100957
+ VCounter: VCounter
100942
100958
  VDataTable: VDataTable
100943
100959
  VDataTableHeaders: VDataTableHeaders
100944
100960
  VDataTableFooter: VDataTableFooter
@@ -100952,29 +100968,26 @@ declare module 'vue' {
100952
100968
  VDatePickerMonth: VDatePickerMonth
100953
100969
  VDatePickerMonths: VDatePickerMonths
100954
100970
  VDatePickerYears: VDatePickerYears
100955
- VDivider: VDivider
100956
- VDialog: VDialog
100971
+ VCode: VCode
100957
100972
  VFab: VFab
100973
+ VDivider: VDivider
100958
100974
  VExpansionPanels: VExpansionPanels
100959
100975
  VExpansionPanel: VExpansionPanel
100960
100976
  VExpansionPanelText: VExpansionPanelText
100961
100977
  VExpansionPanelTitle: VExpansionPanelTitle
100978
+ VDialog: VDialog
100962
100979
  VField: VField
100963
100980
  VFieldLabel: VFieldLabel
100964
100981
  VFileInput: VFileInput
100965
100982
  VFooter: VFooter
100983
+ VInput: VInput
100966
100984
  VEmptyState: VEmptyState
100967
100985
  VIcon: VIcon
100968
100986
  VComponentIcon: VComponentIcon
100969
100987
  VSvgIcon: VSvgIcon
100970
100988
  VLigatureIcon: VLigatureIcon
100971
100989
  VClassIcon: VClassIcon
100972
- VImg: VImg
100973
100990
  VInfiniteScroll: VInfiniteScroll
100974
- VInput: VInput
100975
- VLabel: VLabel
100976
- VItemGroup: VItemGroup
100977
- VItem: VItem
100978
100991
  VList: VList
100979
100992
  VListGroup: VListGroup
100980
100993
  VListImg: VListImg
@@ -100984,53 +100997,58 @@ declare module 'vue' {
100984
100997
  VListItemSubtitle: VListItemSubtitle
100985
100998
  VListItemTitle: VListItemTitle
100986
100999
  VListSubheader: VListSubheader
101000
+ VLabel: VLabel
100987
101001
  VKbd: VKbd
100988
- VMain: VMain
101002
+ VItemGroup: VItemGroup
101003
+ VItem: VItem
101004
+ VImg: VImg
100989
101005
  VMenu: VMenu
101006
+ VMain: VMain
100990
101007
  VMessages: VMessages
101008
+ VNumberInput: VNumberInput
100991
101009
  VOverlay: VOverlay
100992
101010
  VNavigationDrawer: VNavigationDrawer
100993
101011
  VPagination: VPagination
100994
- VOtpInput: VOtpInput
100995
- VNumberInput: VNumberInput
100996
101012
  VProgressCircular: VProgressCircular
101013
+ VOtpInput: VOtpInput
101014
+ VRadioGroup: VRadioGroup
100997
101015
  VProgressLinear: VProgressLinear
100998
101016
  VRating: VRating
100999
- VRadioGroup: VRadioGroup
101000
- VSelectionControl: VSelectionControl
101001
- VSelect: VSelect
101002
- VSkeletonLoader: VSkeletonLoader
101003
101017
  VSelectionControlGroup: VSelectionControlGroup
101004
101018
  VSheet: VSheet
101005
- VSlider: VSlider
101019
+ VSelect: VSelect
101020
+ VSkeletonLoader: VSkeletonLoader
101006
101021
  VSlideGroup: VSlideGroup
101007
101022
  VSlideGroupItem: VSlideGroupItem
101023
+ VSlider: VSlider
101008
101024
  VSnackbar: VSnackbar
101025
+ VSelectionControl: VSelectionControl
101026
+ VBreadcrumbs: VBreadcrumbs
101027
+ VBreadcrumbsItem: VBreadcrumbsItem
101028
+ VBreadcrumbsDivider: VBreadcrumbsDivider
101009
101029
  VStepper: VStepper
101010
101030
  VStepperActions: VStepperActions
101011
101031
  VStepperHeader: VStepperHeader
101012
101032
  VStepperItem: VStepperItem
101013
101033
  VStepperWindow: VStepperWindow
101014
101034
  VStepperWindowItem: VStepperWindowItem
101015
- VSystemBar: VSystemBar
101016
101035
  VSwitch: VSwitch
101017
- VTable: VTable
101036
+ VSystemBar: VSystemBar
101037
+ VTooltip: VTooltip
101038
+ VTextField: VTextField
101018
101039
  VTab: VTab
101019
101040
  VTabs: VTabs
101020
101041
  VTabsWindow: VTabsWindow
101021
101042
  VTabsWindowItem: VTabsWindowItem
101022
- VTextarea: VTextarea
101023
- VTextField: VTextField
101024
- VTimeline: VTimeline
101025
- VTimelineItem: VTimelineItem
101026
- VTooltip: VTooltip
101043
+ VTable: VTable
101027
101044
  VToolbar: VToolbar
101028
101045
  VToolbarTitle: VToolbarTitle
101029
101046
  VToolbarItems: VToolbarItems
101030
- VWindow: VWindow
101031
- VWindowItem: VWindowItem
101032
- VConfirmEdit: VConfirmEdit
101047
+ VTextarea: VTextarea
101048
+ VTimeline: VTimeline
101049
+ VTimelineItem: VTimelineItem
101033
101050
  VDataIterator: VDataIterator
101051
+ VConfirmEdit: VConfirmEdit
101034
101052
  VDefaultsProvider: VDefaultsProvider
101035
101053
  VForm: VForm
101036
101054
  VContainer: VContainer
@@ -101038,16 +101056,17 @@ declare module 'vue' {
101038
101056
  VRow: VRow
101039
101057
  VSpacer: VSpacer
101040
101058
  VHover: VHover
101041
- VLayout: VLayout
101042
- VLayoutItem: VLayoutItem
101043
101059
  VLazy: VLazy
101060
+ VWindow: VWindow
101061
+ VWindowItem: VWindowItem
101044
101062
  VLocaleProvider: VLocaleProvider
101063
+ VLayout: VLayout
101064
+ VLayoutItem: VLayoutItem
101045
101065
  VNoSsr: VNoSsr
101046
101066
  VParallax: VParallax
101047
101067
  VRadio: VRadio
101048
101068
  VRangeSlider: VRangeSlider
101049
101069
  VResponsive: VResponsive
101050
- VSnackbarQueue: VSnackbarQueue
101051
101070
  VSparkline: VSparkline
101052
101071
  VSpeedDial: VSpeedDial
101053
101072
  VThemeProvider: VThemeProvider
@@ -101069,26 +101088,27 @@ declare module 'vue' {
101069
101088
  VExpandTransition: VExpandTransition
101070
101089
  VExpandXTransition: VExpandXTransition
101071
101090
  VDialogTransition: VDialogTransition
101072
- VIconBtn: VIconBtn
101091
+ VSnackbarQueue: VSnackbarQueue
101073
101092
  VCalendar: VCalendar
101074
101093
  VCalendarDay: VCalendarDay
101075
101094
  VCalendarHeader: VCalendarHeader
101076
101095
  VCalendarInterval: VCalendarInterval
101077
101096
  VCalendarIntervalEvent: VCalendarIntervalEvent
101078
101097
  VCalendarMonthDay: VCalendarMonthDay
101079
- VTimePicker: VTimePicker
101080
- VTimePickerClock: VTimePickerClock
101081
- VTimePickerControls: VTimePickerControls
101098
+ VPicker: VPicker
101099
+ VPickerTitle: VPickerTitle
101082
101100
  VFileUpload: VFileUpload
101083
101101
  VFileUploadItem: VFileUploadItem
101102
+ VIconBtn: VIconBtn
101084
101103
  VStepperVertical: VStepperVertical
101085
101104
  VStepperVerticalItem: VStepperVerticalItem
101086
101105
  VStepperVerticalActions: VStepperVerticalActions
101087
- VPicker: VPicker
101088
- VPickerTitle: VPickerTitle
101089
101106
  VTreeview: VTreeview
101090
101107
  VTreeviewItem: VTreeviewItem
101091
101108
  VTreeviewGroup: VTreeviewGroup
101109
+ VTimePicker: VTimePicker
101110
+ VTimePickerClock: VTimePickerClock
101111
+ VTimePickerControls: VTimePickerControls
101092
101112
  VDateInput: VDateInput
101093
101113
  VPullToRefresh: VPullToRefresh
101094
101114
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.3-master.2025-04-30
2
+ * Vuetify v3.8.3-master.2025-05-02
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -18991,7 +18991,7 @@ function provideSelection(props, _ref9) {
18991
18991
  index = index ?? currentPage.value.findIndex(i => i.value === item.value);
18992
18992
  if (props.selectStrategy !== 'single' && event?.shiftKey && lastSelectedIndex.value !== null) {
18993
18993
  const [start, end] = [lastSelectedIndex.value, index].sort((a, b) => a - b);
18994
- items.push(...currentPage.value.slice(start, end + 1));
18994
+ items.push(...currentPage.value.slice(start, end + 1).filter(item => item.selectable));
18995
18995
  } else {
18996
18996
  items.push(item);
18997
18997
  lastSelectedIndex.value = index;
@@ -29061,7 +29061,13 @@ const makeVDateInputProps = propsFactory({
29061
29061
  type: String,
29062
29062
  default: 'bottom start'
29063
29063
  },
29064
- ...makeDisplayProps(),
29064
+ updateOn: {
29065
+ type: Array,
29066
+ default: () => ['blur', 'enter']
29067
+ },
29068
+ ...makeDisplayProps({
29069
+ mobile: null
29070
+ }),
29065
29071
  ...makeFocusProps(),
29066
29072
  ...makeVConfirmEditProps({
29067
29073
  hideActions: true
@@ -29100,7 +29106,8 @@ const VDateInput = genericComponent()({
29100
29106
  focus,
29101
29107
  blur
29102
29108
  } = useFocus(props);
29103
- const model = useProxiedModel(props, 'modelValue', props.multiple ? [] : null, val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val, val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val);
29109
+ const emptyModelValue = () => props.multiple ? [] : null;
29110
+ const model = useProxiedModel(props, 'modelValue', emptyModelValue(), val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val, val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val);
29104
29111
  const menu = shallowRef(false);
29105
29112
  const isEditingInput = shallowRef(false);
29106
29113
  const vTextFieldRef = ref();
@@ -29131,7 +29138,10 @@ const VDateInput = genericComponent()({
29131
29138
  return 'none';
29132
29139
  });
29133
29140
  const isInteractive = computed(() => !props.disabled && !props.readonly);
29134
- const isReadonly = computed(() => !(mobile.value && isEditingInput.value) && props.readonly);
29141
+ const isReadonly = computed(() => {
29142
+ if (!props.updateOn.length) return true;
29143
+ return !(mobile.value && isEditingInput.value) && props.readonly;
29144
+ });
29135
29145
  watch(menu, val => {
29136
29146
  if (val) return;
29137
29147
  isEditingInput.value = false;
@@ -29143,8 +29153,9 @@ const VDateInput = genericComponent()({
29143
29153
  menu.value = true;
29144
29154
  return;
29145
29155
  }
29146
- const target = e.target;
29147
- model.value = adapter.isValid(target.value) ? target.value : null;
29156
+ if (props.updateOn.includes('enter')) {
29157
+ onUserInput(e.target);
29158
+ }
29148
29159
  }
29149
29160
  function onClick(e) {
29150
29161
  e.preventDefault();
@@ -29166,9 +29177,12 @@ const VDateInput = genericComponent()({
29166
29177
  }
29167
29178
  function onUpdateDisplayModel(value) {
29168
29179
  if (value != null) return;
29169
- model.value = null;
29180
+ model.value = emptyModelValue();
29170
29181
  }
29171
- function onBlur() {
29182
+ function onBlur(e) {
29183
+ if (props.updateOn.includes('blur')) {
29184
+ onUserInput(e.target);
29185
+ }
29172
29186
  blur();
29173
29187
 
29174
29188
  // When in mobile mode and editing is done (due to keyboard dismissal), close the menu
@@ -29177,6 +29191,13 @@ const VDateInput = genericComponent()({
29177
29191
  isEditingInput.value = false;
29178
29192
  }
29179
29193
  }
29194
+ function onUserInput(_ref2) {
29195
+ let {
29196
+ value
29197
+ } = _ref2;
29198
+ if (value && !adapter.isValid(value)) return;
29199
+ model.value = !value ? emptyModelValue() : value;
29200
+ }
29180
29201
  useRender(() => {
29181
29202
  const confirmEditProps = VConfirmEdit.filterProps(props);
29182
29203
  const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']));
@@ -29215,14 +29236,14 @@ const VDateInput = genericComponent()({
29215
29236
  "onSave": onSave,
29216
29237
  "onCancel": onCancel
29217
29238
  }), {
29218
- default: _ref2 => {
29239
+ default: _ref3 => {
29219
29240
  let {
29220
29241
  actions,
29221
29242
  model: proxyModel,
29222
29243
  save,
29223
29244
  cancel,
29224
29245
  isPristine
29225
- } = _ref2;
29246
+ } = _ref3;
29226
29247
  function onUpdateModel(value) {
29227
29248
  if (!props.hideActions) {
29228
29249
  proxyModel.value = value;
@@ -31637,7 +31658,7 @@ function createVuetify$1() {
31637
31658
  };
31638
31659
  });
31639
31660
  }
31640
- const version$1 = "3.8.3-master.2025-04-30";
31661
+ const version$1 = "3.8.3-master.2025-05-02";
31641
31662
  createVuetify$1.version = version$1;
31642
31663
 
31643
31664
  // Vue's inject() can only be used in setup
@@ -31935,7 +31956,7 @@ var index = /*#__PURE__*/Object.freeze({
31935
31956
 
31936
31957
  /* eslint-disable local-rules/sort-imports */
31937
31958
 
31938
- const version = "3.8.3-master.2025-04-30";
31959
+ const version = "3.8.3-master.2025-05-02";
31939
31960
 
31940
31961
  /* eslint-disable local-rules/sort-imports */
31941
31962