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

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.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.0-beta.0-dev.2025-03-25
2
+ * Vuetify v3.8.0-beta.0-dev.2025-03-26
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -2173,8 +2173,8 @@ if(f.run((()=>{o.install(u)})),u.onUnmount((()=>f.stop())),u.provide(Vt,e),u.pro
2173
2173
  else{const{mount:e}=u
2174
2174
  u.mount=function(){const a=e(...arguments)
2175
2175
  return t.nextTick((()=>l.update())),u.mount=e,a}}("boolean"!=typeof __VUE_OPTIONS_API__||__VUE_OPTIONS_API__)&&u.mixin({computed:{$vuetify(){return t.reactive({defaults:cf.call(this,Vt),display:cf.call(this,pn),theme:cf.call(this,ha),icons:cf.call(this,Ft),locale:cf.call(this,va),date:cf.call(this,pu)})}}})},unmount:function(){u.stop()},defaults:e,display:l,theme:o,icons:c,locale:d,date:v,goTo:p}}))}function cf(e){const t=this.$,a=t.parent?.provides??t.vnode.appContext?.provides
2176
- if(a&&e in a)return a[e]}uf.version="3.8.0-beta.0-dev.2025-03-25"
2177
- const df=function(){return uf({components:Jp,directives:sf,...arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}})},vf="3.8.0-beta.0-dev.2025-03-25"
2176
+ if(a&&e in a)return a[e]}uf.version="3.8.0-beta.0-dev.2025-03-26"
2177
+ const df=function(){return uf({components:Jp,directives:sf,...arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}})},vf="3.8.0-beta.0-dev.2025-03-26"
2178
2178
  df.version=vf,e.blueprints=qt,e.components=Jp,e.createVuetify=df,e.directives=sf,e.useDate=mu,e.useDefaults=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0
2179
2179
  const{props:a,provideSubDefaults:l}=kt(e,t)
2180
2180
  return l(),a},e.useDisplay=Vn,e.useGoTo=Nn,e.useLayout=ea,e.useLocale=fa,e.useRtl=ga,e.useTheme=wa,e.version=vf}))
@@ -16,7 +16,7 @@ export const createVuetify = function () {
16
16
  ...options
17
17
  });
18
18
  };
19
- export const version = "3.8.0-beta.0-dev.2025-03-25";
19
+ export const version = "3.8.0-beta.0-dev.2025-03-26";
20
20
  createVuetify.version = version;
21
21
  export { blueprints, components, directives };
22
22
  export * from "./composables/index.js";
@@ -2567,28 +2567,30 @@ declare module 'vue' {
2567
2567
  $children?: VNodeChild
2568
2568
  }
2569
2569
  export interface GlobalComponents {
2570
+ VApp: typeof import('vuetify/components')['VApp']
2570
2571
  VAlert: typeof import('vuetify/components')['VAlert']
2571
2572
  VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
2572
- VAppBar: typeof import('vuetify/components')['VAppBar']
2573
- VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
2574
- VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
2575
2573
  VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
2576
- VApp: typeof import('vuetify/components')['VApp']
2577
2574
  VAvatar: typeof import('vuetify/components')['VAvatar']
2578
- VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
2579
- VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
2580
2575
  VBadge: typeof import('vuetify/components')['VBadge']
2581
- VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
2576
+ VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
2577
+ VAppBar: typeof import('vuetify/components')['VAppBar']
2578
+ VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
2579
+ VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
2582
2580
  VBanner: typeof import('vuetify/components')['VBanner']
2583
2581
  VBannerActions: typeof import('vuetify/components')['VBannerActions']
2584
2582
  VBannerText: typeof import('vuetify/components')['VBannerText']
2585
- VBtn: typeof import('vuetify/components')['VBtn']
2586
- VCarousel: typeof import('vuetify/components')['VCarousel']
2587
- VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
2588
2583
  VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
2589
2584
  VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
2590
2585
  VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
2591
2586
  VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
2587
+ VBtn: typeof import('vuetify/components')['VBtn']
2588
+ VCarousel: typeof import('vuetify/components')['VCarousel']
2589
+ VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
2590
+ VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
2591
+ VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
2592
+ VChip: typeof import('vuetify/components')['VChip']
2593
+ VChipGroup: typeof import('vuetify/components')['VChipGroup']
2592
2594
  VCheckbox: typeof import('vuetify/components')['VCheckbox']
2593
2595
  VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
2594
2596
  VCode: typeof import('vuetify/components')['VCode']
@@ -2598,47 +2600,47 @@ declare module 'vue' {
2598
2600
  VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
2599
2601
  VCardText: typeof import('vuetify/components')['VCardText']
2600
2602
  VCardTitle: typeof import('vuetify/components')['VCardTitle']
2601
- VDialog: typeof import('vuetify/components')['VDialog']
2602
- VChipGroup: typeof import('vuetify/components')['VChipGroup']
2603
- VCombobox: typeof import('vuetify/components')['VCombobox']
2604
- VChip: typeof import('vuetify/components')['VChip']
2605
- VColorPicker: typeof import('vuetify/components')['VColorPicker']
2606
- VDivider: typeof import('vuetify/components')['VDivider']
2603
+ VCounter: typeof import('vuetify/components')['VCounter']
2607
2604
  VDatePicker: typeof import('vuetify/components')['VDatePicker']
2608
2605
  VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
2609
2606
  VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
2610
2607
  VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
2611
2608
  VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
2612
2609
  VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
2610
+ VDataTable: typeof import('vuetify/components')['VDataTable']
2611
+ VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
2612
+ VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
2613
+ VDataTableRows: typeof import('vuetify/components')['VDataTableRows']
2614
+ VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
2615
+ VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
2616
+ VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
2617
+ VColorPicker: typeof import('vuetify/components')['VColorPicker']
2618
+ VCombobox: typeof import('vuetify/components')['VCombobox']
2613
2619
  VEmptyState: typeof import('vuetify/components')['VEmptyState']
2614
- VCounter: typeof import('vuetify/components')['VCounter']
2615
- VFab: typeof import('vuetify/components')['VFab']
2616
- VFooter: typeof import('vuetify/components')['VFooter']
2620
+ VDialog: typeof import('vuetify/components')['VDialog']
2617
2621
  VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
2618
2622
  VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
2619
2623
  VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
2620
2624
  VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
2625
+ VDivider: typeof import('vuetify/components')['VDivider']
2626
+ VFab: typeof import('vuetify/components')['VFab']
2627
+ VFileInput: typeof import('vuetify/components')['VFileInput']
2628
+ VField: typeof import('vuetify/components')['VField']
2629
+ VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
2630
+ VFooter: typeof import('vuetify/components')['VFooter']
2631
+ VImg: typeof import('vuetify/components')['VImg']
2632
+ VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
2633
+ VKbd: typeof import('vuetify/components')['VKbd']
2634
+ VInput: typeof import('vuetify/components')['VInput']
2621
2635
  VIcon: typeof import('vuetify/components')['VIcon']
2622
2636
  VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
2623
2637
  VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
2624
2638
  VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
2625
2639
  VClassIcon: typeof import('vuetify/components')['VClassIcon']
2626
- VField: typeof import('vuetify/components')['VField']
2627
- VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
2628
- VFileInput: typeof import('vuetify/components')['VFileInput']
2629
- VImg: typeof import('vuetify/components')['VImg']
2630
- VInput: typeof import('vuetify/components')['VInput']
2631
- VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
2632
2640
  VItemGroup: typeof import('vuetify/components')['VItemGroup']
2633
2641
  VItem: typeof import('vuetify/components')['VItem']
2634
- VDataTable: typeof import('vuetify/components')['VDataTable']
2635
- VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
2636
- VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
2637
- VDataTableRows: typeof import('vuetify/components')['VDataTableRows']
2638
- VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
2639
- VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
2640
- VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
2641
- VKbd: typeof import('vuetify/components')['VKbd']
2642
+ VLabel: typeof import('vuetify/components')['VLabel']
2643
+ VMenu: typeof import('vuetify/components')['VMenu']
2642
2644
  VList: typeof import('vuetify/components')['VList']
2643
2645
  VListGroup: typeof import('vuetify/components')['VListGroup']
2644
2646
  VListImg: typeof import('vuetify/components')['VListImg']
@@ -2648,25 +2650,25 @@ declare module 'vue' {
2648
2650
  VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
2649
2651
  VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
2650
2652
  VListSubheader: typeof import('vuetify/components')['VListSubheader']
2651
- VLabel: typeof import('vuetify/components')['VLabel']
2652
- VMenu: typeof import('vuetify/components')['VMenu']
2653
- VNumberInput: typeof import('vuetify/components')['VNumberInput']
2654
- VMessages: typeof import('vuetify/components')['VMessages']
2655
- VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
2656
2653
  VMain: typeof import('vuetify/components')['VMain']
2657
2654
  VOtpInput: typeof import('vuetify/components')['VOtpInput']
2655
+ VMessages: typeof import('vuetify/components')['VMessages']
2656
+ VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
2657
+ VPagination: typeof import('vuetify/components')['VPagination']
2658
2658
  VOverlay: typeof import('vuetify/components')['VOverlay']
2659
2659
  VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
2660
+ VNumberInput: typeof import('vuetify/components')['VNumberInput']
2660
2661
  VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
2662
+ VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
2661
2663
  VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
2662
- VPagination: typeof import('vuetify/components')['VPagination']
2663
2664
  VRating: typeof import('vuetify/components')['VRating']
2665
+ VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
2664
2666
  VSelect: typeof import('vuetify/components')['VSelect']
2665
- VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
2666
2667
  VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
2667
- VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
2668
2668
  VSheet: typeof import('vuetify/components')['VSheet']
2669
2669
  VSnackbar: typeof import('vuetify/components')['VSnackbar']
2670
+ VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
2671
+ VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
2670
2672
  VSlider: typeof import('vuetify/components')['VSlider']
2671
2673
  VStepper: typeof import('vuetify/components')['VStepper']
2672
2674
  VStepperActions: typeof import('vuetify/components')['VStepperActions']
@@ -2674,15 +2676,13 @@ declare module 'vue' {
2674
2676
  VStepperItem: typeof import('vuetify/components')['VStepperItem']
2675
2677
  VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
2676
2678
  VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
2677
- VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
2678
- VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
2679
- VSystemBar: typeof import('vuetify/components')['VSystemBar']
2680
- VSwitch: typeof import('vuetify/components')['VSwitch']
2681
- VTable: typeof import('vuetify/components')['VTable']
2682
2679
  VTab: typeof import('vuetify/components')['VTab']
2683
2680
  VTabs: typeof import('vuetify/components')['VTabs']
2684
2681
  VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
2685
2682
  VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
2683
+ VSystemBar: typeof import('vuetify/components')['VSystemBar']
2684
+ VSwitch: typeof import('vuetify/components')['VSwitch']
2685
+ VTable: typeof import('vuetify/components')['VTable']
2686
2686
  VTextField: typeof import('vuetify/components')['VTextField']
2687
2687
  VTextarea: typeof import('vuetify/components')['VTextarea']
2688
2688
  VTimeline: typeof import('vuetify/components')['VTimeline']
@@ -2702,17 +2702,17 @@ declare module 'vue' {
2702
2702
  VRow: typeof import('vuetify/components')['VRow']
2703
2703
  VSpacer: typeof import('vuetify/components')['VSpacer']
2704
2704
  VHover: typeof import('vuetify/components')['VHover']
2705
+ VLazy: typeof import('vuetify/components')['VLazy']
2705
2706
  VLayout: typeof import('vuetify/components')['VLayout']
2706
2707
  VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
2707
- VLazy: typeof import('vuetify/components')['VLazy']
2708
2708
  VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
2709
2709
  VNoSsr: typeof import('vuetify/components')['VNoSsr']
2710
- VRadio: typeof import('vuetify/components')['VRadio']
2711
2710
  VParallax: typeof import('vuetify/components')['VParallax']
2711
+ VRadio: typeof import('vuetify/components')['VRadio']
2712
+ VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
2712
2713
  VResponsive: typeof import('vuetify/components')['VResponsive']
2713
2714
  VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
2714
2715
  VSparkline: typeof import('vuetify/components')['VSparkline']
2715
- VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
2716
2716
  VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
2717
2717
  VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
2718
2718
  VValidation: typeof import('vuetify/components')['VValidation']
@@ -2733,25 +2733,25 @@ declare module 'vue' {
2733
2733
  VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
2734
2734
  VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
2735
2735
  VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
2736
+ VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
2737
+ VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
2738
+ VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
2739
+ VPicker: typeof import('vuetify/labs/components')['VPicker']
2740
+ VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
2736
2741
  VCalendar: typeof import('vuetify/labs/components')['VCalendar']
2737
2742
  VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
2738
2743
  VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
2739
2744
  VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
2740
2745
  VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
2741
2746
  VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
2742
- VPicker: typeof import('vuetify/labs/components')['VPicker']
2743
- VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
2747
+ VTreeview: typeof import('vuetify/labs/components')['VTreeview']
2748
+ VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
2749
+ VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
2744
2750
  VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
2745
2751
  VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
2746
2752
  VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
2747
- VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
2748
- VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
2749
- VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
2750
2753
  VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
2751
2754
  VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
2752
- VTreeview: typeof import('vuetify/labs/components')['VTreeview']
2753
- VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
2754
- VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
2755
2755
  VDateInput: typeof import('vuetify/labs/components')['VDateInput']
2756
2756
  VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
2757
2757
  }
package/lib/framework.js CHANGED
@@ -109,7 +109,7 @@ export function createVuetify() {
109
109
  };
110
110
  });
111
111
  }
112
- export const version = "3.8.0-beta.0-dev.2025-03-25";
112
+ export const version = "3.8.0-beta.0-dev.2025-03-26";
113
113
  createVuetify.version = version;
114
114
 
115
115
  // Vue's inject() can only be used in setup
@@ -112,6 +112,8 @@ export declare const makeVDateInputProps: <Defaults extends {
112
112
  cancelText?: unknown;
113
113
  okText?: unknown;
114
114
  hideActions?: unknown;
115
+ mobile?: unknown;
116
+ mobileBreakpoint?: unknown;
115
117
  displayFormat?: unknown;
116
118
  location?: unknown;
117
119
  } = {}>(defaults?: Defaults | undefined) => {
@@ -765,6 +767,20 @@ export declare const makeVDateInputProps: <Defaults extends {
765
767
  type: PropType<unknown extends Defaults["hideActions"] ? boolean : boolean | Defaults["hideActions"]>;
766
768
  default: unknown extends Defaults["hideActions"] ? boolean : boolean | Defaults["hideActions"];
767
769
  };
770
+ mobile: unknown extends Defaults["mobile"] ? {
771
+ type: PropType<boolean | null>;
772
+ default: boolean;
773
+ } : Omit<{
774
+ type: PropType<boolean | null>;
775
+ default: boolean;
776
+ }, "type" | "default"> & {
777
+ type: PropType<unknown extends Defaults["mobile"] ? boolean | null : boolean | Defaults["mobile"] | null>;
778
+ default: unknown extends Defaults["mobile"] ? boolean | null : NonNullable<boolean | null> | Defaults["mobile"];
779
+ };
780
+ mobileBreakpoint: unknown extends Defaults["mobileBreakpoint"] ? PropType<number | import("../../composables/display.js").DisplayBreakpoint> : {
781
+ type: PropType<unknown extends Defaults["mobileBreakpoint"] ? number | import("../../composables/display.js").DisplayBreakpoint : number | import("../../composables/display.js").DisplayBreakpoint | Defaults["mobileBreakpoint"]>;
782
+ default: unknown extends Defaults["mobileBreakpoint"] ? number | import("../../composables/display.js").DisplayBreakpoint : NonNullable<number | import("../../composables/display.js").DisplayBreakpoint> | Defaults["mobileBreakpoint"];
783
+ };
768
784
  displayFormat: unknown extends Defaults["displayFormat"] ? (FunctionConstructor | StringConstructor)[] : {
769
785
  type: PropType<unknown extends Defaults["displayFormat"] ? string | Function : string | Function | Defaults["displayFormat"]>;
770
786
  default: unknown extends Defaults["displayFormat"] ? string | Function : NonNullable<string | Function> | Defaults["displayFormat"];
@@ -795,6 +811,7 @@ export declare const VDateInput: {
795
811
  style: import("vue").StyleValue;
796
812
  title: string;
797
813
  autofocus: boolean;
814
+ mobile: boolean | null;
798
815
  disabled: boolean;
799
816
  readonly: boolean | null;
800
817
  tag: string | import("../../util/index.js").JSXComponent;
@@ -859,6 +876,7 @@ export declare const VDateInput: {
859
876
  theme?: string | undefined;
860
877
  elevation?: string | number | undefined;
861
878
  counter?: string | number | boolean | undefined;
879
+ mobileBreakpoint?: number | import("../../composables/display.js").DisplayBreakpoint | undefined;
862
880
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
863
881
  modelValue?: any;
864
882
  validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
@@ -965,6 +983,7 @@ export declare const VDateInput: {
965
983
  style: import("vue").StyleValue;
966
984
  title: string;
967
985
  autofocus: boolean;
986
+ mobile: boolean | null;
968
987
  disabled: boolean;
969
988
  readonly: boolean | null;
970
989
  tag: string | import("../../util/index.js").JSXComponent;
@@ -1044,6 +1063,7 @@ export declare const VDateInput: {
1044
1063
  style: import("vue").StyleValue;
1045
1064
  title: string;
1046
1065
  autofocus: boolean;
1066
+ mobile: boolean | null;
1047
1067
  disabled: boolean;
1048
1068
  readonly: boolean | null;
1049
1069
  tag: string | import("../../util/index.js").JSXComponent;
@@ -1108,6 +1128,7 @@ export declare const VDateInput: {
1108
1128
  theme?: string | undefined;
1109
1129
  elevation?: string | number | undefined;
1110
1130
  counter?: string | number | boolean | undefined;
1131
+ mobileBreakpoint?: number | import("../../composables/display.js").DisplayBreakpoint | undefined;
1111
1132
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
1112
1133
  modelValue?: any;
1113
1134
  validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
@@ -1210,6 +1231,7 @@ export declare const VDateInput: {
1210
1231
  style: import("vue").StyleValue;
1211
1232
  title: string;
1212
1233
  autofocus: boolean;
1234
+ mobile: boolean | null;
1213
1235
  disabled: boolean;
1214
1236
  readonly: boolean | null;
1215
1237
  tag: string | import("../../util/index.js").JSXComponent;
@@ -1268,6 +1290,7 @@ export declare const VDateInput: {
1268
1290
  style: import("vue").StyleValue;
1269
1291
  title: string;
1270
1292
  autofocus: boolean;
1293
+ mobile: boolean | null;
1271
1294
  disabled: boolean;
1272
1295
  readonly: boolean | null;
1273
1296
  tag: string | import("../../util/index.js").JSXComponent;
@@ -1332,6 +1355,7 @@ export declare const VDateInput: {
1332
1355
  theme?: string | undefined;
1333
1356
  elevation?: string | number | undefined;
1334
1357
  counter?: string | number | boolean | undefined;
1358
+ mobileBreakpoint?: number | import("../../composables/display.js").DisplayBreakpoint | undefined;
1335
1359
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
1336
1360
  modelValue?: any;
1337
1361
  validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
@@ -1438,6 +1462,7 @@ export declare const VDateInput: {
1438
1462
  style: import("vue").StyleValue;
1439
1463
  title: string;
1440
1464
  autofocus: boolean;
1465
+ mobile: boolean | null;
1441
1466
  disabled: boolean;
1442
1467
  readonly: boolean | null;
1443
1468
  tag: string | import("../../util/index.js").JSXComponent;
@@ -1721,6 +1746,11 @@ export declare const VDateInput: {
1721
1746
  type: PropType<boolean>;
1722
1747
  default: boolean;
1723
1748
  };
1749
+ mobile: {
1750
+ type: PropType<boolean | null>;
1751
+ default: boolean;
1752
+ };
1753
+ mobileBreakpoint: PropType<number | import("../../composables/display.js").DisplayBreakpoint>;
1724
1754
  displayFormat: (FunctionConstructor | StringConstructor)[];
1725
1755
  location: {
1726
1756
  type: PropType<StrategyProps["location"]>;
@@ -1951,6 +1981,11 @@ export declare const VDateInput: {
1951
1981
  type: PropType<boolean>;
1952
1982
  default: boolean;
1953
1983
  };
1984
+ mobile: {
1985
+ type: PropType<boolean | null>;
1986
+ default: boolean;
1987
+ };
1988
+ mobileBreakpoint: PropType<number | import("../../composables/display.js").DisplayBreakpoint>;
1954
1989
  displayFormat: (FunctionConstructor | StringConstructor)[];
1955
1990
  location: {
1956
1991
  type: PropType<StrategyProps["location"]>;
@@ -5,11 +5,12 @@ import { makeVDatePickerProps, VDatePicker } from "../../components/VDatePicker/
5
5
  import { VMenu } from "../../components/VMenu/VMenu.js";
6
6
  import { makeVTextFieldProps, VTextField } from "../../components/VTextField/VTextField.js"; // Composables
7
7
  import { useDate } from "../../composables/date/index.js";
8
+ import { makeDisplayProps, useDisplay } from "../../composables/display.js";
8
9
  import { makeFocusProps, useFocus } from "../../composables/focus.js";
9
10
  import { forwardRefs } from "../../composables/forwardRefs.js";
10
11
  import { useLocale } from "../../composables/locale.js";
11
12
  import { useProxiedModel } from "../../composables/proxiedModel.js"; // Utilities
12
- import { computed, ref, shallowRef } from 'vue';
13
+ import { computed, ref, shallowRef, watch } from 'vue';
13
14
  import { genericComponent, omit, propsFactory, useRender, wrapInArray } from "../../util/index.js"; // Types
14
15
  // Types
15
16
  export const makeVDateInputProps = propsFactory({
@@ -18,6 +19,7 @@ export const makeVDateInputProps = propsFactory({
18
19
  type: String,
19
20
  default: 'bottom start'
20
21
  },
22
+ ...makeDisplayProps(),
21
23
  ...makeFocusProps(),
22
24
  ...makeVConfirmEditProps({
23
25
  hideActions: true
@@ -48,6 +50,9 @@ export const VDateInput = genericComponent()({
48
50
  t
49
51
  } = useLocale();
50
52
  const adapter = useDate();
53
+ const {
54
+ mobile
55
+ } = useDisplay();
51
56
  const {
52
57
  isFocused,
53
58
  focus,
@@ -55,6 +60,7 @@ export const VDateInput = genericComponent()({
55
60
  } = useFocus(props);
56
61
  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);
57
62
  const menu = shallowRef(false);
63
+ const isEditingInput = shallowRef(false);
58
64
  const vDateInputRef = ref();
59
65
  function format(date) {
60
66
  if (typeof props.displayFormat === 'function') {
@@ -76,7 +82,17 @@ export const VDateInput = genericComponent()({
76
82
  }
77
83
  return adapter.isValid(model.value) ? format(adapter.date(model.value)) : '';
78
84
  });
85
+ const inputmode = computed(() => {
86
+ if (!mobile.value) return undefined;
87
+ if (isEditingInput.value) return 'text';
88
+ return 'none';
89
+ });
79
90
  const isInteractive = computed(() => !props.disabled && !props.readonly);
91
+ const isReadonly = computed(() => !(mobile.value && isEditingInput.value) && props.readonly);
92
+ watch(menu, val => {
93
+ if (val) return;
94
+ isEditingInput.value = false;
95
+ });
80
96
  function onKeydown(e) {
81
97
  if (e.key !== 'Enter') return;
82
98
  if (!menu.value || !isFocused.value) {
@@ -89,11 +105,16 @@ export const VDateInput = genericComponent()({
89
105
  function onClick(e) {
90
106
  e.preventDefault();
91
107
  e.stopPropagation();
92
- menu.value = true;
108
+ if (menu.value && mobile.value) {
109
+ isEditingInput.value = true;
110
+ } else {
111
+ menu.value = true;
112
+ }
93
113
  }
94
114
  function onCancel() {
95
115
  emit('cancel');
96
116
  menu.value = false;
117
+ isEditingInput.value = false;
97
118
  }
98
119
  function onSave(value) {
99
120
  emit('save', value);
@@ -103,6 +124,19 @@ export const VDateInput = genericComponent()({
103
124
  if (value != null) return;
104
125
  model.value = null;
105
126
  }
127
+ function onUpdateMenuModel(isMenuOpen) {
128
+ if (isMenuOpen) return;
129
+ isEditingInput.value = false;
130
+ }
131
+ function onBlur() {
132
+ blur();
133
+
134
+ // When in mobile mode and editing is done (due to keyboard dismissal), close the menu
135
+ if (mobile.value && isEditingInput.value && !isFocused.value) {
136
+ menu.value = false;
137
+ isEditingInput.value = false;
138
+ }
139
+ }
106
140
  useRender(() => {
107
141
  const confirmEditProps = VConfirmEdit.filterProps(props);
108
142
  const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']));
@@ -113,10 +147,12 @@ export const VDateInput = genericComponent()({
113
147
  "class": props.class,
114
148
  "style": props.style,
115
149
  "modelValue": display.value,
150
+ "inputmode": inputmode.value,
151
+ "readonly": isReadonly.value,
116
152
  "onKeydown": isInteractive.value ? onKeydown : undefined,
117
153
  "focused": menu.value || isFocused.value,
118
154
  "onFocus": focus,
119
- "onBlur": blur,
155
+ "onBlur": onBlur,
120
156
  "onClick:control": isInteractive.value ? onClick : undefined,
121
157
  "onClick:prepend": isInteractive.value ? onClick : undefined,
122
158
  "onUpdate:modelValue": onUpdateDisplayModel
@@ -124,7 +160,7 @@ export const VDateInput = genericComponent()({
124
160
  ...slots,
125
161
  default: () => _createVNode(_Fragment, null, [_createVNode(VMenu, {
126
162
  "modelValue": menu.value,
127
- "onUpdate:modelValue": $event => menu.value = $event,
163
+ "onUpdate:modelValue": [$event => menu.value = $event, onUpdateMenuModel],
128
164
  "activator": "parent",
129
165
  "min-width": "0",
130
166
  "eager": isFocused.value,
@@ -1 +1 @@
1
- {"version":3,"file":"VDateInput.js","names":["makeVConfirmEditProps","VConfirmEdit","makeVDatePickerProps","VDatePicker","VMenu","makeVTextFieldProps","VTextField","useDate","makeFocusProps","useFocus","forwardRefs","useLocale","useProxiedModel","computed","ref","shallowRef","genericComponent","omit","propsFactory","useRender","wrapInArray","makeVDateInputProps","displayFormat","Function","String","location","type","default","hideActions","placeholder","prependIcon","hideHeader","showAdjacentMonths","VDateInput","name","props","emits","save","value","cancel","val","setup","_ref","emit","slots","t","adapter","isFocused","focus","blur","model","multiple","Array","isArray","map","item","toJsDate","date","menu","vDateInputRef","format","display","length","start","end","isValid","isInteractive","disabled","readonly","onKeydown","e","key","target","onClick","preventDefault","stopPropagation","onCancel","onSave","onUpdateDisplayModel","confirmEditProps","filterProps","datePickerProps","textFieldProps","_createVNode","_mergeProps","class","style","undefined","_Fragment","$event","_ref2","actions","proxyModel","isPristine","onUpdateModel"],"sources":["../../../src/labs/VDateInput/VDateInput.tsx"],"sourcesContent":["// Components\nimport { makeVConfirmEditProps, VConfirmEdit } from '@/components/VConfirmEdit/VConfirmEdit'\nimport { makeVDatePickerProps, VDatePicker } from '@/components/VDatePicker/VDatePicker'\nimport { VMenu } from '@/components/VMenu/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, shallowRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\n\n// Types\nexport type VDateInputActionsSlot = {\n save: () => void\n cancel: () => void\n isPristine: boolean\n}\n\nexport type VDateInputSlots = Omit<VTextFieldSlots, 'default'> & {\n actions: VDateInputActionsSlot\n default: never\n}\n\nexport const makeVDateInputProps = propsFactory({\n displayFormat: [Function, String],\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom start',\n },\n\n ...makeFocusProps(),\n ...makeVConfirmEditProps({\n hideActions: true,\n }),\n ...makeVTextFieldProps({\n placeholder: 'mm/dd/yyyy',\n prependIcon: '$calendar',\n }),\n ...omit(makeVDatePickerProps({\n hideHeader: true,\n showAdjacentMonths: true,\n }), ['active', 'location', 'rounded']),\n}, 'VDateInput')\n\nexport const VDateInput = genericComponent<VDateInputSlots>()({\n name: 'VDateInput',\n\n props: makeVDateInputProps(),\n\n emits: {\n save: (value: string) => true,\n cancel: () => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const adapter = useDate()\n const { isFocused, focus, blur } = useFocus(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n props.multiple ? [] : null,\n val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val,\n val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val\n )\n\n const menu = shallowRef(false)\n const vDateInputRef = ref()\n\n function format (date: unknown) {\n if (typeof props.displayFormat === 'function') {\n return props.displayFormat(date)\n }\n\n return adapter.format(date, props.displayFormat ?? 'keyboardDate')\n }\n\n const display = computed(() => {\n const value = wrapInArray(model.value)\n\n if (!value.length) return null\n\n if (props.multiple === true) {\n return t('$vuetify.datePicker.itemsSelected', value.length)\n }\n\n if (props.multiple === 'range') {\n const start = value[0]\n const end = value[value.length - 1]\n\n if (!adapter.isValid(start) || !adapter.isValid(end)) return ''\n\n return `${format(adapter.date(start))} - ${format(adapter.date(end))}`\n }\n\n return adapter.isValid(model.value) ? format(adapter.date(model.value)) : ''\n })\n\n const isInteractive = computed(() => !props.disabled && !props.readonly)\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter') return\n\n if (!menu.value || !isFocused.value) {\n menu.value = true\n\n return\n }\n\n const target = e.target as HTMLInputElement\n\n model.value = target.value === '' ? null : target.value\n }\n\n function onClick (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n menu.value = true\n }\n\n function onCancel () {\n emit('cancel')\n menu.value = false\n }\n\n function onSave (value: string) {\n emit('save', value)\n menu.value = false\n }\n\n function onUpdateDisplayModel (value: string) {\n if (value != null) return\n\n model.value = null\n }\n\n useRender(() => {\n const confirmEditProps = VConfirmEdit.filterProps(props)\n const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']))\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vDateInputRef }\n { ...textFieldProps }\n class={ props.class }\n style={ props.style }\n modelValue={ display.value }\n onKeydown={ isInteractive.value ? onKeydown : undefined }\n focused={ menu.value || isFocused.value }\n onFocus={ focus }\n onBlur={ blur }\n onClick:control={ isInteractive.value ? onClick : undefined }\n onClick:prepend={ isInteractive.value ? onClick : undefined }\n onUpdate:modelValue={ onUpdateDisplayModel }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n min-width=\"0\"\n eager={ isFocused.value }\n location={ props.location }\n closeOnContentClick={ false }\n openOnClick={ false }\n >\n <VConfirmEdit\n { ...confirmEditProps }\n v-model={ model.value }\n onSave={ onSave }\n onCancel={ onCancel }\n >\n {{\n default: ({ actions, model: proxyModel, save, cancel, isPristine }) => {\n function onUpdateModel (value: string) {\n if (!props.hideActions) {\n proxyModel.value = value\n } else {\n model.value = value\n\n if (!props.multiple) {\n menu.value = false\n }\n }\n\n emit('save', value)\n vDateInputRef.value?.blur()\n }\n\n return (\n <VDatePicker\n { ...datePickerProps }\n modelValue={ props.hideActions ? model.value : proxyModel.value }\n onUpdate:modelValue={ value => onUpdateModel(value) }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n >\n {{\n actions: !props.hideActions ? () => slots.actions?.({ save, cancel, isPristine }) ?? actions() : undefined,\n }}\n </VDatePicker>\n )\n },\n }}\n </VConfirmEdit>\n </VMenu>\n\n { slots.default?.() }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({}, vDateInputRef)\n },\n})\n\nexport type VDateInput = InstanceType<typeof VDateInput>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VDateInput.js","names":["makeVConfirmEditProps","VConfirmEdit","makeVDatePickerProps","VDatePicker","VMenu","makeVTextFieldProps","VTextField","useDate","makeDisplayProps","useDisplay","makeFocusProps","useFocus","forwardRefs","useLocale","useProxiedModel","computed","ref","shallowRef","watch","genericComponent","omit","propsFactory","useRender","wrapInArray","makeVDateInputProps","displayFormat","Function","String","location","type","default","hideActions","placeholder","prependIcon","hideHeader","showAdjacentMonths","VDateInput","name","props","emits","save","value","cancel","val","setup","_ref","emit","slots","t","adapter","mobile","isFocused","focus","blur","model","multiple","Array","isArray","map","item","toJsDate","date","menu","isEditingInput","vDateInputRef","format","display","length","start","end","isValid","inputmode","undefined","isInteractive","disabled","readonly","isReadonly","onKeydown","e","key","target","onClick","preventDefault","stopPropagation","onCancel","onSave","onUpdateDisplayModel","onUpdateMenuModel","isMenuOpen","onBlur","confirmEditProps","filterProps","datePickerProps","textFieldProps","_createVNode","_mergeProps","class","style","_Fragment","$event","_ref2","actions","proxyModel","isPristine","onUpdateModel"],"sources":["../../../src/labs/VDateInput/VDateInput.tsx"],"sourcesContent":["// Components\nimport { makeVConfirmEditProps, VConfirmEdit } from '@/components/VConfirmEdit/VConfirmEdit'\nimport { makeVDatePickerProps, VDatePicker } from '@/components/VDatePicker/VDatePicker'\nimport { VMenu } from '@/components/VMenu/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, shallowRef, watch } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\n\n// Types\nexport type VDateInputActionsSlot = {\n save: () => void\n cancel: () => void\n isPristine: boolean\n}\n\nexport type VDateInputSlots = Omit<VTextFieldSlots, 'default'> & {\n actions: VDateInputActionsSlot\n default: never\n}\n\nexport const makeVDateInputProps = propsFactory({\n displayFormat: [Function, String],\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom start',\n },\n\n ...makeDisplayProps(),\n ...makeFocusProps(),\n ...makeVConfirmEditProps({\n hideActions: true,\n }),\n ...makeVTextFieldProps({\n placeholder: 'mm/dd/yyyy',\n prependIcon: '$calendar',\n }),\n ...omit(makeVDatePickerProps({\n hideHeader: true,\n showAdjacentMonths: true,\n }), ['active', 'location', 'rounded']),\n}, 'VDateInput')\n\nexport const VDateInput = genericComponent<VDateInputSlots>()({\n name: 'VDateInput',\n\n props: makeVDateInputProps(),\n\n emits: {\n save: (value: string) => true,\n cancel: () => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const adapter = useDate()\n const { mobile } = useDisplay()\n const { isFocused, focus, blur } = useFocus(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n props.multiple ? [] : null,\n val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val,\n val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val\n )\n\n const menu = shallowRef(false)\n const isEditingInput = shallowRef(false)\n const vDateInputRef = ref()\n\n function format (date: unknown) {\n if (typeof props.displayFormat === 'function') {\n return props.displayFormat(date)\n }\n\n return adapter.format(date, props.displayFormat ?? 'keyboardDate')\n }\n\n const display = computed(() => {\n const value = wrapInArray(model.value)\n\n if (!value.length) return null\n\n if (props.multiple === true) {\n return t('$vuetify.datePicker.itemsSelected', value.length)\n }\n\n if (props.multiple === 'range') {\n const start = value[0]\n const end = value[value.length - 1]\n\n if (!adapter.isValid(start) || !adapter.isValid(end)) return ''\n\n return `${format(adapter.date(start))} - ${format(adapter.date(end))}`\n }\n\n return adapter.isValid(model.value) ? format(adapter.date(model.value)) : ''\n })\n\n const inputmode = computed(() => {\n if (!mobile.value) return undefined\n if (isEditingInput.value) return 'text'\n\n return 'none'\n })\n\n const isInteractive = computed(() => !props.disabled && !props.readonly)\n const isReadonly = computed(() => !(mobile.value && isEditingInput.value) && props.readonly)\n\n watch(menu, val => {\n if (val) return\n\n isEditingInput.value = false\n })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter') return\n\n if (!menu.value || !isFocused.value) {\n menu.value = true\n\n return\n }\n\n const target = e.target as HTMLInputElement\n\n model.value = target.value === '' ? null : target.value\n }\n\n function onClick (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n if (menu.value && mobile.value) {\n isEditingInput.value = true\n } else {\n menu.value = true\n }\n }\n\n function onCancel () {\n emit('cancel')\n menu.value = false\n isEditingInput.value = false\n }\n\n function onSave (value: string) {\n emit('save', value)\n menu.value = false\n }\n\n function onUpdateDisplayModel (value: string) {\n if (value != null) return\n\n model.value = null\n }\n\n function onUpdateMenuModel (isMenuOpen: boolean) {\n if (isMenuOpen) return\n\n isEditingInput.value = false\n }\n\n function onBlur () {\n blur()\n\n // When in mobile mode and editing is done (due to keyboard dismissal), close the menu\n if (mobile.value && isEditingInput.value && !isFocused.value) {\n menu.value = false\n isEditingInput.value = false\n }\n }\n\n useRender(() => {\n const confirmEditProps = VConfirmEdit.filterProps(props)\n const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']))\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vDateInputRef }\n { ...textFieldProps }\n class={ props.class }\n style={ props.style }\n modelValue={ display.value }\n inputmode={ inputmode.value }\n readonly={ isReadonly.value }\n onKeydown={ isInteractive.value ? onKeydown : undefined }\n focused={ menu.value || isFocused.value }\n onFocus={ focus }\n onBlur={ onBlur }\n onClick:control={ isInteractive.value ? onClick : undefined }\n onClick:prepend={ isInteractive.value ? onClick : undefined }\n onUpdate:modelValue={ onUpdateDisplayModel }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n min-width=\"0\"\n eager={ isFocused.value }\n location={ props.location }\n closeOnContentClick={ false }\n openOnClick={ false }\n onUpdate:modelValue={ onUpdateMenuModel }\n >\n <VConfirmEdit\n { ...confirmEditProps }\n v-model={ model.value }\n onSave={ onSave }\n onCancel={ onCancel }\n >\n {{\n default: ({ actions, model: proxyModel, save, cancel, isPristine }) => {\n function onUpdateModel (value: string) {\n if (!props.hideActions) {\n proxyModel.value = value\n } else {\n model.value = value\n\n if (!props.multiple) {\n menu.value = false\n }\n }\n\n emit('save', value)\n vDateInputRef.value?.blur()\n }\n\n return (\n <VDatePicker\n { ...datePickerProps }\n modelValue={ props.hideActions ? model.value : proxyModel.value }\n onUpdate:modelValue={ value => onUpdateModel(value) }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n >\n {{\n actions: !props.hideActions ? () => slots.actions?.({ save, cancel, isPristine }) ?? actions() : undefined,\n }}\n </VDatePicker>\n )\n },\n }}\n </VConfirmEdit>\n </VMenu>\n\n { slots.default?.() }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({}, vDateInputRef)\n },\n})\n\nexport type VDateInput = InstanceType<typeof VDateInput>\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vuetify/nightly",
3
3
  "description": "Vue Material Component Framework",
4
- "version": "3.8.0-beta.0-dev.2025-03-25",
4
+ "version": "3.8.0-beta.0-dev.2025-03-26",
5
5
  "author": {
6
6
  "name": "John Leider",
7
7
  "email": "john@vuetifyjs.com"