@vuetify/nightly 3.8.2-dev.2025-04-17 → 3.8.2-master.2025-04-19
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 +7 -16
- package/dist/json/attributes.json +3562 -3562
- package/dist/json/importMap-labs.json +24 -24
- package/dist/json/importMap.json +164 -164
- package/dist/json/web-types.json +6668 -6669
- package/dist/vuetify-labs.cjs +36 -112
- package/dist/vuetify-labs.css +3302 -3302
- package/dist/vuetify-labs.d.ts +62 -76
- package/dist/vuetify-labs.esm.js +37 -113
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +36 -112
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +29 -103
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +5737 -5737
- package/dist/vuetify.d.ts +57 -62
- package/dist/vuetify.esm.js +30 -104
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +29 -103
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1165 -1171
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VOverlay/VOverlay.css +1 -1
- package/lib/components/VOverlay/_variables.scss +1 -1
- package/lib/composables/calendar.d.ts +0 -1
- package/lib/composables/calendar.js.map +1 -1
- package/lib/composables/theme.d.ts +1 -6
- package/lib/composables/theme.js +26 -94
- package/lib/composables/theme.js.map +1 -1
- package/lib/composables/virtual.js +1 -6
- package/lib/composables/virtual.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/entry-bundler.js.map +1 -1
- package/lib/framework.d.ts +57 -62
- package/lib/framework.js +1 -1
- package/lib/framework.js.map +1 -1
- package/lib/labs/VIconBtn/VIconBtn.d.ts +6 -21
- package/lib/labs/VIconBtn/VIconBtn.js +7 -9
- package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
- package/lib/util/globals.d.ts +0 -1
- package/lib/util/globals.js +0 -1
- package/lib/util/globals.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.d.ts
CHANGED
@@ -133,12 +133,11 @@ type DeepPartial<T> = T extends object ? {
|
|
133
133
|
} : T;
|
134
134
|
type ThemeOptions = false | {
|
135
135
|
cspNonce?: string;
|
136
|
-
defaultTheme?:
|
136
|
+
defaultTheme?: string;
|
137
137
|
variations?: false | VariationsOptions;
|
138
138
|
themes?: Record<string, ThemeDefinition>;
|
139
139
|
stylesheetId?: string;
|
140
140
|
scope?: string;
|
141
|
-
unimportant?: boolean;
|
142
141
|
};
|
143
142
|
type ThemeDefinition = DeepPartial<InternalThemeDefinition>;
|
144
143
|
interface VariationsOptions {
|
@@ -175,15 +174,11 @@ interface OnColors {
|
|
175
174
|
'on-info': string;
|
176
175
|
}
|
177
176
|
interface ThemeInstance {
|
178
|
-
change: (themeName: string) => void;
|
179
|
-
cycle: (themeArray?: string[]) => void;
|
180
|
-
toggle: (themeArray?: [string, string]) => void;
|
181
177
|
readonly isDisabled: boolean;
|
182
178
|
readonly themes: Ref<Record<string, InternalThemeDefinition>>;
|
183
179
|
readonly name: Readonly<Ref<string>>;
|
184
180
|
readonly current: DeepReadonly<Ref<InternalThemeDefinition>>;
|
185
181
|
readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>;
|
186
|
-
readonly prefix: string;
|
187
182
|
readonly themeClasses: Readonly<Ref<string | undefined>>;
|
188
183
|
readonly styles: Readonly<Ref<string>>;
|
189
184
|
readonly global: {
|
@@ -92465,7 +92460,6 @@ declare const VIconBtn: {
|
|
92465
92460
|
tile: boolean;
|
92466
92461
|
baseVariant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
|
92467
92462
|
hideOverlay: boolean;
|
92468
|
-
iconSize: string | number;
|
92469
92463
|
iconSizes: [VIconBtnSizes, number][];
|
92470
92464
|
} & {
|
92471
92465
|
height?: string | number | undefined;
|
@@ -92485,6 +92479,7 @@ declare const VIconBtn: {
|
|
92485
92479
|
iconColor?: string | undefined;
|
92486
92480
|
activeIcon?: IconValue | undefined;
|
92487
92481
|
activeVariant?: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain" | undefined;
|
92482
|
+
iconSize?: string | number | undefined;
|
92488
92483
|
} & {
|
92489
92484
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
92490
92485
|
default?: (() => vue.VNodeChild) | undefined;
|
@@ -92516,7 +92511,6 @@ declare const VIconBtn: {
|
|
92516
92511
|
tile: boolean;
|
92517
92512
|
baseVariant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
|
92518
92513
|
hideOverlay: boolean;
|
92519
|
-
iconSize: string | number;
|
92520
92514
|
iconSizes: [VIconBtnSizes, number][];
|
92521
92515
|
}, true, {}, vue.SlotsType<Partial<{
|
92522
92516
|
default: () => vue.VNode[];
|
@@ -92540,7 +92534,6 @@ declare const VIconBtn: {
|
|
92540
92534
|
tile: boolean;
|
92541
92535
|
baseVariant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
|
92542
92536
|
hideOverlay: boolean;
|
92543
|
-
iconSize: string | number;
|
92544
92537
|
iconSizes: [VIconBtnSizes, number][];
|
92545
92538
|
} & {
|
92546
92539
|
height?: string | number | undefined;
|
@@ -92560,6 +92553,7 @@ declare const VIconBtn: {
|
|
92560
92553
|
iconColor?: string | undefined;
|
92561
92554
|
activeIcon?: IconValue | undefined;
|
92562
92555
|
activeVariant?: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain" | undefined;
|
92556
|
+
iconSize?: string | number | undefined;
|
92563
92557
|
} & {
|
92564
92558
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
92565
92559
|
default?: (() => vue.VNodeChild) | undefined;
|
@@ -92589,7 +92583,6 @@ declare const VIconBtn: {
|
|
92589
92583
|
tile: boolean;
|
92590
92584
|
baseVariant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
|
92591
92585
|
hideOverlay: boolean;
|
92592
|
-
iconSize: string | number;
|
92593
92586
|
iconSizes: [VIconBtnSizes, number][];
|
92594
92587
|
}>;
|
92595
92588
|
__isFragment?: never;
|
@@ -92607,7 +92600,6 @@ declare const VIconBtn: {
|
|
92607
92600
|
tile: boolean;
|
92608
92601
|
baseVariant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
|
92609
92602
|
hideOverlay: boolean;
|
92610
|
-
iconSize: string | number;
|
92611
92603
|
iconSizes: [VIconBtnSizes, number][];
|
92612
92604
|
} & {
|
92613
92605
|
height?: string | number | undefined;
|
@@ -92627,6 +92619,7 @@ declare const VIconBtn: {
|
|
92627
92619
|
iconColor?: string | undefined;
|
92628
92620
|
activeIcon?: IconValue | undefined;
|
92629
92621
|
activeVariant?: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain" | undefined;
|
92622
|
+
iconSize?: string | number | undefined;
|
92630
92623
|
} & {
|
92631
92624
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
92632
92625
|
default?: (() => vue.VNodeChild) | undefined;
|
@@ -92658,7 +92651,6 @@ declare const VIconBtn: {
|
|
92658
92651
|
tile: boolean;
|
92659
92652
|
baseVariant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
|
92660
92653
|
hideOverlay: boolean;
|
92661
|
-
iconSize: string | number;
|
92662
92654
|
iconSizes: [VIconBtnSizes, number][];
|
92663
92655
|
}, {}, string, vue.SlotsType<Partial<{
|
92664
92656
|
default: () => vue.VNode[];
|
@@ -92713,10 +92705,7 @@ declare const VIconBtn: {
|
|
92713
92705
|
hideOverlay: BooleanConstructor;
|
92714
92706
|
icon: PropType<IconValue>;
|
92715
92707
|
iconColor: StringConstructor;
|
92716
|
-
iconSize:
|
92717
|
-
type: PropType<VIconBtnSizes | number | string>;
|
92718
|
-
default: string;
|
92719
|
-
};
|
92708
|
+
iconSize: PropType<VIconBtnSizes | number | string>;
|
92720
92709
|
iconSizes: {
|
92721
92710
|
type: PropType<[VIconBtnSizes, number][]>;
|
92722
92711
|
default: () => (string | number)[][];
|
@@ -92787,10 +92776,7 @@ declare const VIconBtn: {
|
|
92787
92776
|
hideOverlay: BooleanConstructor;
|
92788
92777
|
icon: PropType<IconValue>;
|
92789
92778
|
iconColor: StringConstructor;
|
92790
|
-
iconSize:
|
92791
|
-
type: PropType<VIconBtnSizes | number | string>;
|
92792
|
-
default: string;
|
92793
|
-
};
|
92779
|
+
iconSize: PropType<VIconBtnSizes | number | string>;
|
92794
92780
|
iconSizes: {
|
92795
92781
|
type: PropType<[VIconBtnSizes, number][]>;
|
92796
92782
|
default: () => (string | number)[][];
|
@@ -96800,20 +96786,21 @@ declare module 'vue' {
|
|
96800
96786
|
$children?: VNodeChild
|
96801
96787
|
}
|
96802
96788
|
export interface GlobalComponents {
|
96803
|
-
VApp: VApp
|
96804
96789
|
VAutocomplete: VAutocomplete
|
96790
|
+
VAlert: VAlert
|
96791
|
+
VAlertTitle: VAlertTitle
|
96805
96792
|
VAppBar: VAppBar
|
96806
96793
|
VAppBarNavIcon: VAppBarNavIcon
|
96807
96794
|
VAppBarTitle: VAppBarTitle
|
96808
|
-
VAlert: VAlert
|
96809
|
-
VAlertTitle: VAlertTitle
|
96810
|
-
VAvatar: VAvatar
|
96811
96795
|
VBadge: VBadge
|
96812
96796
|
VBottomNavigation: VBottomNavigation
|
96813
|
-
VBottomSheet: VBottomSheet
|
96814
96797
|
VBanner: VBanner
|
96815
96798
|
VBannerActions: VBannerActions
|
96816
96799
|
VBannerText: VBannerText
|
96800
|
+
VAvatar: VAvatar
|
96801
|
+
VBottomSheet: VBottomSheet
|
96802
|
+
VBtn: VBtn
|
96803
|
+
VBtnGroup: VBtnGroup
|
96817
96804
|
VBreadcrumbs: VBreadcrumbs
|
96818
96805
|
VBreadcrumbsItem: VBreadcrumbsItem
|
96819
96806
|
VBreadcrumbsDivider: VBreadcrumbsDivider
|
@@ -96823,16 +96810,23 @@ declare module 'vue' {
|
|
96823
96810
|
VCardSubtitle: VCardSubtitle
|
96824
96811
|
VCardText: VCardText
|
96825
96812
|
VCardTitle: VCardTitle
|
96813
|
+
VApp: VApp
|
96826
96814
|
VBtnToggle: VBtnToggle
|
96815
|
+
VChip: VChip
|
96827
96816
|
VCarousel: VCarousel
|
96828
96817
|
VCarouselItem: VCarouselItem
|
96829
96818
|
VCheckbox: VCheckbox
|
96830
96819
|
VCheckboxBtn: VCheckboxBtn
|
96831
|
-
VBtn: VBtn
|
96832
|
-
VChip: VChip
|
96833
96820
|
VCode: VCode
|
96834
96821
|
VColorPicker: VColorPicker
|
96822
|
+
VDatePicker: VDatePicker
|
96823
|
+
VDatePickerControls: VDatePickerControls
|
96824
|
+
VDatePickerHeader: VDatePickerHeader
|
96825
|
+
VDatePickerMonth: VDatePickerMonth
|
96826
|
+
VDatePickerMonths: VDatePickerMonths
|
96827
|
+
VDatePickerYears: VDatePickerYears
|
96835
96828
|
VCounter: VCounter
|
96829
|
+
VCombobox: VCombobox
|
96836
96830
|
VDataTable: VDataTable
|
96837
96831
|
VDataTableHeaders: VDataTableHeaders
|
96838
96832
|
VDataTableFooter: VDataTableFooter
|
@@ -96840,36 +96834,29 @@ declare module 'vue' {
|
|
96840
96834
|
VDataTableRow: VDataTableRow
|
96841
96835
|
VDataTableVirtual: VDataTableVirtual
|
96842
96836
|
VDataTableServer: VDataTableServer
|
96843
|
-
|
96844
|
-
|
96845
|
-
VDatePickerHeader: VDatePickerHeader
|
96846
|
-
VDatePickerMonth: VDatePickerMonth
|
96847
|
-
VDatePickerMonths: VDatePickerMonths
|
96848
|
-
VDatePickerYears: VDatePickerYears
|
96849
|
-
VChipGroup: VChipGroup
|
96837
|
+
VDialog: VDialog
|
96838
|
+
VEmptyState: VEmptyState
|
96850
96839
|
VDivider: VDivider
|
96851
96840
|
VExpansionPanels: VExpansionPanels
|
96852
96841
|
VExpansionPanel: VExpansionPanel
|
96853
96842
|
VExpansionPanelText: VExpansionPanelText
|
96854
96843
|
VExpansionPanelTitle: VExpansionPanelTitle
|
96855
|
-
|
96844
|
+
VFab: VFab
|
96845
|
+
VFileInput: VFileInput
|
96846
|
+
VInfiniteScroll: VInfiniteScroll
|
96856
96847
|
VField: VField
|
96857
96848
|
VFieldLabel: VFieldLabel
|
96858
|
-
|
96859
|
-
VFab: VFab
|
96860
|
-
VImg: VImg
|
96861
|
-
VBtnGroup: VBtnGroup
|
96862
|
-
VCombobox: VCombobox
|
96849
|
+
VFooter: VFooter
|
96863
96850
|
VIcon: VIcon
|
96864
96851
|
VComponentIcon: VComponentIcon
|
96865
96852
|
VSvgIcon: VSvgIcon
|
96866
96853
|
VLigatureIcon: VLigatureIcon
|
96867
96854
|
VClassIcon: VClassIcon
|
96868
|
-
VFooter: VFooter
|
96869
|
-
VInfiniteScroll: VInfiniteScroll
|
96870
96855
|
VInput: VInput
|
96856
|
+
VImg: VImg
|
96871
96857
|
VKbd: VKbd
|
96872
|
-
|
96858
|
+
VItemGroup: VItemGroup
|
96859
|
+
VItem: VItem
|
96873
96860
|
VList: VList
|
96874
96861
|
VListGroup: VListGroup
|
96875
96862
|
VListImg: VListImg
|
@@ -96879,30 +96866,27 @@ declare module 'vue' {
|
|
96879
96866
|
VListItemSubtitle: VListItemSubtitle
|
96880
96867
|
VListItemTitle: VListItemTitle
|
96881
96868
|
VListSubheader: VListSubheader
|
96882
|
-
|
96869
|
+
VLabel: VLabel
|
96870
|
+
VMenu: VMenu
|
96883
96871
|
VMessages: VMessages
|
96884
|
-
|
96885
|
-
VItem: VItem
|
96886
|
-
VDialog: VDialog
|
96887
|
-
VNumberInput: VNumberInput
|
96872
|
+
VMain: VMain
|
96888
96873
|
VNavigationDrawer: VNavigationDrawer
|
96889
|
-
VMenu: VMenu
|
96890
|
-
VOverlay: VOverlay
|
96891
96874
|
VOtpInput: VOtpInput
|
96892
|
-
VProgressLinear: VProgressLinear
|
96893
96875
|
VPagination: VPagination
|
96876
|
+
VOverlay: VOverlay
|
96877
|
+
VProgressLinear: VProgressLinear
|
96878
|
+
VNumberInput: VNumberInput
|
96879
|
+
VProgressCircular: VProgressCircular
|
96880
|
+
VSelectionControl: VSelectionControl
|
96894
96881
|
VRadioGroup: VRadioGroup
|
96882
|
+
VSelect: VSelect
|
96895
96883
|
VRating: VRating
|
96896
|
-
VProgressCircular: VProgressCircular
|
96897
96884
|
VSelectionControlGroup: VSelectionControlGroup
|
96898
|
-
VSelect: VSelect
|
96899
96885
|
VSheet: VSheet
|
96900
96886
|
VSnackbar: VSnackbar
|
96901
96887
|
VSkeletonLoader: VSkeletonLoader
|
96902
|
-
VSelectionControl: VSelectionControl
|
96903
96888
|
VSlideGroup: VSlideGroup
|
96904
96889
|
VSlideGroupItem: VSlideGroupItem
|
96905
|
-
VSwitch: VSwitch
|
96906
96890
|
VSlider: VSlider
|
96907
96891
|
VStepper: VStepper
|
96908
96892
|
VStepperActions: VStepperActions
|
@@ -96910,15 +96894,14 @@ declare module 'vue' {
|
|
96910
96894
|
VStepperItem: VStepperItem
|
96911
96895
|
VStepperWindow: VStepperWindow
|
96912
96896
|
VStepperWindowItem: VStepperWindowItem
|
96897
|
+
VSwitch: VSwitch
|
96898
|
+
VSystemBar: VSystemBar
|
96899
|
+
VTextarea: VTextarea
|
96900
|
+
VTextField: VTextField
|
96913
96901
|
VTab: VTab
|
96914
96902
|
VTabs: VTabs
|
96915
96903
|
VTabsWindow: VTabsWindow
|
96916
96904
|
VTabsWindowItem: VTabsWindowItem
|
96917
|
-
VTable: VTable
|
96918
|
-
VTextField: VTextField
|
96919
|
-
VSystemBar: VSystemBar
|
96920
|
-
VTooltip: VTooltip
|
96921
|
-
VTextarea: VTextarea
|
96922
96905
|
VTimeline: VTimeline
|
96923
96906
|
VTimelineItem: VTimelineItem
|
96924
96907
|
VToolbar: VToolbar
|
@@ -96926,6 +96909,9 @@ declare module 'vue' {
|
|
96926
96909
|
VToolbarItems: VToolbarItems
|
96927
96910
|
VWindow: VWindow
|
96928
96911
|
VWindowItem: VWindowItem
|
96912
|
+
VTooltip: VTooltip
|
96913
|
+
VChipGroup: VChipGroup
|
96914
|
+
VConfirmEdit: VConfirmEdit
|
96929
96915
|
VDataIterator: VDataIterator
|
96930
96916
|
VDefaultsProvider: VDefaultsProvider
|
96931
96917
|
VForm: VForm
|
@@ -96934,22 +96920,18 @@ declare module 'vue' {
|
|
96934
96920
|
VRow: VRow
|
96935
96921
|
VSpacer: VSpacer
|
96936
96922
|
VHover: VHover
|
96923
|
+
VLazy: VLazy
|
96937
96924
|
VLayout: VLayout
|
96938
96925
|
VLayoutItem: VLayoutItem
|
96939
96926
|
VLocaleProvider: VLocaleProvider
|
96940
|
-
VLazy: VLazy
|
96941
96927
|
VNoSsr: VNoSsr
|
96942
96928
|
VParallax: VParallax
|
96943
96929
|
VRadio: VRadio
|
96944
96930
|
VRangeSlider: VRangeSlider
|
96945
|
-
VSpeedDial: VSpeedDial
|
96946
|
-
VSnackbarQueue: VSnackbarQueue
|
96947
96931
|
VResponsive: VResponsive
|
96948
96932
|
VSparkline: VSparkline
|
96949
|
-
|
96950
|
-
|
96951
|
-
VThemeProvider: VThemeProvider
|
96952
|
-
VConfirmEdit: VConfirmEdit
|
96933
|
+
VSnackbarQueue: VSnackbarQueue
|
96934
|
+
VSpeedDial: VSpeedDial
|
96953
96935
|
VFabTransition: VFabTransition
|
96954
96936
|
VDialogBottomTransition: VDialogBottomTransition
|
96955
96937
|
VDialogTopTransition: VDialogTopTransition
|
@@ -96966,6 +96948,13 @@ declare module 'vue' {
|
|
96966
96948
|
VExpandTransition: VExpandTransition
|
96967
96949
|
VExpandXTransition: VExpandXTransition
|
96968
96950
|
VDialogTransition: VDialogTransition
|
96951
|
+
VValidation: VValidation
|
96952
|
+
VThemeProvider: VThemeProvider
|
96953
|
+
VVirtualScroll: VVirtualScroll
|
96954
|
+
VTable: VTable
|
96955
|
+
VIconBtn: VIconBtn
|
96956
|
+
VPicker: VPicker
|
96957
|
+
VPickerTitle: VPickerTitle
|
96969
96958
|
VCalendar: VCalendar
|
96970
96959
|
VCalendarDay: VCalendarDay
|
96971
96960
|
VCalendarHeader: VCalendarHeader
|
@@ -96974,18 +96963,15 @@ declare module 'vue' {
|
|
96974
96963
|
VCalendarMonthDay: VCalendarMonthDay
|
96975
96964
|
VFileUpload: VFileUpload
|
96976
96965
|
VFileUploadItem: VFileUploadItem
|
96977
|
-
VPicker: VPicker
|
96978
|
-
VPickerTitle: VPickerTitle
|
96979
|
-
VStepperVertical: VStepperVertical
|
96980
|
-
VStepperVerticalItem: VStepperVerticalItem
|
96981
|
-
VStepperVerticalActions: VStepperVerticalActions
|
96982
|
-
VIconBtn: VIconBtn
|
96983
|
-
VTimePicker: VTimePicker
|
96984
|
-
VTimePickerClock: VTimePickerClock
|
96985
|
-
VTimePickerControls: VTimePickerControls
|
96986
96966
|
VTreeview: VTreeview
|
96987
96967
|
VTreeviewItem: VTreeviewItem
|
96988
96968
|
VTreeviewGroup: VTreeviewGroup
|
96969
|
+
VTimePicker: VTimePicker
|
96970
|
+
VTimePickerClock: VTimePickerClock
|
96971
|
+
VTimePickerControls: VTimePickerControls
|
96972
|
+
VStepperVertical: VStepperVertical
|
96973
|
+
VStepperVerticalItem: VStepperVerticalItem
|
96974
|
+
VStepperVerticalActions: VStepperVerticalActions
|
96989
96975
|
VDateInput: VDateInput
|
96990
96976
|
VPullToRefresh: VPullToRefresh
|
96991
96977
|
}
|
package/dist/vuetify-labs.esm.js
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.2-
|
2
|
+
* Vuetify v3.8.2-master.2025-04-19
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
6
6
|
|
7
|
-
import { shallowRef, reactive, computed, watchEffect, toRefs, capitalize, unref, Fragment, isVNode, Comment, warn, getCurrentInstance as getCurrentInstance$1, ref, provide, inject as inject$1, defineComponent as defineComponent$1, h, camelize, onBeforeUnmount, watch, readonly, onMounted, useId, onDeactivated, onActivated, onScopeDispose, effectScope, toRaw,
|
7
|
+
import { shallowRef, reactive, computed, watchEffect, toRefs, capitalize, unref, Fragment, isVNode, Comment, warn, getCurrentInstance as getCurrentInstance$1, ref, provide, inject as inject$1, defineComponent as defineComponent$1, h, camelize, onBeforeUnmount, watch, readonly, onMounted, useId, onDeactivated, onActivated, onScopeDispose, effectScope, toRaw, createVNode, TransitionGroup, Transition, mergeProps, isRef, toRef, onBeforeMount, nextTick, withDirectives, resolveDirective, vShow, onUpdated, Text, resolveDynamicComponent, toDisplayString, markRaw, Teleport, cloneVNode, createTextVNode, onUnmounted, onBeforeUpdate, withModifiers, vModelText, resolveComponent, render } from 'vue';
|
8
8
|
|
9
9
|
// Types
|
10
10
|
// eslint-disable-line vue/prefer-import-from-vue
|
@@ -81,7 +81,6 @@ const IN_BROWSER = typeof window !== 'undefined';
|
|
81
81
|
const SUPPORTS_INTERSECTION = IN_BROWSER && 'IntersectionObserver' in window;
|
82
82
|
const SUPPORTS_TOUCH = IN_BROWSER && ('ontouchstart' in window || window.navigator.maxTouchPoints > 0);
|
83
83
|
const SUPPORTS_EYE_DROPPER = IN_BROWSER && 'EyeDropper' in window;
|
84
|
-
const SUPPORTS_MATCH_MEDIA = IN_BROWSER && 'matchMedia' in window && typeof window.matchMedia === 'function';
|
85
84
|
|
86
85
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
87
86
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
@@ -2282,7 +2281,6 @@ const makeThemeProps = propsFactory({
|
|
2282
2281
|
function genDefaults$2() {
|
2283
2282
|
return {
|
2284
2283
|
defaultTheme: 'light',
|
2285
|
-
prefix: 'v-',
|
2286
2284
|
variations: {
|
2287
2285
|
colors: [],
|
2288
2286
|
lighten: 0,
|
@@ -2364,10 +2362,7 @@ function genDefaults$2() {
|
|
2364
2362
|
}
|
2365
2363
|
}
|
2366
2364
|
},
|
2367
|
-
stylesheetId: 'vuetify-theme-stylesheet'
|
2368
|
-
scoped: false,
|
2369
|
-
unimportant: false,
|
2370
|
-
utilities: true
|
2365
|
+
stylesheetId: 'vuetify-theme-stylesheet'
|
2371
2366
|
};
|
2372
2367
|
}
|
2373
2368
|
function parseThemeOptions() {
|
@@ -2390,21 +2385,21 @@ function parseThemeOptions() {
|
|
2390
2385
|
function createCssClass(lines, selector, content, scope) {
|
2391
2386
|
lines.push(`${getScopedSelector(selector, scope)} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
|
2392
2387
|
}
|
2393
|
-
function genCssVariables(theme
|
2388
|
+
function genCssVariables(theme) {
|
2394
2389
|
const lightOverlay = theme.dark ? 2 : 1;
|
2395
2390
|
const darkOverlay = theme.dark ? 1 : 2;
|
2396
2391
|
const variables = [];
|
2397
2392
|
for (const [key, value] of Object.entries(theme.colors)) {
|
2398
2393
|
const rgb = parseColor(value);
|
2399
|
-
variables.push(
|
2394
|
+
variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`);
|
2400
2395
|
if (!key.startsWith('on-')) {
|
2401
|
-
variables.push(
|
2396
|
+
variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`);
|
2402
2397
|
}
|
2403
2398
|
}
|
2404
2399
|
for (const [key, value] of Object.entries(theme.variables)) {
|
2405
2400
|
const color = typeof value === 'string' && value.startsWith('#') ? parseColor(value) : undefined;
|
2406
2401
|
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
2407
|
-
variables.push(
|
2402
|
+
variables.push(`--v-${key}: ${rgb ?? value}`);
|
2408
2403
|
}
|
2409
2404
|
return variables;
|
2410
2405
|
}
|
@@ -2448,8 +2443,7 @@ function getScopedSelector(selector, scope) {
|
|
2448
2443
|
const scopeSelector = `:where(${scope})`;
|
2449
2444
|
return selector === ':root' ? scopeSelector : `${scopeSelector} ${selector}`;
|
2450
2445
|
}
|
2451
|
-
function upsertStyles(
|
2452
|
-
const styleEl = getOrCreateStyleElement(id, cspNonce);
|
2446
|
+
function upsertStyles(styleEl, styles) {
|
2453
2447
|
if (!styleEl) return;
|
2454
2448
|
styleEl.innerHTML = styles;
|
2455
2449
|
}
|
@@ -2469,17 +2463,8 @@ function getOrCreateStyleElement(id, cspNonce) {
|
|
2469
2463
|
// Composables
|
2470
2464
|
function createTheme(options) {
|
2471
2465
|
const parsedOptions = parseThemeOptions(options);
|
2472
|
-
const
|
2466
|
+
const name = shallowRef(parsedOptions.defaultTheme);
|
2473
2467
|
const themes = ref(parsedOptions.themes);
|
2474
|
-
const systemName = shallowRef('light');
|
2475
|
-
const name = computed({
|
2476
|
-
get() {
|
2477
|
-
return _name.value === 'system' ? systemName.value : _name.value;
|
2478
|
-
},
|
2479
|
-
set(val) {
|
2480
|
-
_name.value = val;
|
2481
|
-
}
|
2482
|
-
});
|
2483
2468
|
const computedThemes = computed(() => {
|
2484
2469
|
const acc = {};
|
2485
2470
|
for (const [name, original] of Object.entries(themes.value)) {
|
@@ -2500,49 +2485,28 @@ function createTheme(options) {
|
|
2500
2485
|
const current = computed(() => computedThemes.value[name.value]);
|
2501
2486
|
const styles = computed(() => {
|
2502
2487
|
const lines = [];
|
2503
|
-
const important = parsedOptions.unimportant ? '' : ' !important';
|
2504
|
-
const scoped = parsedOptions.scoped ? parsedOptions.prefix : '';
|
2505
2488
|
if (current.value?.dark) {
|
2506
2489
|
createCssClass(lines, ':root', ['color-scheme: dark'], parsedOptions.scope);
|
2507
2490
|
}
|
2508
|
-
createCssClass(lines, ':root', genCssVariables(current.value
|
2491
|
+
createCssClass(lines, ':root', genCssVariables(current.value), parsedOptions.scope);
|
2509
2492
|
for (const [themeName, theme] of Object.entries(computedThemes.value)) {
|
2510
|
-
createCssClass(lines,
|
2511
|
-
}
|
2512
|
-
|
2513
|
-
|
2514
|
-
|
2515
|
-
|
2516
|
-
|
2517
|
-
|
2518
|
-
|
2519
|
-
}
|
2520
|
-
|
2521
|
-
|
2522
|
-
createCssClass(fgLines, `.${scoped}border-${key}`, [`--${parsedOptions.prefix}border-color: var(--${parsedOptions.prefix}theme-${key})`], parsedOptions.scope);
|
2523
|
-
}
|
2493
|
+
createCssClass(lines, `.v-theme--${themeName}`, [`color-scheme: ${theme.dark ? 'dark' : 'normal'}`, ...genCssVariables(theme)], parsedOptions.scope);
|
2494
|
+
}
|
2495
|
+
const bgLines = [];
|
2496
|
+
const fgLines = [];
|
2497
|
+
const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)));
|
2498
|
+
for (const key of colors) {
|
2499
|
+
if (key.startsWith('on-')) {
|
2500
|
+
createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`], parsedOptions.scope);
|
2501
|
+
} else {
|
2502
|
+
createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`], parsedOptions.scope);
|
2503
|
+
createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`], parsedOptions.scope);
|
2504
|
+
createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`], parsedOptions.scope);
|
2524
2505
|
}
|
2525
|
-
lines.push(...bgLines, ...fgLines);
|
2526
2506
|
}
|
2507
|
+
lines.push(...bgLines, ...fgLines);
|
2527
2508
|
return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
|
2528
2509
|
});
|
2529
|
-
const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `${parsedOptions.prefix}theme--${name.value}`);
|
2530
|
-
const themeNames = computed(() => Object.keys(computedThemes.value));
|
2531
|
-
if (SUPPORTS_MATCH_MEDIA) {
|
2532
|
-
const media = window.matchMedia('(prefers-color-scheme: dark)');
|
2533
|
-
function updateSystemName() {
|
2534
|
-
systemName.value = media.matches ? 'dark' : 'light';
|
2535
|
-
}
|
2536
|
-
updateSystemName();
|
2537
|
-
media.addEventListener('change', updateSystemName, {
|
2538
|
-
passive: true
|
2539
|
-
});
|
2540
|
-
if (getCurrentScope()) {
|
2541
|
-
onScopeDispose(() => {
|
2542
|
-
media.removeEventListener('change', updateSystemName);
|
2543
|
-
});
|
2544
|
-
}
|
2545
|
-
}
|
2546
2510
|
function install(app) {
|
2547
2511
|
if (parsedOptions.isDisabled) return;
|
2548
2512
|
const head = app._context.provides.usehead;
|
@@ -2580,55 +2544,22 @@ function createTheme(options) {
|
|
2580
2544
|
updateStyles();
|
2581
2545
|
}
|
2582
2546
|
function updateStyles() {
|
2583
|
-
upsertStyles(parsedOptions.stylesheetId, parsedOptions.cspNonce, styles.value);
|
2547
|
+
upsertStyles(getOrCreateStyleElement(parsedOptions.stylesheetId, parsedOptions.cspNonce), styles.value);
|
2584
2548
|
}
|
2585
2549
|
}
|
2586
2550
|
}
|
2587
|
-
|
2588
|
-
if (!themeNames.value.includes(themeName)) {
|
2589
|
-
consoleWarn(`Theme "${themeName}" not found on the Vuetify theme instance`);
|
2590
|
-
return;
|
2591
|
-
}
|
2592
|
-
name.value = themeName;
|
2593
|
-
}
|
2594
|
-
function cycle() {
|
2595
|
-
let themeArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : themeNames.value;
|
2596
|
-
const currentIndex = themeArray.indexOf(name.value);
|
2597
|
-
const nextIndex = currentIndex === -1 ? 0 : (currentIndex + 1) % themeArray.length;
|
2598
|
-
change(themeArray[nextIndex]);
|
2599
|
-
}
|
2600
|
-
function toggle() {
|
2601
|
-
let themeArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['light', 'dark'];
|
2602
|
-
cycle(themeArray);
|
2603
|
-
}
|
2604
|
-
const globalName = new Proxy(name, {
|
2605
|
-
get(target, prop) {
|
2606
|
-
return target[prop];
|
2607
|
-
},
|
2608
|
-
set(target, prop, val) {
|
2609
|
-
if (prop === 'value') {
|
2610
|
-
deprecate(`theme.global.name.value = ${val}`, `theme.change('${val}')`);
|
2611
|
-
}
|
2612
|
-
// @ts-expect-error
|
2613
|
-
target[prop] = val;
|
2614
|
-
return true;
|
2615
|
-
}
|
2616
|
-
});
|
2551
|
+
const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`);
|
2617
2552
|
return {
|
2618
2553
|
install,
|
2619
|
-
change,
|
2620
|
-
cycle,
|
2621
|
-
toggle,
|
2622
2554
|
isDisabled: parsedOptions.isDisabled,
|
2623
2555
|
name,
|
2624
2556
|
themes,
|
2625
2557
|
current,
|
2626
2558
|
computedThemes,
|
2627
|
-
prefix: parsedOptions.prefix,
|
2628
2559
|
themeClasses,
|
2629
2560
|
styles,
|
2630
2561
|
global: {
|
2631
|
-
name
|
2562
|
+
name,
|
2632
2563
|
current
|
2633
2564
|
}
|
2634
2565
|
};
|
@@ -2639,7 +2570,7 @@ function provideTheme(props) {
|
|
2639
2570
|
if (!theme) throw new Error('Could not find Vuetify theme injection');
|
2640
2571
|
const name = computed(() => props.theme ?? theme.name.value);
|
2641
2572
|
const current = computed(() => theme.themes.value[name.value]);
|
2642
|
-
const themeClasses = computed(() => theme.isDisabled ? undefined :
|
2573
|
+
const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`);
|
2643
2574
|
const newTheme = {
|
2644
2575
|
...theme,
|
2645
2576
|
name,
|
@@ -12377,12 +12308,7 @@ function useVirtual(props, items) {
|
|
12377
12308
|
}
|
12378
12309
|
function calculateOffset(index) {
|
12379
12310
|
index = clamp(index, 0, items.value.length - 1);
|
12380
|
-
|
12381
|
-
const fraction = index % 1;
|
12382
|
-
const next = whole + 1;
|
12383
|
-
const wholeOffset = offsets[whole] || 0;
|
12384
|
-
const nextOffset = offsets[next] || wholeOffset;
|
12385
|
-
return wholeOffset + (nextOffset - wholeOffset) * fraction;
|
12311
|
+
return offsets[index] || 0;
|
12386
12312
|
}
|
12387
12313
|
function calculateIndex(scrollTop) {
|
12388
12314
|
return binaryClosest(offsets, scrollTop);
|
@@ -29516,10 +29442,7 @@ const makeVIconBtnProps = propsFactory({
|
|
29516
29442
|
hideOverlay: Boolean,
|
29517
29443
|
icon: [String, Function, Object],
|
29518
29444
|
iconColor: String,
|
29519
|
-
iconSize:
|
29520
|
-
type: [Number, String],
|
29521
|
-
default: 'default'
|
29522
|
-
},
|
29445
|
+
iconSize: [Number, String],
|
29523
29446
|
iconSizes: {
|
29524
29447
|
type: Array,
|
29525
29448
|
default: () => [['x-small', 10], ['small', 16], ['default', 24], ['large', 28], ['x-large', 32]]
|
@@ -29604,13 +29527,14 @@ const VIconBtn = genericComponent()({
|
|
29604
29527
|
}
|
29605
29528
|
useRender(() => {
|
29606
29529
|
const icon = isActive.value ? props.activeIcon ?? props.icon : props.icon;
|
29607
|
-
const
|
29608
|
-
const hasNamedSize = btnSizeMap.has(
|
29609
|
-
const btnSize = hasNamedSize ? btnSizeMap.get(
|
29530
|
+
const _btnSize = props.size;
|
29531
|
+
const hasNamedSize = btnSizeMap.has(_btnSize);
|
29532
|
+
const btnSize = hasNamedSize ? btnSizeMap.get(_btnSize) : _btnSize;
|
29610
29533
|
const btnHeight = props.height ?? btnSize;
|
29611
29534
|
const btnWidth = props.width ?? btnSize;
|
29612
|
-
const _iconSize =
|
29613
|
-
const
|
29535
|
+
const _iconSize = props.iconSize;
|
29536
|
+
const hasNamedIconSize = iconSizeMap.has(_iconSize);
|
29537
|
+
const iconSize = !_iconSize ? hasNamedSize ? iconSizeMap.get(_btnSize) : iconSizeMap.get('default') : hasNamedIconSize ? iconSizeMap.get(_iconSize) : _iconSize;
|
29614
29538
|
const iconProps = {
|
29615
29539
|
icon,
|
29616
29540
|
size: iconSize,
|
@@ -31565,7 +31489,7 @@ function createVuetify$1() {
|
|
31565
31489
|
};
|
31566
31490
|
});
|
31567
31491
|
}
|
31568
|
-
const version$1 = "3.8.2-
|
31492
|
+
const version$1 = "3.8.2-master.2025-04-19";
|
31569
31493
|
createVuetify$1.version = version$1;
|
31570
31494
|
|
31571
31495
|
// Vue's inject() can only be used in setup
|
@@ -31863,7 +31787,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
31863
31787
|
|
31864
31788
|
/* eslint-disable local-rules/sort-imports */
|
31865
31789
|
|
31866
|
-
const version = "3.8.2-
|
31790
|
+
const version = "3.8.2-master.2025-04-19";
|
31867
31791
|
|
31868
31792
|
/* eslint-disable local-rules/sort-imports */
|
31869
31793
|
|