@vuetify/nightly 3.8.0-beta.0-dev.2025-03-24 → 3.8.0-beta.0-dev.2025-03-25

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 (46) hide show
  1. package/CHANGELOG.md +39 -3
  2. package/dist/json/attributes.json +3258 -3254
  3. package/dist/json/importMap-labs.json +8 -8
  4. package/dist/json/importMap.json +162 -162
  5. package/dist/json/tags.json +1 -0
  6. package/dist/json/web-types.json +6130 -6099
  7. package/dist/vuetify-labs.cjs +63 -25
  8. package/dist/vuetify-labs.css +3530 -3530
  9. package/dist/vuetify-labs.d.ts +112 -88
  10. package/dist/vuetify-labs.esm.js +63 -25
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +63 -25
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +25 -10
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +6104 -6104
  17. package/dist/vuetify.d.ts +89 -86
  18. package/dist/vuetify.esm.js +25 -10
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +25 -10
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +10 -10
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VDataTable/VDataTable.d.ts +4 -4
  26. package/lib/components/VDataTable/VDataTableRow.d.ts +9 -6
  27. package/lib/components/VDataTable/VDataTableRow.js +18 -3
  28. package/lib/components/VDataTable/VDataTableRow.js.map +1 -1
  29. package/lib/components/VDataTable/VDataTableRows.d.ts +4 -4
  30. package/lib/components/VDataTable/VDataTableServer.d.ts +4 -4
  31. package/lib/components/VDataTable/VDataTableVirtual.d.ts +4 -4
  32. package/lib/components/VDatePicker/VDatePicker.js +1 -1
  33. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  34. package/lib/components/VIcon/VIcon.js +2 -2
  35. package/lib/components/VIcon/VIcon.js.map +1 -1
  36. package/lib/composables/calendar.js +1 -1
  37. package/lib/composables/calendar.js.map +1 -1
  38. package/lib/entry-bundler.js +1 -1
  39. package/lib/framework.d.ts +54 -54
  40. package/lib/framework.js +1 -1
  41. package/lib/labs/VDateInput/VDateInput.d.ts +35 -3
  42. package/lib/labs/VDateInput/VDateInput.js +38 -15
  43. package/lib/labs/VDateInput/VDateInput.js.map +1 -1
  44. package/lib/util/helpers.js +1 -1
  45. package/lib/util/helpers.js.map +1 -1
  46. package/package.json +1 -1
@@ -23031,20 +23031,12 @@ declare const VDataTableHeaders: {
23031
23031
  }>>;
23032
23032
  type VDataTableHeaders = InstanceType<typeof VDataTableHeaders>;
23033
23033
 
23034
- type VDataTableGroupHeaderRowSlots = {
23035
- 'data-table-group': {
23036
- item: Group;
23037
- count: number;
23038
- props: Record<string, unknown>;
23039
- };
23040
- 'data-table-select': {
23041
- props: Record<string, unknown>;
23042
- };
23034
+ type VDataTableItemCellColumnSlotProps<T> = Omit<ItemKeySlot<T>, 'value'> & {
23035
+ props: Record<string, unknown>;
23043
23036
  };
23044
-
23045
23037
  type VDataTableRowSlots<T> = {
23046
- 'item.data-table-select': Omit<ItemKeySlot<T>, 'value'>;
23047
- 'item.data-table-expand': Omit<ItemKeySlot<T>, 'value'>;
23038
+ 'item.data-table-select': VDataTableItemCellColumnSlotProps<T>;
23039
+ 'item.data-table-expand': VDataTableItemCellColumnSlotProps<T>;
23048
23040
  'header.data-table-select': VDataTableHeaderCellColumnSlotProps;
23049
23041
  'header.data-table-expand': VDataTableHeaderCellColumnSlotProps;
23050
23042
  } & {
@@ -23065,8 +23057,8 @@ declare const VDataTableRow: {
23065
23057
  }, true, {}, vue.SlotsType<Partial<{
23066
23058
  [x: `item.${string}`]: (arg: ItemKeySlot<unknown>) => vue.VNode[];
23067
23059
  [x: `header.${string}`]: (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23068
- 'item.data-table-select': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23069
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23060
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23061
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23070
23062
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23071
23063
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23072
23064
  }>>, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
@@ -23103,8 +23095,8 @@ declare const VDataTableRow: {
23103
23095
  }, {}, string, vue.SlotsType<Partial<{
23104
23096
  [x: `item.${string}`]: (arg: ItemKeySlot<unknown>) => vue.VNode[];
23105
23097
  [x: `header.${string}`]: (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23106
- 'item.data-table-select': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23107
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23098
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23099
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23108
23100
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23109
23101
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23110
23102
  }>>, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>(props: {
@@ -23137,6 +23129,17 @@ declare const VDataTableRow: {
23137
23129
  }>>;
23138
23130
  type VDataTableRow = InstanceType<typeof VDataTableRow>;
23139
23131
 
23132
+ type VDataTableGroupHeaderRowSlots = {
23133
+ 'data-table-group': {
23134
+ item: Group;
23135
+ count: number;
23136
+ props: Record<string, unknown>;
23137
+ };
23138
+ 'data-table-select': {
23139
+ props: Record<string, unknown>;
23140
+ };
23141
+ };
23142
+
23140
23143
  type VDataTableRowsSlots<T> = VDataTableGroupHeaderRowSlots & VDataTableRowSlots<T> & {
23141
23144
  item: ItemSlot$1<T> & {
23142
23145
  props: Record<string, any>;
@@ -23173,8 +23176,8 @@ declare const VDataTableRows: {
23173
23176
  'data-table-select': (arg: {
23174
23177
  props: Record<string, unknown>;
23175
23178
  }) => vue.VNode[];
23176
- 'item.data-table-select': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23177
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23179
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23180
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23178
23181
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23179
23182
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23180
23183
  item: (arg: {
@@ -23246,8 +23249,8 @@ declare const VDataTableRows: {
23246
23249
  'data-table-select': (arg: {
23247
23250
  props: Record<string, unknown>;
23248
23251
  }) => vue.VNode[];
23249
- 'item.data-table-select': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23250
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<unknown>, "value">) => vue.VNode[];
23252
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23253
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<unknown>) => vue.VNode[];
23251
23254
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23252
23255
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23253
23256
  item: (arg: {
@@ -23492,8 +23495,8 @@ declare const VDataTable: {
23492
23495
  'data-table-select': (arg: {
23493
23496
  props: Record<string, unknown>;
23494
23497
  }) => vue.VNode[];
23495
- 'item.data-table-select': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
23496
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
23498
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
23499
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
23497
23500
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23498
23501
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23499
23502
  item: (arg: {
@@ -23793,8 +23796,8 @@ declare const VDataTable: {
23793
23796
  'data-table-select': (arg: {
23794
23797
  props: Record<string, unknown>;
23795
23798
  }) => vue.VNode[];
23796
- 'item.data-table-select': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
23797
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
23799
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
23800
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
23798
23801
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23799
23802
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
23800
23803
  item: (arg: {
@@ -24584,8 +24587,8 @@ declare const VDataTableVirtual: {
24584
24587
  'data-table-select': (arg: {
24585
24588
  props: Record<string, unknown>;
24586
24589
  }) => vue.VNode[];
24587
- 'item.data-table-select': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
24588
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
24590
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
24591
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
24589
24592
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
24590
24593
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
24591
24594
  item: (arg: {
@@ -24907,8 +24910,8 @@ declare const VDataTableVirtual: {
24907
24910
  'data-table-select': (arg: {
24908
24911
  props: Record<string, unknown>;
24909
24912
  }) => vue.VNode[];
24910
- 'item.data-table-select': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
24911
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
24913
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
24914
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
24912
24915
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
24913
24916
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
24914
24917
  item: (arg: {
@@ -25358,8 +25361,8 @@ declare const VDataTableServer: {
25358
25361
  'data-table-select': (arg: {
25359
25362
  props: Record<string, unknown>;
25360
25363
  }) => vue.VNode[];
25361
- 'item.data-table-select': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
25362
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
25364
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
25365
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
25363
25366
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
25364
25367
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
25365
25368
  item: (arg: {
@@ -25730,8 +25733,8 @@ declare const VDataTableServer: {
25730
25733
  'data-table-select': (arg: {
25731
25734
  props: Record<string, unknown>;
25732
25735
  }) => vue.VNode[];
25733
- 'item.data-table-select': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
25734
- 'item.data-table-expand': (arg: Omit<ItemKeySlot<any>, "value">) => vue.VNode[];
25736
+ 'item.data-table-select': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
25737
+ 'item.data-table-expand': (arg: VDataTableItemCellColumnSlotProps<any>) => vue.VNode[];
25735
25738
  'header.data-table-select': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
25736
25739
  'header.data-table-expand': (arg: VDataTableHeaderCellColumnSlotProps) => vue.VNode[];
25737
25740
  item: (arg: {
@@ -66862,6 +66865,7 @@ declare const VDateInput: {
66862
66865
  modelModifiers?: Record<string, boolean> | undefined;
66863
66866
  firstDayOfWeek?: string | number | undefined;
66864
66867
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
66868
+ displayFormat?: string | Function | undefined;
66865
66869
  } & {
66866
66870
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
66867
66871
  message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
@@ -66920,8 +66924,12 @@ declare const VDateInput: {
66920
66924
  "v-slot:actions"?: false | ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
66921
66925
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
66922
66926
  } & {
66927
+ onCancel?: (() => any) | undefined;
66923
66928
  "onUpdate:modelValue"?: ((val: string) => any) | undefined;
66929
+ onSave?: ((value: string) => any) | undefined;
66924
66930
  }, any, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
66931
+ save: (value: string) => true;
66932
+ cancel: () => true;
66925
66933
  'update:modelValue': (val: string) => true;
66926
66934
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
66927
66935
  flat: boolean;
@@ -67106,6 +67114,7 @@ declare const VDateInput: {
67106
67114
  modelModifiers?: Record<string, boolean> | undefined;
67107
67115
  firstDayOfWeek?: string | number | undefined;
67108
67116
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
67117
+ displayFormat?: string | Function | undefined;
67109
67118
  } & {
67110
67119
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
67111
67120
  message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
@@ -67164,7 +67173,9 @@ declare const VDateInput: {
67164
67173
  "v-slot:actions"?: false | ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
67165
67174
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
67166
67175
  } & {
67176
+ onCancel?: (() => any) | undefined;
67167
67177
  "onUpdate:modelValue"?: ((val: string) => any) | undefined;
67178
+ onSave?: ((value: string) => any) | undefined;
67168
67179
  }, any, {}, {}, {}, {
67169
67180
  flat: boolean;
67170
67181
  reverse: boolean;
@@ -67327,6 +67338,7 @@ declare const VDateInput: {
67327
67338
  modelModifiers?: Record<string, boolean> | undefined;
67328
67339
  firstDayOfWeek?: string | number | undefined;
67329
67340
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
67341
+ displayFormat?: string | Function | undefined;
67330
67342
  } & {
67331
67343
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
67332
67344
  message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
@@ -67385,8 +67397,12 @@ declare const VDateInput: {
67385
67397
  "v-slot:actions"?: false | ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
67386
67398
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
67387
67399
  } & {
67400
+ onCancel?: (() => any) | undefined;
67388
67401
  "onUpdate:modelValue"?: ((val: string) => any) | undefined;
67402
+ onSave?: ((value: string) => any) | undefined;
67389
67403
  }, any, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
67404
+ save: (value: string) => true;
67405
+ cancel: () => true;
67390
67406
  'update:modelValue': (val: string) => true;
67391
67407
  }, string, {
67392
67408
  flat: boolean;
@@ -67681,7 +67697,11 @@ declare const VDateInput: {
67681
67697
  type: StringConstructor;
67682
67698
  default: string;
67683
67699
  };
67684
- hideActions: BooleanConstructor;
67700
+ hideActions: {
67701
+ type: PropType<boolean>;
67702
+ default: boolean;
67703
+ };
67704
+ displayFormat: (FunctionConstructor | StringConstructor)[];
67685
67705
  location: {
67686
67706
  type: PropType<StrategyProps$1["location"]>;
67687
67707
  default: string;
@@ -67907,7 +67927,11 @@ declare const VDateInput: {
67907
67927
  type: StringConstructor;
67908
67928
  default: string;
67909
67929
  };
67910
- hideActions: BooleanConstructor;
67930
+ hideActions: {
67931
+ type: PropType<boolean>;
67932
+ default: boolean;
67933
+ };
67934
+ displayFormat: (FunctionConstructor | StringConstructor)[];
67911
67935
  location: {
67912
67936
  type: PropType<StrategyProps$1["location"]>;
67913
67937
  default: string;
@@ -73028,80 +73052,78 @@ declare module 'vue' {
73028
73052
  $children?: VNodeChild
73029
73053
  }
73030
73054
  export interface GlobalComponents {
73031
- VApp: VApp
73032
- VAvatar: VAvatar
73055
+ VAlert: VAlert
73056
+ VAlertTitle: VAlertTitle
73033
73057
  VAppBar: VAppBar
73034
73058
  VAppBarNavIcon: VAppBarNavIcon
73035
73059
  VAppBarTitle: VAppBarTitle
73036
- VAlert: VAlert
73037
- VAlertTitle: VAlertTitle
73060
+ VAutocomplete: VAutocomplete
73061
+ VApp: VApp
73062
+ VAvatar: VAvatar
73063
+ VBottomSheet: VBottomSheet
73038
73064
  VBottomNavigation: VBottomNavigation
73065
+ VBadge: VBadge
73066
+ VBtnGroup: VBtnGroup
73039
73067
  VBanner: VBanner
73040
73068
  VBannerActions: VBannerActions
73041
73069
  VBannerText: VBannerText
73042
- VBadge: VBadge
73043
- VAutocomplete: VAutocomplete
73044
- VBottomSheet: VBottomSheet
73070
+ VBtn: VBtn
73071
+ VCarousel: VCarousel
73072
+ VCarouselItem: VCarouselItem
73045
73073
  VBreadcrumbs: VBreadcrumbs
73046
73074
  VBreadcrumbsItem: VBreadcrumbsItem
73047
73075
  VBreadcrumbsDivider: VBreadcrumbsDivider
73048
- VCarousel: VCarousel
73049
- VCarouselItem: VCarouselItem
73050
- VBtn: VBtn
73051
73076
  VBtnToggle: VBtnToggle
73052
- VBtnGroup: VBtnGroup
73077
+ VCheckbox: VCheckbox
73078
+ VCheckboxBtn: VCheckboxBtn
73079
+ VCode: VCode
73053
73080
  VCard: VCard
73054
73081
  VCardActions: VCardActions
73055
73082
  VCardItem: VCardItem
73056
73083
  VCardSubtitle: VCardSubtitle
73057
73084
  VCardText: VCardText
73058
73085
  VCardTitle: VCardTitle
73059
- VChip: VChip
73060
- VCheckbox: VCheckbox
73061
- VCheckboxBtn: VCheckboxBtn
73062
- VCode: VCode
73086
+ VDialog: VDialog
73063
73087
  VChipGroup: VChipGroup
73064
- VColorPicker: VColorPicker
73065
73088
  VCombobox: VCombobox
73066
- VCounter: VCounter
73067
- VDialog: VDialog
73089
+ VChip: VChip
73090
+ VColorPicker: VColorPicker
73091
+ VDivider: VDivider
73068
73092
  VDatePicker: VDatePicker
73069
73093
  VDatePickerControls: VDatePickerControls
73070
73094
  VDatePickerHeader: VDatePickerHeader
73071
73095
  VDatePickerMonth: VDatePickerMonth
73072
73096
  VDatePickerMonths: VDatePickerMonths
73073
73097
  VDatePickerYears: VDatePickerYears
73074
- VDataTable: VDataTable
73075
- VDataTableHeaders: VDataTableHeaders
73076
- VDataTableFooter: VDataTableFooter
73077
- VDataTableRows: VDataTableRows
73078
- VDataTableRow: VDataTableRow
73079
- VDataTableVirtual: VDataTableVirtual
73080
- VDataTableServer: VDataTableServer
73081
73098
  VEmptyState: VEmptyState
73099
+ VCounter: VCounter
73100
+ VFab: VFab
73101
+ VFooter: VFooter
73082
73102
  VExpansionPanels: VExpansionPanels
73083
73103
  VExpansionPanel: VExpansionPanel
73084
73104
  VExpansionPanelText: VExpansionPanelText
73085
73105
  VExpansionPanelTitle: VExpansionPanelTitle
73086
- VDivider: VDivider
73087
- VFooter: VFooter
73088
- VFab: VFab
73089
- VFileInput: VFileInput
73090
- VField: VField
73091
- VFieldLabel: VFieldLabel
73092
- VInfiniteScroll: VInfiniteScroll
73093
73106
  VIcon: VIcon
73094
73107
  VComponentIcon: VComponentIcon
73095
73108
  VSvgIcon: VSvgIcon
73096
73109
  VLigatureIcon: VLigatureIcon
73097
73110
  VClassIcon: VClassIcon
73098
- VKbd: VKbd
73111
+ VField: VField
73112
+ VFieldLabel: VFieldLabel
73113
+ VFileInput: VFileInput
73099
73114
  VImg: VImg
73115
+ VInput: VInput
73116
+ VInfiniteScroll: VInfiniteScroll
73100
73117
  VItemGroup: VItemGroup
73101
73118
  VItem: VItem
73102
- VInput: VInput
73103
- VLabel: VLabel
73104
- VMenu: VMenu
73119
+ VDataTable: VDataTable
73120
+ VDataTableHeaders: VDataTableHeaders
73121
+ VDataTableFooter: VDataTableFooter
73122
+ VDataTableRows: VDataTableRows
73123
+ VDataTableRow: VDataTableRow
73124
+ VDataTableVirtual: VDataTableVirtual
73125
+ VDataTableServer: VDataTableServer
73126
+ VKbd: VKbd
73105
73127
  VList: VList
73106
73128
  VListGroup: VListGroup
73107
73129
  VListImg: VListImg
@@ -73111,24 +73133,26 @@ declare module 'vue' {
73111
73133
  VListItemSubtitle: VListItemSubtitle
73112
73134
  VListItemTitle: VListItemTitle
73113
73135
  VListSubheader: VListSubheader
73136
+ VLabel: VLabel
73137
+ VMenu: VMenu
73138
+ VNumberInput: VNumberInput
73139
+ VMessages: VMessages
73114
73140
  VNavigationDrawer: VNavigationDrawer
73115
73141
  VMain: VMain
73142
+ VOtpInput: VOtpInput
73116
73143
  VOverlay: VOverlay
73117
- VMessages: VMessages
73118
- VNumberInput: VNumberInput
73119
- VPagination: VPagination
73144
+ VProgressCircular: VProgressCircular
73120
73145
  VRadioGroup: VRadioGroup
73121
- VOtpInput: VOtpInput
73122
73146
  VProgressLinear: VProgressLinear
73123
- VSelect: VSelect
73124
- VProgressCircular: VProgressCircular
73147
+ VPagination: VPagination
73125
73148
  VRating: VRating
73149
+ VSelect: VSelect
73126
73150
  VSelectionControl: VSelectionControl
73151
+ VSkeletonLoader: VSkeletonLoader
73127
73152
  VSelectionControlGroup: VSelectionControlGroup
73128
73153
  VSheet: VSheet
73129
- VSlider: VSlider
73130
- VSkeletonLoader: VSkeletonLoader
73131
73154
  VSnackbar: VSnackbar
73155
+ VSlider: VSlider
73132
73156
  VStepper: VStepper
73133
73157
  VStepperActions: VStepperActions
73134
73158
  VStepperHeader: VStepperHeader
@@ -73137,17 +73161,17 @@ declare module 'vue' {
73137
73161
  VStepperWindowItem: VStepperWindowItem
73138
73162
  VSlideGroup: VSlideGroup
73139
73163
  VSlideGroupItem: VSlideGroupItem
73164
+ VSystemBar: VSystemBar
73165
+ VSwitch: VSwitch
73166
+ VTable: VTable
73140
73167
  VTab: VTab
73141
73168
  VTabs: VTabs
73142
73169
  VTabsWindow: VTabsWindow
73143
73170
  VTabsWindowItem: VTabsWindowItem
73144
- VSystemBar: VSystemBar
73171
+ VTextField: VTextField
73145
73172
  VTextarea: VTextarea
73146
73173
  VTimeline: VTimeline
73147
73174
  VTimelineItem: VTimelineItem
73148
- VSwitch: VSwitch
73149
- VTable: VTable
73150
- VTextField: VTextField
73151
73175
  VTooltip: VTooltip
73152
73176
  VToolbar: VToolbar
73153
73177
  VToolbarTitle: VToolbarTitle
@@ -73162,19 +73186,19 @@ declare module 'vue' {
73162
73186
  VCol: VCol
73163
73187
  VRow: VRow
73164
73188
  VSpacer: VSpacer
73189
+ VHover: VHover
73165
73190
  VLayout: VLayout
73166
73191
  VLayoutItem: VLayoutItem
73167
- VHover: VHover
73168
73192
  VLazy: VLazy
73169
73193
  VLocaleProvider: VLocaleProvider
73170
73194
  VNoSsr: VNoSsr
73171
- VParallax: VParallax
73172
73195
  VRadio: VRadio
73173
- VRangeSlider: VRangeSlider
73196
+ VParallax: VParallax
73174
73197
  VResponsive: VResponsive
73175
73198
  VSnackbarQueue: VSnackbarQueue
73176
- VSpeedDial: VSpeedDial
73177
73199
  VSparkline: VSparkline
73200
+ VRangeSlider: VRangeSlider
73201
+ VSpeedDial: VSpeedDial
73178
73202
  VThemeProvider: VThemeProvider
73179
73203
  VValidation: VValidation
73180
73204
  VVirtualScroll: VVirtualScroll
@@ -73200,8 +73224,6 @@ declare module 'vue' {
73200
73224
  VCalendarInterval: VCalendarInterval
73201
73225
  VCalendarIntervalEvent: VCalendarIntervalEvent
73202
73226
  VCalendarMonthDay: VCalendarMonthDay
73203
- VFileUpload: VFileUpload
73204
- VFileUploadItem: VFileUploadItem
73205
73227
  VPicker: VPicker
73206
73228
  VPickerTitle: VPickerTitle
73207
73229
  VStepperVertical: VStepperVertical
@@ -73210,6 +73232,8 @@ declare module 'vue' {
73210
73232
  VTimePicker: VTimePicker
73211
73233
  VTimePickerClock: VTimePickerClock
73212
73234
  VTimePickerControls: VTimePickerControls
73235
+ VFileUpload: VFileUpload
73236
+ VFileUploadItem: VFileUploadItem
73213
73237
  VTreeview: VTreeview
73214
73238
  VTreeviewItem: VTreeviewItem
73215
73239
  VTreeviewGroup: VTreeviewGroup
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.0-beta.0-dev.2025-03-24
2
+ * Vuetify v3.8.0-beta.0-dev.2025-03-25
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -229,7 +229,7 @@ function has(obj, key) {
229
229
  function pick(obj, paths) {
230
230
  const found = {};
231
231
  for (const key of paths) {
232
- if (Object.hasOwn(obj, key)) {
232
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
233
233
  found[key] = obj[key];
234
234
  }
235
235
  }
@@ -4682,7 +4682,7 @@ const VIcon = genericComponent()({
4682
4682
  const slotIcon = ref();
4683
4683
  const {
4684
4684
  themeClasses
4685
- } = provideTheme(props);
4685
+ } = useTheme();
4686
4686
  const {
4687
4687
  iconData
4688
4688
  } = useIcon(computed(() => slotIcon.value || props.icon));
@@ -20567,22 +20567,37 @@ const VDataTableRow = genericComponent()({
20567
20567
  "width": !mobile.value ? column.width : undefined
20568
20568
  }, cellProps, columnCellProps), {
20569
20569
  default: () => {
20570
- if (slots[slotName] && !mobile.value) return slots[slotName]?.(slotProps);
20571
20570
  if (column.key === 'data-table-select') {
20572
- return slots['item.data-table-select']?.(slotProps) ?? createVNode(VCheckboxBtn, {
20571
+ return slots['item.data-table-select']?.({
20572
+ ...slotProps,
20573
+ props: {
20574
+ disabled: !item.selectable,
20575
+ modelValue: isSelected([item]),
20576
+ onClick: withModifiers(() => toggleSelect(item), ['stop'])
20577
+ }
20578
+ }) ?? createVNode(VCheckboxBtn, {
20573
20579
  "disabled": !item.selectable,
20574
20580
  "modelValue": isSelected([item]),
20575
20581
  "onClick": withModifiers(event => toggleSelect(item, props.index, event), ['stop'])
20576
20582
  }, null);
20577
20583
  }
20578
20584
  if (column.key === 'data-table-expand') {
20579
- return slots['item.data-table-expand']?.(slotProps) ?? createVNode(VBtn, {
20585
+ return slots['item.data-table-expand']?.({
20586
+ ...slotProps,
20587
+ props: {
20588
+ icon: isExpanded(item) ? '$collapse' : '$expand',
20589
+ size: 'small',
20590
+ variant: 'text',
20591
+ onClick: withModifiers(() => toggleExpand(item), ['stop'])
20592
+ }
20593
+ }) ?? createVNode(VBtn, {
20580
20594
  "icon": isExpanded(item) ? '$collapse' : '$expand',
20581
20595
  "size": "small",
20582
20596
  "variant": "text",
20583
20597
  "onClick": withModifiers(() => toggleExpand(item), ['stop'])
20584
20598
  }, null);
20585
20599
  }
20600
+ if (slots[slotName] && !mobile.value) return slots[slotName](slotProps);
20586
20601
  const displayValue = toDisplayString(slotProps.value);
20587
20602
  return !mobile.value ? displayValue : createVNode(Fragment, null, [createVNode("div", {
20588
20603
  "class": "v-data-table__td-title"
@@ -21925,7 +21940,7 @@ const makeCalendarProps = propsFactory({
21925
21940
  }, 'calendar');
21926
21941
  function useCalendar(props) {
21927
21942
  const adapter = useDate();
21928
- const model = useProxiedModel(props, 'modelValue', [], v => wrapInArray(v));
21943
+ const model = useProxiedModel(props, 'modelValue', [], v => wrapInArray(v).map(i => adapter.date(i)));
21929
21944
  const displayValue = computed(() => {
21930
21945
  if (props.displayValue) return adapter.date(props.displayValue);
21931
21946
  if (model.value.length > 0) return adapter.date(model.value[0]);
@@ -22438,7 +22453,7 @@ const VDatePicker = genericComponent()({
22438
22453
  const {
22439
22454
  rtlClasses
22440
22455
  } = useRtl();
22441
- const model = useProxiedModel(props, 'modelValue', undefined, v => wrapInArray(v), v => props.multiple ? v : v[0]);
22456
+ const model = useProxiedModel(props, 'modelValue', undefined, v => wrapInArray(v).map(i => adapter.date(i)), v => props.multiple ? v : v[0]);
22442
22457
  const viewMode = useProxiedModel(props, 'viewMode');
22443
22458
  // const inputMode = useProxiedModel(props, 'inputMode')
22444
22459
 
@@ -28916,12 +28931,15 @@ const VCalendar = genericComponent()({
28916
28931
  // Types
28917
28932
 
28918
28933
  const makeVDateInputProps = propsFactory({
28934
+ displayFormat: [Function, String],
28919
28935
  location: {
28920
28936
  type: String,
28921
28937
  default: 'bottom start'
28922
28938
  },
28923
28939
  ...makeFocusProps(),
28924
- ...makeVConfirmEditProps(),
28940
+ ...makeVConfirmEditProps({
28941
+ hideActions: true
28942
+ }),
28925
28943
  ...makeVTextFieldProps({
28926
28944
  placeholder: 'mm/dd/yyyy',
28927
28945
  prependIcon: '$calendar'
@@ -28935,10 +28953,13 @@ const VDateInput = genericComponent()({
28935
28953
  name: 'VDateInput',
28936
28954
  props: makeVDateInputProps(),
28937
28955
  emits: {
28956
+ save: value => true,
28957
+ cancel: () => true,
28938
28958
  'update:modelValue': val => true
28939
28959
  },
28940
28960
  setup(props, _ref) {
28941
28961
  let {
28962
+ emit,
28942
28963
  slots
28943
28964
  } = _ref;
28944
28965
  const {
@@ -28953,6 +28974,12 @@ const VDateInput = genericComponent()({
28953
28974
  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);
28954
28975
  const menu = shallowRef(false);
28955
28976
  const vDateInputRef = ref();
28977
+ function format(date) {
28978
+ if (typeof props.displayFormat === 'function') {
28979
+ return props.displayFormat(date);
28980
+ }
28981
+ return adapter.format(date, props.displayFormat ?? 'keyboardDate');
28982
+ }
28956
28983
  const display = computed(() => {
28957
28984
  const value = wrapInArray(model.value);
28958
28985
  if (!value.length) return null;
@@ -28962,9 +28989,10 @@ const VDateInput = genericComponent()({
28962
28989
  if (props.multiple === 'range') {
28963
28990
  const start = value[0];
28964
28991
  const end = value[value.length - 1];
28965
- return adapter.isValid(start) && adapter.isValid(end) ? `${adapter.format(adapter.date(start), 'keyboardDate')} - ${adapter.format(adapter.date(end), 'keyboardDate')}` : '';
28992
+ if (!adapter.isValid(start) || !adapter.isValid(end)) return '';
28993
+ return `${format(adapter.date(start))} - ${format(adapter.date(end))}`;
28966
28994
  }
28967
- return adapter.isValid(model.value) ? adapter.format(adapter.date(model.value), 'keyboardDate') : '';
28995
+ return adapter.isValid(model.value) ? format(adapter.date(model.value)) : '';
28968
28996
  });
28969
28997
  const isInteractive = computed(() => !props.disabled && !props.readonly);
28970
28998
  function onKeydown(e) {
@@ -28981,10 +29009,15 @@ const VDateInput = genericComponent()({
28981
29009
  e.stopPropagation();
28982
29010
  menu.value = true;
28983
29011
  }
28984
- function onSave() {
29012
+ function onCancel() {
29013
+ emit('cancel');
28985
29014
  menu.value = false;
28986
29015
  }
28987
- function onUpdateModel(value) {
29016
+ function onSave(value) {
29017
+ emit('save', value);
29018
+ menu.value = false;
29019
+ }
29020
+ function onUpdateDisplayModel(value) {
28988
29021
  if (value != null) return;
28989
29022
  model.value = null;
28990
29023
  }
@@ -29004,7 +29037,7 @@ const VDateInput = genericComponent()({
29004
29037
  "onBlur": blur,
29005
29038
  "onClick:control": isInteractive.value ? onClick : undefined,
29006
29039
  "onClick:prepend": isInteractive.value ? onClick : undefined,
29007
- "onUpdate:modelValue": onUpdateModel
29040
+ "onUpdate:modelValue": onUpdateDisplayModel
29008
29041
  }), {
29009
29042
  ...slots,
29010
29043
  default: () => createVNode(Fragment, null, [createVNode(VMenu, {
@@ -29021,7 +29054,7 @@ const VDateInput = genericComponent()({
29021
29054
  "modelValue": model.value,
29022
29055
  "onUpdate:modelValue": $event => model.value = $event,
29023
29056
  "onSave": onSave,
29024
- "onCancel": () => menu.value = false
29057
+ "onCancel": onCancel
29025
29058
  }), {
29026
29059
  default: _ref2 => {
29027
29060
  let {
@@ -29031,16 +29064,21 @@ const VDateInput = genericComponent()({
29031
29064
  cancel,
29032
29065
  isPristine
29033
29066
  } = _ref2;
29067
+ function onUpdateModel(value) {
29068
+ if (!props.hideActions) {
29069
+ proxyModel.value = value;
29070
+ } else {
29071
+ model.value = value;
29072
+ if (!props.multiple) {
29073
+ menu.value = false;
29074
+ }
29075
+ }
29076
+ emit('save', value);
29077
+ vDateInputRef.value?.blur();
29078
+ }
29034
29079
  return createVNode(VDatePicker, mergeProps(datePickerProps, {
29035
29080
  "modelValue": props.hideActions ? model.value : proxyModel.value,
29036
- "onUpdate:modelValue": val => {
29037
- if (!props.hideActions) {
29038
- proxyModel.value = val;
29039
- } else {
29040
- model.value = val;
29041
- if (!props.multiple) menu.value = false;
29042
- }
29043
- },
29081
+ "onUpdate:modelValue": value => onUpdateModel(value),
29044
29082
  "onMousedown": e => e.preventDefault()
29045
29083
  }), {
29046
29084
  actions: !props.hideActions ? () => slots.actions?.({
@@ -31272,7 +31310,7 @@ function createVuetify$1() {
31272
31310
  };
31273
31311
  });
31274
31312
  }
31275
- const version$1 = "3.8.0-beta.0-dev.2025-03-24";
31313
+ const version$1 = "3.8.0-beta.0-dev.2025-03-25";
31276
31314
  createVuetify$1.version = version$1;
31277
31315
 
31278
31316
  // Vue's inject() can only be used in setup
@@ -31557,7 +31595,7 @@ var index = /*#__PURE__*/Object.freeze({
31557
31595
 
31558
31596
  /* eslint-disable local-rules/sort-imports */
31559
31597
 
31560
- const version = "3.8.0-beta.0-dev.2025-03-24";
31598
+ const version = "3.8.0-beta.0-dev.2025-03-25";
31561
31599
 
31562
31600
  /* eslint-disable local-rules/sort-imports */
31563
31601