@vuetify/nightly 3.11.4-dev.2025-12-21 → 3.11.4-dev.2025-12-22
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.
- package/CHANGELOG.md +25 -3
- package/dist/json/attributes.json +1109 -1109
- package/dist/json/importMap-labs.json +24 -24
- package/dist/json/importMap.json +196 -196
- package/dist/json/web-types.json +2247 -2247
- package/dist/vuetify-labs.cjs +40 -15
- package/dist/vuetify-labs.css +4805 -4809
- package/dist/vuetify-labs.d.ts +83 -70
- package/dist/vuetify-labs.esm.js +40 -15
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +40 -15
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +35 -11
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3454 -3458
- package/dist/vuetify.d.ts +83 -70
- package/dist/vuetify.esm.js +35 -11
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +35 -11
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +17 -17
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VDataTable/VDataTableRows.js +1 -1
- package/lib/components/VDataTable/VDataTableRows.js.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.js +5 -2
- package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
- package/lib/components/VDataTable/types.d.ts +1 -0
- package/lib/components/VDataTable/types.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.js +7 -3
- package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/lib/components/VGrid/VContainer.css +34 -0
- package/lib/components/VGrid/VContainer.js +1 -1
- package/lib/components/VGrid/VContainer.js.map +1 -1
- package/lib/components/VGrid/VContainer.sass +15 -0
- package/lib/components/VGrid/VGrid.css +0 -39
- package/lib/components/VGrid/VGrid.sass +0 -15
- package/lib/components/VGrid/VSpacer.css +3 -0
- package/lib/components/VGrid/VSpacer.js +1 -1
- package/lib/components/VGrid/VSpacer.js.map +1 -1
- package/lib/components/VGrid/VSpacer.sass +5 -0
- package/lib/components/VList/VListItem.d.ts +3 -0
- package/lib/components/VNumberInput/VNumberInput.js +1 -1
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VTreeview/VTreeviewChildren.js +2 -2
- package/lib/components/VTreeview/VTreeviewChildren.js.map +1 -1
- package/lib/components/VTreeview/VTreeviewItem.d.ts +9 -0
- package/lib/composables/nested/nested.d.ts +3 -0
- package/lib/composables/nested/nested.js +17 -0
- package/lib/composables/nested/nested.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +71 -70
- package/lib/framework.js +1 -1
- package/lib/labs/VDateInput/VDateInput.js +5 -4
- package/lib/labs/VDateInput/VDateInput.js.map +1 -1
- package/lib/styles/settings/_variables.scss +11 -0
- package/lib/styles/utilities/_display.sass +2 -1
- package/lib/styles/utilities/_elevation.scss +2 -1
- package/lib/styles/utilities/_pointer-events.sass +2 -1
- package/lib/styles/utilities/_screenreaders.sass +2 -1
- package/package.json +1 -1
package/lib/entry-bundler.js
CHANGED
|
@@ -16,7 +16,7 @@ export const createVuetify = function () {
|
|
|
16
16
|
...options
|
|
17
17
|
});
|
|
18
18
|
};
|
|
19
|
-
export const version = "3.11.4-dev.2025-12-
|
|
19
|
+
export const version = "3.11.4-dev.2025-12-22";
|
|
20
20
|
createVuetify.version = version;
|
|
21
21
|
export { blueprints, components, directives };
|
|
22
22
|
export * from "./composables/index.js";
|
package/lib/framework.d.ts
CHANGED
|
@@ -679,6 +679,7 @@ type InternalDataTableHeader = Omit<DataTableHeader, 'key' | 'value' | 'children
|
|
|
679
679
|
interface DataTableItem<T = any> extends Omit<InternalItem<T>, 'type'>, GroupableItem<T>, SelectableItem {
|
|
680
680
|
key: any;
|
|
681
681
|
index: number;
|
|
682
|
+
virtualIndex?: number;
|
|
682
683
|
columns: {
|
|
683
684
|
[key: string]: any;
|
|
684
685
|
};
|
|
@@ -2778,81 +2779,82 @@ declare module 'vue' {
|
|
|
2778
2779
|
$children?: VNodeChild
|
|
2779
2780
|
}
|
|
2780
2781
|
export interface GlobalComponents {
|
|
2782
|
+
VAlert: typeof import('vuetify/components')['VAlert']
|
|
2783
|
+
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
|
2784
|
+
VApp: typeof import('vuetify/components')['VApp']
|
|
2781
2785
|
VAppBar: typeof import('vuetify/components')['VAppBar']
|
|
2782
2786
|
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
|
2783
2787
|
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
|
2784
|
-
VApp: typeof import('vuetify/components')['VApp']
|
|
2785
|
-
VAlert: typeof import('vuetify/components')['VAlert']
|
|
2786
|
-
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
|
2787
|
-
VBadge: typeof import('vuetify/components')['VBadge']
|
|
2788
|
-
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
|
2789
2788
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
|
2789
|
+
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
|
2790
2790
|
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
|
2791
2791
|
VBanner: typeof import('vuetify/components')['VBanner']
|
|
2792
2792
|
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
|
2793
2793
|
VBannerText: typeof import('vuetify/components')['VBannerText']
|
|
2794
|
-
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
|
2795
|
-
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
|
2796
|
-
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
|
2797
2794
|
VBtn: typeof import('vuetify/components')['VBtn']
|
|
2798
|
-
|
|
2799
|
-
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
|
2795
|
+
VBadge: typeof import('vuetify/components')['VBadge']
|
|
2800
2796
|
VCard: typeof import('vuetify/components')['VCard']
|
|
2801
2797
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
|
2802
2798
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
|
2803
2799
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
|
2804
2800
|
VCardText: typeof import('vuetify/components')['VCardText']
|
|
2805
2801
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
|
2806
|
-
|
|
2807
|
-
|
|
2802
|
+
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
|
2803
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
|
2804
|
+
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
|
2805
|
+
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
|
2806
|
+
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
|
2808
2807
|
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
|
2809
|
-
|
|
2810
|
-
|
|
2811
|
-
VCarousel: typeof import('vuetify/components')['VCarousel']
|
|
2812
|
-
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
|
2813
|
-
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
|
2808
|
+
VChip: typeof import('vuetify/components')['VChip']
|
|
2809
|
+
VCalendar: typeof import('vuetify/components')['VCalendar']
|
|
2814
2810
|
VCode: typeof import('vuetify/components')['VCode']
|
|
2815
2811
|
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
|
2816
|
-
|
|
2812
|
+
VCarousel: typeof import('vuetify/components')['VCarousel']
|
|
2813
|
+
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
|
2817
2814
|
VCounter: typeof import('vuetify/components')['VCounter']
|
|
2818
|
-
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
VDataTableRows: typeof import('vuetify/components')['VDataTableRows']
|
|
2823
|
-
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
|
2824
|
-
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
|
2825
|
-
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
|
2826
|
-
VDialog: typeof import('vuetify/components')['VDialog']
|
|
2815
|
+
VCombobox: typeof import('vuetify/components')['VCombobox']
|
|
2816
|
+
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
|
2817
|
+
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
|
2818
|
+
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
|
2827
2819
|
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
|
2828
2820
|
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
|
2829
2821
|
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
|
2830
2822
|
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
|
2831
2823
|
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
|
2832
2824
|
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
|
2833
|
-
VDivider: typeof import('vuetify/components')['VDivider']
|
|
2834
|
-
VFab: typeof import('vuetify/components')['VFab']
|
|
2835
2825
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
|
2836
2826
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
|
2837
2827
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
|
2838
2828
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
|
2829
|
+
VDivider: typeof import('vuetify/components')['VDivider']
|
|
2830
|
+
VDataTable: typeof import('vuetify/components')['VDataTable']
|
|
2831
|
+
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
|
2832
|
+
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
|
2833
|
+
VDataTableRows: typeof import('vuetify/components')['VDataTableRows']
|
|
2834
|
+
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
|
2835
|
+
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
|
2836
|
+
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
|
2837
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
|
2838
|
+
VFab: typeof import('vuetify/components')['VFab']
|
|
2839
|
+
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
|
2840
|
+
VFileInput: typeof import('vuetify/components')['VFileInput']
|
|
2841
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
|
2839
2842
|
VField: typeof import('vuetify/components')['VField']
|
|
2840
2843
|
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
|
2841
|
-
VFooter: typeof import('vuetify/components')['VFooter']
|
|
2842
|
-
VFileInput: typeof import('vuetify/components')['VFileInput']
|
|
2843
|
-
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
|
2844
2844
|
VHotkey: typeof import('vuetify/components')['VHotkey']
|
|
2845
|
-
VImg: typeof import('vuetify/components')['VImg']
|
|
2846
|
-
VKbd: typeof import('vuetify/components')['VKbd']
|
|
2847
|
-
VInput: typeof import('vuetify/components')['VInput']
|
|
2848
|
-
VLabel: typeof import('vuetify/components')['VLabel']
|
|
2849
2845
|
VIcon: typeof import('vuetify/components')['VIcon']
|
|
2850
2846
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
|
2851
2847
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
|
2852
2848
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
|
2853
2849
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
|
2850
|
+
VImg: typeof import('vuetify/components')['VImg']
|
|
2851
|
+
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
|
2852
|
+
VLabel: typeof import('vuetify/components')['VLabel']
|
|
2854
2853
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
|
2855
2854
|
VItem: typeof import('vuetify/components')['VItem']
|
|
2855
|
+
VInput: typeof import('vuetify/components')['VInput']
|
|
2856
|
+
VKbd: typeof import('vuetify/components')['VKbd']
|
|
2857
|
+
VMain: typeof import('vuetify/components')['VMain']
|
|
2856
2858
|
VList: typeof import('vuetify/components')['VList']
|
|
2857
2859
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
|
2858
2860
|
VListImg: typeof import('vuetify/components')['VListImg']
|
|
@@ -2862,80 +2864,79 @@ declare module 'vue' {
|
|
|
2862
2864
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
|
2863
2865
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
|
2864
2866
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
|
2865
|
-
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
|
2866
|
-
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
|
2867
2867
|
VNumberInput: typeof import('vuetify/components')['VNumberInput']
|
|
2868
|
-
VMain: typeof import('vuetify/components')['VMain']
|
|
2869
2868
|
VMessages: typeof import('vuetify/components')['VMessages']
|
|
2870
2869
|
VMenu: typeof import('vuetify/components')['VMenu']
|
|
2871
|
-
|
|
2872
|
-
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
|
2870
|
+
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
|
2873
2871
|
VPagination: typeof import('vuetify/components')['VPagination']
|
|
2874
2872
|
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
|
2873
|
+
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
|
2874
|
+
VOverlay: typeof import('vuetify/components')['VOverlay']
|
|
2875
|
+
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
|
2876
|
+
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
|
2877
|
+
VSelect: typeof import('vuetify/components')['VSelect']
|
|
2875
2878
|
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
|
2876
2879
|
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
|
2877
2880
|
VRating: typeof import('vuetify/components')['VRating']
|
|
2878
|
-
|
|
2879
|
-
VSlider: typeof import('vuetify/components')['VSlider']
|
|
2880
|
-
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
|
2881
|
-
VSheet: typeof import('vuetify/components')['VSheet']
|
|
2881
|
+
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
|
2882
2882
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
|
2883
2883
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
|
2884
|
+
VSheet: typeof import('vuetify/components')['VSheet']
|
|
2884
2885
|
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
|
2886
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
|
2885
2887
|
VStepper: typeof import('vuetify/components')['VStepper']
|
|
2886
2888
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
|
2887
2889
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
|
2888
2890
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
|
2889
2891
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
|
2890
2892
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
|
2891
|
-
VSwitch: typeof import('vuetify/components')['VSwitch']
|
|
2892
2893
|
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
|
2893
|
-
VTable: typeof import('vuetify/components')['VTable']
|
|
2894
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
|
2895
|
-
VTimeline: typeof import('vuetify/components')['VTimeline']
|
|
2896
|
-
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
|
2897
2894
|
VTab: typeof import('vuetify/components')['VTab']
|
|
2898
2895
|
VTabs: typeof import('vuetify/components')['VTabs']
|
|
2899
2896
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
|
2900
2897
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
|
|
2904
|
-
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
|
2898
|
+
VSwitch: typeof import('vuetify/components')['VSwitch']
|
|
2899
|
+
VTable: typeof import('vuetify/components')['VTable']
|
|
2900
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
|
2905
2901
|
VTimePicker: typeof import('vuetify/components')['VTimePicker']
|
|
2906
2902
|
VTimePickerClock: typeof import('vuetify/components')['VTimePickerClock']
|
|
2907
2903
|
VTimePickerControls: typeof import('vuetify/components')['VTimePickerControls']
|
|
2908
|
-
|
|
2904
|
+
VToolbar: typeof import('vuetify/components')['VToolbar']
|
|
2905
|
+
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
|
2906
|
+
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
|
2907
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
|
2908
|
+
VTimeline: typeof import('vuetify/components')['VTimeline']
|
|
2909
|
+
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
|
2910
|
+
VWindow: typeof import('vuetify/components')['VWindow']
|
|
2911
|
+
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
|
2909
2912
|
VTreeview: typeof import('vuetify/components')['VTreeview']
|
|
2910
2913
|
VTreeviewItem: typeof import('vuetify/components')['VTreeviewItem']
|
|
2911
2914
|
VTreeviewGroup: typeof import('vuetify/components')['VTreeviewGroup']
|
|
2912
|
-
|
|
2913
|
-
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
|
2914
|
-
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
|
2915
|
-
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
|
2915
|
+
VTooltip: typeof import('vuetify/components')['VTooltip']
|
|
2916
2916
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
|
2917
|
+
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
|
2917
2918
|
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
|
2919
|
+
VHover: typeof import('vuetify/components')['VHover']
|
|
2918
2920
|
VForm: typeof import('vuetify/components')['VForm']
|
|
2919
2921
|
VContainer: typeof import('vuetify/components')['VContainer']
|
|
2920
2922
|
VCol: typeof import('vuetify/components')['VCol']
|
|
2921
2923
|
VRow: typeof import('vuetify/components')['VRow']
|
|
2922
2924
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
|
2923
|
-
|
|
2925
|
+
VLazy: typeof import('vuetify/components')['VLazy']
|
|
2924
2926
|
VLayout: typeof import('vuetify/components')['VLayout']
|
|
2925
2927
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
|
2926
|
-
VLazy: typeof import('vuetify/components')['VLazy']
|
|
2927
2928
|
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
|
2928
2929
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
|
2929
2930
|
VParallax: typeof import('vuetify/components')['VParallax']
|
|
2930
|
-
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
|
2931
2931
|
VRadio: typeof import('vuetify/components')['VRadio']
|
|
2932
|
+
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
|
2932
2933
|
VResponsive: typeof import('vuetify/components')['VResponsive']
|
|
2933
2934
|
VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
|
|
2934
2935
|
VSparkline: typeof import('vuetify/components')['VSparkline']
|
|
2935
2936
|
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
|
2936
2937
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
|
2937
|
-
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
|
2938
2938
|
VValidation: typeof import('vuetify/components')['VValidation']
|
|
2939
|
+
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
|
2939
2940
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
|
2940
2941
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
|
2941
2942
|
VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
|
|
@@ -2952,21 +2953,21 @@ declare module 'vue' {
|
|
|
2952
2953
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
|
2953
2954
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
|
2954
2955
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
|
2955
|
-
|
|
2956
|
-
VVideoControls: typeof import('vuetify/labs/components')['VVideoControls']
|
|
2957
|
-
VVideoVolume: typeof import('vuetify/labs/components')['VVideoVolume']
|
|
2956
|
+
VColorInput: typeof import('vuetify/labs/components')['VColorInput']
|
|
2958
2957
|
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
|
2959
2958
|
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
|
2960
2959
|
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
|
2961
|
-
VColorInput: typeof import('vuetify/labs/components')['VColorInput']
|
|
2962
|
-
VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
|
|
2963
|
-
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
|
2964
|
-
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
|
2965
2960
|
VPie: typeof import('vuetify/labs/components')['VPie']
|
|
2966
2961
|
VPieSegment: typeof import('vuetify/labs/components')['VPieSegment']
|
|
2967
2962
|
VPieTooltip: typeof import('vuetify/labs/components')['VPieTooltip']
|
|
2963
|
+
VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
|
|
2964
|
+
VVideo: typeof import('vuetify/labs/components')['VVideo']
|
|
2965
|
+
VVideoControls: typeof import('vuetify/labs/components')['VVideoControls']
|
|
2966
|
+
VVideoVolume: typeof import('vuetify/labs/components')['VVideoVolume']
|
|
2968
2967
|
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
|
2969
2968
|
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
|
2969
|
+
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
|
2970
|
+
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
|
2970
2971
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
|
2971
2972
|
VMaskInput: typeof import('vuetify/labs/components')['VMaskInput']
|
|
2972
2973
|
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
package/lib/framework.js
CHANGED
|
@@ -195,6 +195,7 @@ export const VDateInput = genericComponent()({
|
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
useRender(() => {
|
|
198
|
+
const hasPrepend = !!(props.prependIcon || slots.prepend);
|
|
198
199
|
const confirmEditProps = VConfirmEdit.filterProps(props);
|
|
199
200
|
const datePickerProps = {
|
|
200
201
|
...VDatePicker.filterProps(omit(props, ['active', 'bgColor', 'color', 'location', 'rounded', 'maxWidth', 'minWidth', 'width'])),
|
|
@@ -272,12 +273,12 @@ export const VDateInput = genericComponent()({
|
|
|
272
273
|
}
|
|
273
274
|
})]
|
|
274
275
|
}), slots.default?.()]),
|
|
275
|
-
prepend: prependSlotProps => slots.prepend ? slots.prepend(prependSlotProps) : props.prependIcon && _createVNode(InputIcon, {
|
|
276
|
+
prepend: hasPrepend ? prependSlotProps => slots.prepend ? slots.prepend(prependSlotProps) : props.prependIcon && _createVNode(InputIcon, {
|
|
276
277
|
"key": "prepend-icon",
|
|
277
278
|
"name": "prepend",
|
|
278
|
-
"tabindex": -1,
|
|
279
|
-
"onClick": onClick
|
|
280
|
-
}, null)
|
|
279
|
+
"tabindex": props['onClick:prepend'] ? undefined : -1,
|
|
280
|
+
"onClick": isInteractive.value ? onClick : undefined
|
|
281
|
+
}, null) : undefined
|
|
281
282
|
});
|
|
282
283
|
});
|
|
283
284
|
return forwardRefs({}, vTextFieldRef);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDateInput.js","names":["makeVConfirmEditProps","VConfirmEdit","makeVDatePickerProps","VDatePicker","useInputIcon","VMenu","makeVTextFieldProps","VTextField","useCalendarRange","useDate","createDateRange","makeDateFormatProps","useDateFormat","makeDisplayProps","useDisplay","makeFocusProps","forwardRefs","useLocale","useProxiedModel","computed","ref","shallowRef","watch","genericComponent","omit","pick","propsFactory","useRender","wrapInArray","makeVDateInputProps","displayFormat","type","Function","String","default","undefined","location","menu","Boolean","updateOn","Array","pickerProps","Object","mobile","hideActions","prependIcon","hideHeader","showAdjacentMonths","VDateInput","name","props","emits","save","value","cancel","val","setup","_ref","emit","slots","t","current","currentLocale","adapter","isValid","parseDate","formatDate","parserFormat","InputIcon","clampDate","isInAllowedRange","emptyModelValue","multiple","model","isArray","map","item","toJsDate","date","isEditingInput","isFocused","focused","vTextFieldRef","disabledActions","format","display","length","start","end","inputmode","isInteractive","disabled","readonly","isReadonly","onKeydown","e","key","includes","onUserInput","target","onClick","preventDefault","stopPropagation","onCancel","onSave","onUpdateDisplayModel","onBlur","_ref2","trim","parts","split","every","stop","toSorted","a","b","isAfter","filter","confirmEditProps","filterProps","datePickerProps","datePickerSlots","textFieldProps","_createVNode","_mergeProps","class","style","placeholder","event","_createElementVNode","_Fragment","$event","_ref3","actions","proxyModel","isPristine","onUpdateModel","prepend","prependSlotProps"],"sources":["../../../src/labs/VDateInput/VDateInput.tsx"],"sourcesContent":["// Components\nimport { makeVConfirmEditProps, VConfirmEdit } from '@/components/VConfirmEdit/VConfirmEdit'\nimport { makeVDatePickerProps, VDatePicker } from '@/components/VDatePicker/VDatePicker'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VMenu } from '@/components/VMenu/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useCalendarRange } from '@/composables/calendar'\nimport { useDate } from '@/composables/date'\nimport { createDateRange } from '@/composables/date/date'\nimport { makeDateFormatProps, useDateFormat } from '@/composables/dateFormat'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeFocusProps } 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, pick, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VDatePickerSlots } from '@/components/VDatePicker/VDatePicker'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\nimport type { GenericProps } from '@/util'\n\n// Types\nexport type VDateInputActionsSlot = {\n save: () => void\n cancel: () => void\n isPristine: boolean\n}\n\nexport type VDateInputSlots = Omit<VTextFieldSlots, 'default'> &\n Pick<VDatePickerSlots, 'title' | 'header' | 'day' | 'month' | 'year'> & {\n actions: VDateInputActionsSlot\n default: never\n }\n\nexport const makeVDateInputProps = propsFactory({\n displayFormat: {\n type: [Function, String] as PropType<string | ((date: unknown) => any)>,\n default: undefined,\n },\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom start',\n },\n menu: Boolean,\n updateOn: {\n type: Array as PropType<('blur' | 'enter')[]>,\n default: () => ['blur', 'enter'],\n },\n pickerProps: Object as PropType<VDatePicker['$props']>,\n\n ...makeDateFormatProps(),\n ...makeDisplayProps({\n mobile: null,\n }),\n ...makeFocusProps(),\n ...makeVConfirmEditProps({\n hideActions: true,\n }),\n ...makeVTextFieldProps({\n prependIcon: '$calendar',\n }),\n ...omit(makeVDatePickerProps({\n hideHeader: true,\n showAdjacentMonths: true,\n }), [\n 'location',\n 'rounded',\n 'height',\n 'minHeight',\n 'maxHeight',\n ]),\n}, 'VDateInput')\n\nexport const VDateInput = genericComponent<new <\n T,\n Multiple extends boolean | 'range' | number | (string & {}) = false,\n TModel = Multiple extends true | number | string\n ? T[]\n : T,\n> (\n props: {\n modelValue?: TModel\n onSave?: (value: TModel) => void\n 'onUpdate:modelValue'?: (value: TModel) => void\n multiple?: Multiple\n },\n slots: VDateInputSlots\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VDateInput',\n\n props: makeVDateInputProps(),\n\n emits: {\n save: (value: unknown) => true,\n cancel: () => true,\n 'update:focused': (val: boolean) => true,\n 'update:modelValue': (val: unknown) => true,\n 'update:menu': (val: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t, current: currentLocale } = useLocale()\n const adapter = useDate()\n const { isValid, parseDate, formatDate, parserFormat } = useDateFormat(props, currentLocale)\n const { mobile } = useDisplay(props)\n const { InputIcon } = useInputIcon(props)\n\n const { clampDate, isInAllowedRange } = useCalendarRange(props)\n\n const emptyModelValue = () => props.multiple ? [] : null\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n emptyModelValue(),\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 = useProxiedModel(props, 'menu')\n const isEditingInput = shallowRef(false)\n const isFocused = shallowRef(props.focused)\n const vTextFieldRef = ref<VTextField>()\n const disabledActions = ref<typeof VConfirmEdit['props']['disabled']>(['save'])\n\n function format (date: unknown) {\n if (typeof props.displayFormat === 'function') {\n return props.displayFormat(date)\n }\n if (props.displayFormat) {\n return adapter.format(date, props.displayFormat ?? 'keyboardDate')\n }\n return formatDate(date)\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\n const isReadonly = computed(() => {\n if (!props.updateOn.length) return true\n\n return !(mobile.value && isEditingInput.value) && props.readonly\n })\n\n watch(menu, val => {\n if (val) return\n\n isEditingInput.value = false\n disabledActions.value = ['save']\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\n if (props.updateOn.includes('enter') && !props.readonly) {\n onUserInput(e.target as HTMLInputElement)\n }\n }\n\n function onClick (e: MouseEvent) {\n if (props.disabled) return\n\n e.preventDefault()\n e.stopPropagation()\n\n if (menu.value && mobile.value) {\n isEditingInput.value = !props.readonly\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: unknown) {\n if (value != null) return\n\n model.value = emptyModelValue()\n }\n\n function onBlur (e: FocusEvent) {\n if (props.updateOn.includes('blur') && !props.readonly) {\n onUserInput(e.target as HTMLInputElement)\n }\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 function onUserInput ({ value }: HTMLInputElement) {\n if (!value.trim()) {\n model.value = emptyModelValue()\n } else if (!props.multiple) {\n if (isValid(value)) {\n model.value = clampDate(parseDate(value))\n }\n } else {\n const parts = value.trim().split(/\\D+-\\D+|[^\\d\\-/.]+/)\n if (parts.every(isValid)) {\n if (props.multiple === 'range') {\n const [start, stop] = parts\n .map(parseDate)\n .map(clampDate)\n .toSorted((a, b) => adapter.isAfter(a, b) ? 1 : -1)\n model.value = createDateRange(adapter, start, stop)\n } else {\n model.value = parts\n .map(parseDate)\n .filter(isInAllowedRange)\n }\n }\n }\n }\n\n useRender(() => {\n const confirmEditProps = VConfirmEdit.filterProps(props)\n const datePickerProps = {\n ...VDatePicker.filterProps(omit(props, [\n 'active',\n 'bgColor',\n 'color',\n 'location',\n 'rounded',\n 'maxWidth',\n 'minWidth',\n 'width',\n ])),\n ...props.pickerProps,\n }\n const datePickerSlots = pick(slots, ['title', 'header', 'day', 'month', 'year'])\n const textFieldProps = VTextField.filterProps(omit(props, ['placeholder']))\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n class={['v-date-input', props.class]}\n style={ props.style }\n modelValue={ display.value }\n inputmode={ inputmode.value }\n placeholder={ props.placeholder ?? parserFormat.value }\n readonly={ isReadonly.value }\n onKeydown={ isInteractive.value ? onKeydown : undefined }\n focused={ menu.value || isFocused.value }\n onBlur={ onBlur }\n validationValue={ model.value }\n onClick:control={ onClick }\n onUpdate:modelValue={ onUpdateDisplayModel }\n onUpdate:focused={ event => isFocused.value = event }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n minWidth=\"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 disabled={ disabledActions.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\n disabledActions.value = []\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 ...datePickerSlots,\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 prepend: prependSlotProps => (\n slots.prepend\n ? slots.prepend(prependSlotProps)\n : (props.prependIcon && (\n <InputIcon\n key=\"prepend-icon\"\n name=\"prepend\"\n tabindex={ -1 }\n onClick={ onClick }\n />\n ))\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({}, vTextFieldRef)\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","useInputIcon","VMenu","makeVTextFieldProps","VTextField","useCalendarRange","useDate","createDateRange","makeDateFormatProps","useDateFormat","makeDisplayProps","useDisplay","makeFocusProps","forwardRefs","useLocale","useProxiedModel","computed","ref","shallowRef","watch","genericComponent","omit","pick","propsFactory","useRender","wrapInArray","makeVDateInputProps","displayFormat","type","Function","String","default","undefined","location","menu","Boolean","updateOn","Array","pickerProps","Object","mobile","hideActions","prependIcon","hideHeader","showAdjacentMonths","VDateInput","name","props","emits","save","value","cancel","val","setup","_ref","emit","slots","t","current","currentLocale","adapter","isValid","parseDate","formatDate","parserFormat","InputIcon","clampDate","isInAllowedRange","emptyModelValue","multiple","model","isArray","map","item","toJsDate","date","isEditingInput","isFocused","focused","vTextFieldRef","disabledActions","format","display","length","start","end","inputmode","isInteractive","disabled","readonly","isReadonly","onKeydown","e","key","includes","onUserInput","target","onClick","preventDefault","stopPropagation","onCancel","onSave","onUpdateDisplayModel","onBlur","_ref2","trim","parts","split","every","stop","toSorted","a","b","isAfter","filter","hasPrepend","prepend","confirmEditProps","filterProps","datePickerProps","datePickerSlots","textFieldProps","_createVNode","_mergeProps","class","style","placeholder","event","_createElementVNode","_Fragment","$event","_ref3","actions","proxyModel","isPristine","onUpdateModel","prependSlotProps"],"sources":["../../../src/labs/VDateInput/VDateInput.tsx"],"sourcesContent":["// Components\nimport { makeVConfirmEditProps, VConfirmEdit } from '@/components/VConfirmEdit/VConfirmEdit'\nimport { makeVDatePickerProps, VDatePicker } from '@/components/VDatePicker/VDatePicker'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VMenu } from '@/components/VMenu/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useCalendarRange } from '@/composables/calendar'\nimport { useDate } from '@/composables/date'\nimport { createDateRange } from '@/composables/date/date'\nimport { makeDateFormatProps, useDateFormat } from '@/composables/dateFormat'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeFocusProps } 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, pick, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VDatePickerSlots } from '@/components/VDatePicker/VDatePicker'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\nimport type { GenericProps } from '@/util'\n\n// Types\nexport type VDateInputActionsSlot = {\n save: () => void\n cancel: () => void\n isPristine: boolean\n}\n\nexport type VDateInputSlots = Omit<VTextFieldSlots, 'default'> &\n Pick<VDatePickerSlots, 'title' | 'header' | 'day' | 'month' | 'year'> & {\n actions: VDateInputActionsSlot\n default: never\n }\n\nexport const makeVDateInputProps = propsFactory({\n displayFormat: {\n type: [Function, String] as PropType<string | ((date: unknown) => any)>,\n default: undefined,\n },\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom start',\n },\n menu: Boolean,\n updateOn: {\n type: Array as PropType<('blur' | 'enter')[]>,\n default: () => ['blur', 'enter'],\n },\n pickerProps: Object as PropType<VDatePicker['$props']>,\n\n ...makeDateFormatProps(),\n ...makeDisplayProps({\n mobile: null,\n }),\n ...makeFocusProps(),\n ...makeVConfirmEditProps({\n hideActions: true,\n }),\n ...makeVTextFieldProps({\n prependIcon: '$calendar',\n }),\n ...omit(makeVDatePickerProps({\n hideHeader: true,\n showAdjacentMonths: true,\n }), [\n 'location',\n 'rounded',\n 'height',\n 'minHeight',\n 'maxHeight',\n ]),\n}, 'VDateInput')\n\nexport const VDateInput = genericComponent<new <\n T,\n Multiple extends boolean | 'range' | number | (string & {}) = false,\n TModel = Multiple extends true | number | string\n ? T[]\n : T,\n> (\n props: {\n modelValue?: TModel\n onSave?: (value: TModel) => void\n 'onUpdate:modelValue'?: (value: TModel) => void\n multiple?: Multiple\n },\n slots: VDateInputSlots\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VDateInput',\n\n props: makeVDateInputProps(),\n\n emits: {\n save: (value: unknown) => true,\n cancel: () => true,\n 'update:focused': (val: boolean) => true,\n 'update:modelValue': (val: unknown) => true,\n 'update:menu': (val: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t, current: currentLocale } = useLocale()\n const adapter = useDate()\n const { isValid, parseDate, formatDate, parserFormat } = useDateFormat(props, currentLocale)\n const { mobile } = useDisplay(props)\n const { InputIcon } = useInputIcon(props)\n\n const { clampDate, isInAllowedRange } = useCalendarRange(props)\n\n const emptyModelValue = () => props.multiple ? [] : null\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n emptyModelValue(),\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 = useProxiedModel(props, 'menu')\n const isEditingInput = shallowRef(false)\n const isFocused = shallowRef(props.focused)\n const vTextFieldRef = ref<VTextField>()\n const disabledActions = ref<typeof VConfirmEdit['props']['disabled']>(['save'])\n\n function format (date: unknown) {\n if (typeof props.displayFormat === 'function') {\n return props.displayFormat(date)\n }\n if (props.displayFormat) {\n return adapter.format(date, props.displayFormat ?? 'keyboardDate')\n }\n return formatDate(date)\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\n const isReadonly = computed(() => {\n if (!props.updateOn.length) return true\n\n return !(mobile.value && isEditingInput.value) && props.readonly\n })\n\n watch(menu, val => {\n if (val) return\n\n isEditingInput.value = false\n disabledActions.value = ['save']\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\n if (props.updateOn.includes('enter') && !props.readonly) {\n onUserInput(e.target as HTMLInputElement)\n }\n }\n\n function onClick (e: MouseEvent) {\n if (props.disabled) return\n\n e.preventDefault()\n e.stopPropagation()\n\n if (menu.value && mobile.value) {\n isEditingInput.value = !props.readonly\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: unknown) {\n if (value != null) return\n\n model.value = emptyModelValue()\n }\n\n function onBlur (e: FocusEvent) {\n if (props.updateOn.includes('blur') && !props.readonly) {\n onUserInput(e.target as HTMLInputElement)\n }\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 function onUserInput ({ value }: HTMLInputElement) {\n if (!value.trim()) {\n model.value = emptyModelValue()\n } else if (!props.multiple) {\n if (isValid(value)) {\n model.value = clampDate(parseDate(value))\n }\n } else {\n const parts = value.trim().split(/\\D+-\\D+|[^\\d\\-/.]+/)\n if (parts.every(isValid)) {\n if (props.multiple === 'range') {\n const [start, stop] = parts\n .map(parseDate)\n .map(clampDate)\n .toSorted((a, b) => adapter.isAfter(a, b) ? 1 : -1)\n model.value = createDateRange(adapter, start, stop)\n } else {\n model.value = parts\n .map(parseDate)\n .filter(isInAllowedRange)\n }\n }\n }\n }\n\n useRender(() => {\n const hasPrepend = !!(props.prependIcon || slots.prepend)\n const confirmEditProps = VConfirmEdit.filterProps(props)\n const datePickerProps = {\n ...VDatePicker.filterProps(omit(props, [\n 'active',\n 'bgColor',\n 'color',\n 'location',\n 'rounded',\n 'maxWidth',\n 'minWidth',\n 'width',\n ])),\n ...props.pickerProps,\n }\n const datePickerSlots = pick(slots, ['title', 'header', 'day', 'month', 'year'])\n const textFieldProps = VTextField.filterProps(omit(props, ['placeholder']))\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n class={['v-date-input', props.class]}\n style={ props.style }\n modelValue={ display.value }\n inputmode={ inputmode.value }\n placeholder={ props.placeholder ?? parserFormat.value }\n readonly={ isReadonly.value }\n onKeydown={ isInteractive.value ? onKeydown : undefined }\n focused={ menu.value || isFocused.value }\n onBlur={ onBlur }\n validationValue={ model.value }\n onClick:control={ onClick }\n onUpdate:modelValue={ onUpdateDisplayModel }\n onUpdate:focused={ event => isFocused.value = event }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n minWidth=\"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 disabled={ disabledActions.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\n disabledActions.value = []\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 ...datePickerSlots,\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 prepend: hasPrepend ? prependSlotProps => (\n slots.prepend\n ? slots.prepend(prependSlotProps)\n : (props.prependIcon && (\n <InputIcon\n key=\"prepend-icon\"\n name=\"prepend\"\n tabindex={ props['onClick:prepend'] ? undefined : -1 }\n onClick={ isInteractive.value ? onClick : undefined }\n />\n ))\n ) : undefined,\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({}, vTextFieldRef)\n },\n})\n\nexport type VDateInput = InstanceType<typeof VDateInput>\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,17 @@ $color-pack: true !default;
|
|
|
7
7
|
$reset: true !default;
|
|
8
8
|
$layers: false !default;
|
|
9
9
|
|
|
10
|
+
$misc: () !default;
|
|
11
|
+
$misc: map-deep-merge(
|
|
12
|
+
(
|
|
13
|
+
elevation: true,
|
|
14
|
+
hidden: true,
|
|
15
|
+
'sr-only': true,
|
|
16
|
+
'pointer-events': true,
|
|
17
|
+
),
|
|
18
|
+
$misc
|
|
19
|
+
);
|
|
20
|
+
|
|
10
21
|
$body-font-family: 'Roboto', sans-serif !default;
|
|
11
22
|
$font-size-root: 1rem !default;
|
|
12
23
|
$line-height-root: 1.5 !default;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
@use 'sass:list'
|
|
2
|
+
@use 'sass:map'
|
|
2
3
|
@use '../settings'
|
|
3
4
|
@use '../tools'
|
|
4
5
|
|
|
5
|
-
@if (settings.$utilities != false and list.length(settings.$utilities) > 0)
|
|
6
|
+
@if (settings.$utilities != false and map.get(settings.$misc, 'hidden') != false and list.length(settings.$utilities) > 0)
|
|
6
7
|
@include tools.layer('utilities')
|
|
7
8
|
@each $size, $media_query in settings.$display-breakpoints
|
|
8
9
|
.hidden
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
@use 'sass:list';
|
|
2
|
+
@use 'sass:map';
|
|
2
3
|
@use '../tools';
|
|
3
4
|
@use '../settings';
|
|
4
5
|
|
|
5
|
-
@if (settings.$utilities != false and list.length(settings.$utilities) > 0) {
|
|
6
|
+
@if (settings.$utilities != false and map.get(settings.$misc, 'elevation') != false and list.length(settings.$utilities) > 0) {
|
|
6
7
|
@include tools.layer('utilities') {
|
|
7
8
|
$z: 24;
|
|
8
9
|
@while $z >= 0 {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
@use 'sass:list'
|
|
2
|
+
@use 'sass:map'
|
|
2
3
|
@use '../settings'
|
|
3
4
|
@use '../tools'
|
|
4
5
|
|
|
5
|
-
@if (settings.$utilities != false and list.length(settings.$utilities) > 0)
|
|
6
|
+
@if (settings.$utilities != false and map.get(settings.$misc, 'pointer-events') != false and list.length(settings.$utilities) > 0)
|
|
6
7
|
@include tools.layer('utilities')
|
|
7
8
|
.pointer-events-none
|
|
8
9
|
pointer-events: none !important
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
// Source: https://github.com/twbs/bootstrap/blob/master/scss/mixins/_screen-reader.scss
|
|
2
2
|
@use 'sass:list'
|
|
3
|
+
@use 'sass:map'
|
|
3
4
|
@use '../settings'
|
|
4
5
|
@use '../tools'
|
|
5
6
|
|
|
6
|
-
@if (settings.$utilities != false and list.length(settings.$utilities) > 0)
|
|
7
|
+
@if (settings.$utilities != false and map.get(settings.$misc, 'sr-only') != false and list.length(settings.$utilities) > 0)
|
|
7
8
|
@include tools.layer('utilities')
|
|
8
9
|
.d-sr-only,
|
|
9
10
|
.d-sr-only-focusable:not(:focus)
|