vuetify 3.1.6 → 3.1.8
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/dist/json/attributes.json +33 -33
- package/dist/json/importMap.json +4 -4
- package/dist/json/web-types.json +967 -79
- package/dist/vuetify-labs.css +544 -401
- package/dist/vuetify-labs.d.ts +3453 -144
- package/dist/vuetify-labs.esm.js +66 -44
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +66 -44
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +1398 -1255
- package/dist/vuetify.d.ts +1918 -67
- package/dist/vuetify.esm.js +33 -32
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +33 -32
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +209 -210
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +1 -1
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/_variables.scss +1 -1
- package/lib/components/VAlert/index.d.ts +22 -0
- package/lib/components/VApp/index.d.ts +6 -0
- package/lib/components/VAppBar/index.d.ts +36 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +117 -6
- package/lib/components/VAvatar/index.d.ts +6 -0
- package/lib/components/VBadge/index.d.ts +8 -0
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/index.d.ts +24 -0
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/index.d.ts +6 -0
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.ts +28 -4
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.ts +12 -0
- package/lib/components/VBtnGroup/index.d.ts +6 -0
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.ts +6 -0
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/index.d.ts +60 -0
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +60 -0
- package/lib/components/VCheckbox/index.d.ts +38 -0
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.ts +12 -0
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.ts +6 -0
- package/lib/components/VCode/index.d.ts +6 -0
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +117 -6
- package/lib/components/VCounter/index.d.ts +24 -0
- package/lib/components/VDefaultsProvider/index.d.ts +6 -0
- package/lib/components/VDialog/index.d.ts +64 -1
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/index.d.ts +6 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.ts +49 -12
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/index.d.ts +20 -6
- package/lib/components/VFileInput/VFileInput.mjs +1 -0
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +43 -1
- package/lib/components/VFooter/index.d.ts +6 -0
- package/lib/components/VForm/index.d.ts +6 -0
- package/lib/components/VGrid/index.d.ts +24 -0
- package/lib/components/VHover/index.d.ts +12 -0
- package/lib/components/VIcon/index.d.ts +12 -0
- package/lib/components/VImg/index.d.ts +12 -0
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +12 -0
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.ts +12 -0
- package/lib/components/VKbd/index.d.ts +6 -0
- package/lib/components/VLabel/index.d.ts +6 -0
- package/lib/components/VLayout/index.d.ts +12 -0
- package/lib/components/VLazy/index.d.ts +6 -0
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +77 -6
- package/lib/components/VLocaleProvider/index.d.ts +6 -0
- package/lib/components/VMain/index.d.ts +6 -0
- package/lib/components/VMenu/index.d.ts +64 -1
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/index.d.ts +24 -0
- package/lib/components/VNavigationDrawer/index.d.ts +12 -0
- package/lib/components/VNoSsr/index.d.ts +6 -0
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +18 -0
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +14 -0
- package/lib/components/VParallax/index.d.ts +12 -0
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/index.d.ts +6 -0
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/index.d.ts +12 -0
- package/lib/components/VRadio/index.d.ts +16 -0
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.ts +22 -0
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +16 -0
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/index.d.ts +8 -0
- package/lib/components/VResponsive/index.d.ts +8 -0
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +183 -6
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.ts +14 -6
- package/lib/components/VSelectionControlGroup/index.d.ts +6 -0
- package/lib/components/VSheet/index.d.ts +6 -0
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.ts +26 -0
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.ts +16 -0
- package/lib/components/VSnackbar/VSnackbar.css +0 -2
- package/lib/components/VSnackbar/VSnackbar.mjs +6 -8
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.sass +0 -2
- package/lib/components/VSnackbar/index.d.ts +44 -1
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.ts +22 -0
- package/lib/components/VSystemBar/index.d.ts +6 -0
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/index.d.ts +12 -0
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/index.d.ts +12 -0
- package/lib/components/VTextField/VTextField.mjs +1 -0
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +54 -6
- package/lib/components/VTextarea/VTextarea.mjs +1 -0
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +39 -1
- package/lib/components/VThemeProvider/index.d.ts +6 -0
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.ts +16 -0
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VToolbar/index.d.ts +30 -0
- package/lib/components/VTooltip/index.d.ts +46 -1
- package/lib/components/VValidation/index.d.ts +6 -0
- package/lib/components/VWindow/index.d.ts +34 -0
- package/lib/components/index.d.ts +1916 -65
- package/lib/components/transitions/createTransition.mjs +1 -1
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- package/lib/components/transitions/index.d.ts +96 -0
- package/lib/composables/display.mjs +13 -10
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/loader.mjs.map +1 -1
- package/lib/composables/theme.mjs +7 -10
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/variant.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/labs/VDataTable/VDataTable.mjs +4 -2
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +4 -6
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +4 -2
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/options.mjs +7 -1
- package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.ts +1503 -48
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs +15 -2
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/labs/VVirtualScroll/index.d.ts +9 -6
- package/lib/labs/components.d.ts +1512 -54
- package/lib/locale/index.mjs +1 -1
- package/lib/locale/index.mjs.map +1 -1
- package/lib/styles/elements/_global.sass +0 -4
- package/lib/styles/generic/_index.scss +0 -1
- package/lib/styles/generic/_transitions.scss +111 -9
- package/lib/styles/main.css +312 -167
- package/lib/styles/tools/_sheet.sass +3 -6
- package/lib/styles/utilities/_display.sass +6 -5
- package/lib/styles/utilities/_elevation.scss +13 -0
- package/lib/styles/utilities/_index.sass +3 -2
- package/lib/styles/utilities/_screenreaders.sass +13 -11
- package/lib/util/defineComponent.mjs.map +1 -1
- package/package.json +18 -4
- package/lib/styles/generic/_elevation.scss +0 -10
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { h, Transition, TransitionGroup } from 'vue';
|
|
3
3
|
import { genericComponent } from "../../util/index.mjs"; // Types
|
|
4
4
|
export function createCssTransition(name) {
|
|
5
|
-
let origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '
|
|
5
|
+
let origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'center center';
|
|
6
6
|
let mode = arguments.length > 2 ? arguments[2] : undefined;
|
|
7
7
|
return genericComponent()({
|
|
8
8
|
name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTransition.mjs","names":["h","Transition","TransitionGroup","genericComponent","createCssTransition","name","origin","mode","props","group","Boolean","hideOnLeave","leaveAbsolute","type","String","default","setup","slots","tag","onBeforeEnter","el","style","transformOrigin","onLeave","offsetTop","offsetLeft","offsetWidth","offsetHeight","_transitionInitialStyles","position","top","left","width","height","setProperty","onAfterLeave","createJavascriptTransition","functions"],"sources":["../../../src/components/transitions/createTransition.ts"],"sourcesContent":["// Utilities\nimport { h, Transition, TransitionGroup } from 'vue'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { FunctionalComponent, PropType } from 'vue'\n\nexport function createCssTransition (\n name: string,\n origin = '
|
|
1
|
+
{"version":3,"file":"createTransition.mjs","names":["h","Transition","TransitionGroup","genericComponent","createCssTransition","name","origin","mode","props","group","Boolean","hideOnLeave","leaveAbsolute","type","String","default","setup","slots","tag","onBeforeEnter","el","style","transformOrigin","onLeave","offsetTop","offsetLeft","offsetWidth","offsetHeight","_transitionInitialStyles","position","top","left","width","height","setProperty","onAfterLeave","createJavascriptTransition","functions"],"sources":["../../../src/components/transitions/createTransition.ts"],"sourcesContent":["// Utilities\nimport { h, Transition, TransitionGroup } from 'vue'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { FunctionalComponent, PropType } from 'vue'\n\nexport function createCssTransition (\n name: string,\n origin = 'center center',\n mode?: string\n) {\n return genericComponent()({\n name,\n\n props: {\n group: Boolean,\n hideOnLeave: Boolean,\n leaveAbsolute: Boolean,\n mode: {\n type: String,\n default: mode,\n },\n origin: {\n type: String,\n default: origin,\n },\n },\n\n setup (props, { slots }) {\n return () => {\n const tag = props.group ? TransitionGroup : Transition\n\n return h(tag as FunctionalComponent, {\n name,\n mode: props.mode,\n onBeforeEnter (el: HTMLElement) {\n el.style.transformOrigin = props.origin\n },\n onLeave (el: HTMLElement) {\n if (props.leaveAbsolute) {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = `${offsetTop}px`\n el.style.left = `${offsetLeft}px`\n el.style.width = `${offsetWidth}px`\n el.style.height = `${offsetHeight}px`\n }\n\n if (props.hideOnLeave) {\n el.style.setProperty('display', 'none', 'important')\n }\n },\n onAfterLeave (el: HTMLElement) {\n if (props.leaveAbsolute && el?._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n },\n }, slots.default)\n }\n },\n })\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record<string, any>,\n mode = 'in-out'\n) {\n return genericComponent()({\n name,\n\n props: {\n mode: {\n type: String as PropType<'in-out' | 'out-in' | 'default'>,\n default: mode,\n },\n },\n\n setup (props, { slots }) {\n return () => {\n return h(Transition, {\n name,\n // mode: props.mode, // TODO: vuejs/vue-next#3104\n ...functions,\n }, slots.default)\n }\n },\n })\n}\n"],"mappings":"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"}
|
|
@@ -6,6 +6,9 @@ declare const VDialogTransition: vue.DefineComponent<{} & {
|
|
|
6
6
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
7
7
|
default?: (() => vue.VNodeChild) | undefined;
|
|
8
8
|
};
|
|
9
|
+
$slots?: {
|
|
10
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
11
|
+
} | undefined;
|
|
9
12
|
'v-slots'?: {
|
|
10
13
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
11
14
|
} | undefined;
|
|
@@ -17,6 +20,9 @@ declare const VDialogTransition: vue.DefineComponent<{} & {
|
|
|
17
20
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
18
21
|
default?: (() => vue.VNodeChild) | undefined;
|
|
19
22
|
};
|
|
23
|
+
$slots?: {
|
|
24
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
25
|
+
} | undefined;
|
|
20
26
|
'v-slots'?: {
|
|
21
27
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
22
28
|
} | undefined;
|
|
@@ -35,6 +41,9 @@ declare const VFabTransition: vue.DefineComponent<{
|
|
|
35
41
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
36
42
|
default?: (() => vue.VNodeChild) | undefined;
|
|
37
43
|
};
|
|
44
|
+
$slots?: {
|
|
45
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
46
|
+
} | undefined;
|
|
38
47
|
'v-slots'?: {
|
|
39
48
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
40
49
|
} | undefined;
|
|
@@ -52,6 +61,9 @@ declare const VFabTransition: vue.DefineComponent<{
|
|
|
52
61
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
53
62
|
default?: (() => vue.VNodeChild) | undefined;
|
|
54
63
|
};
|
|
64
|
+
$slots?: {
|
|
65
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
66
|
+
} | undefined;
|
|
55
67
|
'v-slots'?: {
|
|
56
68
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
57
69
|
} | undefined;
|
|
@@ -75,6 +87,9 @@ declare const VDialogBottomTransition: vue.DefineComponent<{
|
|
|
75
87
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
76
88
|
default?: (() => vue.VNodeChild) | undefined;
|
|
77
89
|
};
|
|
90
|
+
$slots?: {
|
|
91
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
92
|
+
} | undefined;
|
|
78
93
|
'v-slots'?: {
|
|
79
94
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
80
95
|
} | undefined;
|
|
@@ -92,6 +107,9 @@ declare const VDialogBottomTransition: vue.DefineComponent<{
|
|
|
92
107
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
93
108
|
default?: (() => vue.VNodeChild) | undefined;
|
|
94
109
|
};
|
|
110
|
+
$slots?: {
|
|
111
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
112
|
+
} | undefined;
|
|
95
113
|
'v-slots'?: {
|
|
96
114
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
97
115
|
} | undefined;
|
|
@@ -115,6 +133,9 @@ declare const VDialogTopTransition: vue.DefineComponent<{
|
|
|
115
133
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
116
134
|
default?: (() => vue.VNodeChild) | undefined;
|
|
117
135
|
};
|
|
136
|
+
$slots?: {
|
|
137
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
138
|
+
} | undefined;
|
|
118
139
|
'v-slots'?: {
|
|
119
140
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
120
141
|
} | undefined;
|
|
@@ -132,6 +153,9 @@ declare const VDialogTopTransition: vue.DefineComponent<{
|
|
|
132
153
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
133
154
|
default?: (() => vue.VNodeChild) | undefined;
|
|
134
155
|
};
|
|
156
|
+
$slots?: {
|
|
157
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
158
|
+
} | undefined;
|
|
135
159
|
'v-slots'?: {
|
|
136
160
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
137
161
|
} | undefined;
|
|
@@ -155,6 +179,9 @@ declare const VFadeTransition: vue.DefineComponent<{
|
|
|
155
179
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
156
180
|
default?: (() => vue.VNodeChild) | undefined;
|
|
157
181
|
};
|
|
182
|
+
$slots?: {
|
|
183
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
184
|
+
} | undefined;
|
|
158
185
|
'v-slots'?: {
|
|
159
186
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
160
187
|
} | undefined;
|
|
@@ -172,6 +199,9 @@ declare const VFadeTransition: vue.DefineComponent<{
|
|
|
172
199
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
173
200
|
default?: (() => vue.VNodeChild) | undefined;
|
|
174
201
|
};
|
|
202
|
+
$slots?: {
|
|
203
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
204
|
+
} | undefined;
|
|
175
205
|
'v-slots'?: {
|
|
176
206
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
177
207
|
} | undefined;
|
|
@@ -195,6 +225,9 @@ declare const VScaleTransition: vue.DefineComponent<{
|
|
|
195
225
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
196
226
|
default?: (() => vue.VNodeChild) | undefined;
|
|
197
227
|
};
|
|
228
|
+
$slots?: {
|
|
229
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
230
|
+
} | undefined;
|
|
198
231
|
'v-slots'?: {
|
|
199
232
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
200
233
|
} | undefined;
|
|
@@ -212,6 +245,9 @@ declare const VScaleTransition: vue.DefineComponent<{
|
|
|
212
245
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
213
246
|
default?: (() => vue.VNodeChild) | undefined;
|
|
214
247
|
};
|
|
248
|
+
$slots?: {
|
|
249
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
250
|
+
} | undefined;
|
|
215
251
|
'v-slots'?: {
|
|
216
252
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
217
253
|
} | undefined;
|
|
@@ -235,6 +271,9 @@ declare const VScrollXTransition: vue.DefineComponent<{
|
|
|
235
271
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
236
272
|
default?: (() => vue.VNodeChild) | undefined;
|
|
237
273
|
};
|
|
274
|
+
$slots?: {
|
|
275
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
276
|
+
} | undefined;
|
|
238
277
|
'v-slots'?: {
|
|
239
278
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
240
279
|
} | undefined;
|
|
@@ -252,6 +291,9 @@ declare const VScrollXTransition: vue.DefineComponent<{
|
|
|
252
291
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
253
292
|
default?: (() => vue.VNodeChild) | undefined;
|
|
254
293
|
};
|
|
294
|
+
$slots?: {
|
|
295
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
296
|
+
} | undefined;
|
|
255
297
|
'v-slots'?: {
|
|
256
298
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
257
299
|
} | undefined;
|
|
@@ -275,6 +317,9 @@ declare const VScrollXReverseTransition: vue.DefineComponent<{
|
|
|
275
317
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
276
318
|
default?: (() => vue.VNodeChild) | undefined;
|
|
277
319
|
};
|
|
320
|
+
$slots?: {
|
|
321
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
322
|
+
} | undefined;
|
|
278
323
|
'v-slots'?: {
|
|
279
324
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
280
325
|
} | undefined;
|
|
@@ -292,6 +337,9 @@ declare const VScrollXReverseTransition: vue.DefineComponent<{
|
|
|
292
337
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
293
338
|
default?: (() => vue.VNodeChild) | undefined;
|
|
294
339
|
};
|
|
340
|
+
$slots?: {
|
|
341
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
342
|
+
} | undefined;
|
|
295
343
|
'v-slots'?: {
|
|
296
344
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
297
345
|
} | undefined;
|
|
@@ -315,6 +363,9 @@ declare const VScrollYTransition: vue.DefineComponent<{
|
|
|
315
363
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
316
364
|
default?: (() => vue.VNodeChild) | undefined;
|
|
317
365
|
};
|
|
366
|
+
$slots?: {
|
|
367
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
368
|
+
} | undefined;
|
|
318
369
|
'v-slots'?: {
|
|
319
370
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
320
371
|
} | undefined;
|
|
@@ -332,6 +383,9 @@ declare const VScrollYTransition: vue.DefineComponent<{
|
|
|
332
383
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
333
384
|
default?: (() => vue.VNodeChild) | undefined;
|
|
334
385
|
};
|
|
386
|
+
$slots?: {
|
|
387
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
388
|
+
} | undefined;
|
|
335
389
|
'v-slots'?: {
|
|
336
390
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
337
391
|
} | undefined;
|
|
@@ -355,6 +409,9 @@ declare const VScrollYReverseTransition: vue.DefineComponent<{
|
|
|
355
409
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
356
410
|
default?: (() => vue.VNodeChild) | undefined;
|
|
357
411
|
};
|
|
412
|
+
$slots?: {
|
|
413
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
414
|
+
} | undefined;
|
|
358
415
|
'v-slots'?: {
|
|
359
416
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
360
417
|
} | undefined;
|
|
@@ -372,6 +429,9 @@ declare const VScrollYReverseTransition: vue.DefineComponent<{
|
|
|
372
429
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
373
430
|
default?: (() => vue.VNodeChild) | undefined;
|
|
374
431
|
};
|
|
432
|
+
$slots?: {
|
|
433
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
434
|
+
} | undefined;
|
|
375
435
|
'v-slots'?: {
|
|
376
436
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
377
437
|
} | undefined;
|
|
@@ -395,6 +455,9 @@ declare const VSlideXTransition: vue.DefineComponent<{
|
|
|
395
455
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
396
456
|
default?: (() => vue.VNodeChild) | undefined;
|
|
397
457
|
};
|
|
458
|
+
$slots?: {
|
|
459
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
460
|
+
} | undefined;
|
|
398
461
|
'v-slots'?: {
|
|
399
462
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
400
463
|
} | undefined;
|
|
@@ -412,6 +475,9 @@ declare const VSlideXTransition: vue.DefineComponent<{
|
|
|
412
475
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
413
476
|
default?: (() => vue.VNodeChild) | undefined;
|
|
414
477
|
};
|
|
478
|
+
$slots?: {
|
|
479
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
480
|
+
} | undefined;
|
|
415
481
|
'v-slots'?: {
|
|
416
482
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
417
483
|
} | undefined;
|
|
@@ -435,6 +501,9 @@ declare const VSlideXReverseTransition: vue.DefineComponent<{
|
|
|
435
501
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
436
502
|
default?: (() => vue.VNodeChild) | undefined;
|
|
437
503
|
};
|
|
504
|
+
$slots?: {
|
|
505
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
506
|
+
} | undefined;
|
|
438
507
|
'v-slots'?: {
|
|
439
508
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
440
509
|
} | undefined;
|
|
@@ -452,6 +521,9 @@ declare const VSlideXReverseTransition: vue.DefineComponent<{
|
|
|
452
521
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
453
522
|
default?: (() => vue.VNodeChild) | undefined;
|
|
454
523
|
};
|
|
524
|
+
$slots?: {
|
|
525
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
526
|
+
} | undefined;
|
|
455
527
|
'v-slots'?: {
|
|
456
528
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
457
529
|
} | undefined;
|
|
@@ -475,6 +547,9 @@ declare const VSlideYTransition: vue.DefineComponent<{
|
|
|
475
547
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
476
548
|
default?: (() => vue.VNodeChild) | undefined;
|
|
477
549
|
};
|
|
550
|
+
$slots?: {
|
|
551
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
552
|
+
} | undefined;
|
|
478
553
|
'v-slots'?: {
|
|
479
554
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
480
555
|
} | undefined;
|
|
@@ -492,6 +567,9 @@ declare const VSlideYTransition: vue.DefineComponent<{
|
|
|
492
567
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
493
568
|
default?: (() => vue.VNodeChild) | undefined;
|
|
494
569
|
};
|
|
570
|
+
$slots?: {
|
|
571
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
572
|
+
} | undefined;
|
|
495
573
|
'v-slots'?: {
|
|
496
574
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
497
575
|
} | undefined;
|
|
@@ -515,6 +593,9 @@ declare const VSlideYReverseTransition: vue.DefineComponent<{
|
|
|
515
593
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
516
594
|
default?: (() => vue.VNodeChild) | undefined;
|
|
517
595
|
};
|
|
596
|
+
$slots?: {
|
|
597
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
598
|
+
} | undefined;
|
|
518
599
|
'v-slots'?: {
|
|
519
600
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
520
601
|
} | undefined;
|
|
@@ -532,6 +613,9 @@ declare const VSlideYReverseTransition: vue.DefineComponent<{
|
|
|
532
613
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
533
614
|
default?: (() => vue.VNodeChild) | undefined;
|
|
534
615
|
};
|
|
616
|
+
$slots?: {
|
|
617
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
618
|
+
} | undefined;
|
|
535
619
|
'v-slots'?: {
|
|
536
620
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
537
621
|
} | undefined;
|
|
@@ -551,6 +635,9 @@ declare const VExpandTransition: vue.DefineComponent<{
|
|
|
551
635
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
552
636
|
default?: (() => vue.VNodeChild) | undefined;
|
|
553
637
|
};
|
|
638
|
+
$slots?: {
|
|
639
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
640
|
+
} | undefined;
|
|
554
641
|
'v-slots'?: {
|
|
555
642
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
556
643
|
} | undefined;
|
|
@@ -564,6 +651,9 @@ declare const VExpandTransition: vue.DefineComponent<{
|
|
|
564
651
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
565
652
|
default?: (() => vue.VNodeChild) | undefined;
|
|
566
653
|
};
|
|
654
|
+
$slots?: {
|
|
655
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
656
|
+
} | undefined;
|
|
567
657
|
'v-slots'?: {
|
|
568
658
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
569
659
|
} | undefined;
|
|
@@ -579,6 +669,9 @@ declare const VExpandXTransition: vue.DefineComponent<{
|
|
|
579
669
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
580
670
|
default?: (() => vue.VNodeChild) | undefined;
|
|
581
671
|
};
|
|
672
|
+
$slots?: {
|
|
673
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
674
|
+
} | undefined;
|
|
582
675
|
'v-slots'?: {
|
|
583
676
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
584
677
|
} | undefined;
|
|
@@ -592,6 +685,9 @@ declare const VExpandXTransition: vue.DefineComponent<{
|
|
|
592
685
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
593
686
|
default?: (() => vue.VNodeChild) | undefined;
|
|
594
687
|
};
|
|
688
|
+
$slots?: {
|
|
689
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
690
|
+
} | undefined;
|
|
595
691
|
'v-slots'?: {
|
|
596
692
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
597
693
|
} | undefined;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Utilities
|
|
2
|
-
import { inject, reactive, ref, toRefs, watchEffect } from 'vue';
|
|
2
|
+
import { inject, reactive, ref, shallowRef, toRefs, watchEffect } from 'vue';
|
|
3
3
|
import { mergeDeep } from "../util/index.mjs"; // Globals
|
|
4
4
|
import { IN_BROWSER, SUPPORTS_TOUCH } from "../util/globals.mjs"; // Types
|
|
5
5
|
export const DisplaySymbol = Symbol.for('vuetify:display');
|
|
@@ -24,8 +24,8 @@ function getClientWidth(isHydrate) {
|
|
|
24
24
|
function getClientHeight(isHydrate) {
|
|
25
25
|
return IN_BROWSER && !isHydrate ? window.innerHeight : 0;
|
|
26
26
|
}
|
|
27
|
-
function getPlatform() {
|
|
28
|
-
const userAgent = IN_BROWSER ? window.navigator.userAgent : 'ssr';
|
|
27
|
+
function getPlatform(isHydrate) {
|
|
28
|
+
const userAgent = IN_BROWSER && !isHydrate ? window.navigator.userAgent : 'ssr';
|
|
29
29
|
function match(regexp) {
|
|
30
30
|
return Boolean(userAgent.match(regexp));
|
|
31
31
|
}
|
|
@@ -40,7 +40,6 @@ function getPlatform() {
|
|
|
40
40
|
const win = match(/win/i);
|
|
41
41
|
const mac = match(/mac/i);
|
|
42
42
|
const linux = match(/linux/i);
|
|
43
|
-
const ssr = match(/ssr/i);
|
|
44
43
|
return {
|
|
45
44
|
android,
|
|
46
45
|
ios,
|
|
@@ -54,7 +53,7 @@ function getPlatform() {
|
|
|
54
53
|
mac,
|
|
55
54
|
linux,
|
|
56
55
|
touch: SUPPORTS_TOUCH,
|
|
57
|
-
ssr
|
|
56
|
+
ssr: userAgent === 'ssr'
|
|
58
57
|
};
|
|
59
58
|
}
|
|
60
59
|
export function createDisplay(options, ssr) {
|
|
@@ -63,13 +62,17 @@ export function createDisplay(options, ssr) {
|
|
|
63
62
|
mobileBreakpoint
|
|
64
63
|
} = parseDisplayOptions(options);
|
|
65
64
|
const height = ref(getClientHeight(ssr));
|
|
66
|
-
const platform = getPlatform();
|
|
65
|
+
const platform = shallowRef(getPlatform(ssr));
|
|
67
66
|
const state = reactive({});
|
|
68
67
|
const width = ref(getClientWidth(ssr));
|
|
69
|
-
function
|
|
68
|
+
function updateSize() {
|
|
70
69
|
height.value = getClientHeight();
|
|
71
70
|
width.value = getClientWidth();
|
|
72
71
|
}
|
|
72
|
+
function update() {
|
|
73
|
+
updateSize();
|
|
74
|
+
platform.value = getPlatform();
|
|
75
|
+
}
|
|
73
76
|
|
|
74
77
|
// eslint-disable-next-line max-statements
|
|
75
78
|
watchEffect(() => {
|
|
@@ -81,7 +84,7 @@ export function createDisplay(options, ssr) {
|
|
|
81
84
|
const xxl = width.value >= thresholds.xxl;
|
|
82
85
|
const name = xs ? 'xs' : sm ? 'sm' : md ? 'md' : lg ? 'lg' : xl ? 'xl' : 'xxl';
|
|
83
86
|
const breakpointValue = typeof mobileBreakpoint === 'number' ? mobileBreakpoint : thresholds[mobileBreakpoint];
|
|
84
|
-
const mobile =
|
|
87
|
+
const mobile = width.value < breakpointValue;
|
|
85
88
|
state.xs = xs;
|
|
86
89
|
state.sm = sm;
|
|
87
90
|
state.md = md;
|
|
@@ -101,11 +104,11 @@ export function createDisplay(options, ssr) {
|
|
|
101
104
|
state.width = width.value;
|
|
102
105
|
state.mobile = mobile;
|
|
103
106
|
state.mobileBreakpoint = mobileBreakpoint;
|
|
104
|
-
state.platform = platform;
|
|
107
|
+
state.platform = platform.value;
|
|
105
108
|
state.thresholds = thresholds;
|
|
106
109
|
});
|
|
107
110
|
if (IN_BROWSER) {
|
|
108
|
-
window.addEventListener('resize',
|
|
111
|
+
window.addEventListener('resize', updateSize, {
|
|
109
112
|
passive: true
|
|
110
113
|
});
|
|
111
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display.mjs","names":["inject","reactive","ref","toRefs","watchEffect","mergeDeep","IN_BROWSER","SUPPORTS_TOUCH","DisplaySymbol","Symbol","for","defaultDisplayOptions","mobileBreakpoint","thresholds","xs","sm","md","lg","xl","xxl","parseDisplayOptions","options","getClientWidth","isHydrate","window","innerWidth","getClientHeight","innerHeight","getPlatform","userAgent","navigator","match","regexp","Boolean","android","ios","cordova","electron","chrome","edge","firefox","opera","win","mac","linux","ssr","touch","createDisplay","height","platform","state","width","update","value","name","breakpointValue","mobile","smAndUp","mdAndUp","lgAndUp","xlAndUp","smAndDown","mdAndDown","lgAndDown","xlAndDown","addEventListener","passive","useDisplay","display","Error"],"sources":["../../src/composables/display.ts"],"sourcesContent":["// Utilities\nimport { inject, reactive, ref, toRefs, watchEffect } from 'vue'\nimport { mergeDeep } from '@/util'\n\n// Globals\nimport { IN_BROWSER, SUPPORTS_TOUCH } from '@/util/globals'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nexport type DisplayBreakpoint = keyof DisplayThresholds\n\nexport interface DisplayThresholds {\n xs: number\n sm: number\n md: number\n lg: number\n xl: number\n xxl: number\n}\n\nexport interface DisplayOptions {\n mobileBreakpoint?: number | DisplayBreakpoint\n thresholds?: Partial<DisplayThresholds>\n}\n\nexport interface InternalDisplayOptions {\n mobileBreakpoint: number | DisplayBreakpoint\n thresholds: DisplayThresholds\n}\n\nexport interface DisplayPlatform {\n android: boolean\n ios: boolean\n cordova: boolean\n electron: boolean\n chrome: boolean\n edge: boolean\n firefox: boolean\n opera: boolean\n win: boolean\n mac: boolean\n linux: boolean\n touch: boolean\n ssr: boolean\n}\n\nexport interface DisplayInstance {\n xs: Ref<boolean>\n sm: Ref<boolean>\n md: Ref<boolean>\n lg: Ref<boolean>\n xl: Ref<boolean>\n xxl: Ref<boolean>\n smAndUp: Ref<boolean>\n mdAndUp: Ref<boolean>\n lgAndUp: Ref<boolean>\n xlAndUp: Ref<boolean>\n smAndDown: Ref<boolean>\n mdAndDown: Ref<boolean>\n lgAndDown: Ref<boolean>\n xlAndDown: Ref<boolean>\n name: Ref<DisplayBreakpoint>\n height: Ref<number>\n width: Ref<number>\n mobile: Ref<boolean>\n mobileBreakpoint: Ref<number | DisplayBreakpoint>\n platform: Ref<DisplayPlatform>\n thresholds: Ref<DisplayThresholds>\n\n /** @internal */\n ssr: boolean\n\n update (): void\n}\n\nexport const DisplaySymbol: InjectionKey<DisplayInstance> = Symbol.for('vuetify:display')\n\nconst defaultDisplayOptions: DisplayOptions = {\n mobileBreakpoint: 'lg',\n thresholds: {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n xxl: 2560,\n },\n}\n\nconst parseDisplayOptions = (options: DisplayOptions = defaultDisplayOptions) => {\n return mergeDeep(defaultDisplayOptions, options) as InternalDisplayOptions\n}\n\nfunction getClientWidth (isHydrate?: boolean) {\n return IN_BROWSER && !isHydrate\n ? window.innerWidth\n : 0\n}\n\nfunction getClientHeight (isHydrate?: boolean) {\n return IN_BROWSER && !isHydrate\n ? window.innerHeight\n : 0\n}\n\nfunction getPlatform (): DisplayPlatform {\n const userAgent = IN_BROWSER ? window.navigator.userAgent : 'ssr'\n\n function match (regexp: RegExp) {\n return Boolean(userAgent.match(regexp))\n }\n\n const android = match(/android/i)\n const ios = match(/iphone|ipad|ipod/i)\n const cordova = match(/cordova/i)\n const electron = match(/electron/i)\n const chrome = match(/chrome/i)\n const edge = match(/edge/i)\n const firefox = match(/firefox/i)\n const opera = match(/opera/i)\n const win = match(/win/i)\n const mac = match(/mac/i)\n const linux = match(/linux/i)\n const ssr = match(/ssr/i)\n\n return {\n android,\n ios,\n cordova,\n electron,\n chrome,\n edge,\n firefox,\n opera,\n win,\n mac,\n linux,\n touch: SUPPORTS_TOUCH,\n ssr,\n }\n}\n\nexport function createDisplay (options?: DisplayOptions, ssr?: boolean): DisplayInstance {\n const { thresholds, mobileBreakpoint } = parseDisplayOptions(options)\n\n const height = ref(getClientHeight(ssr))\n const platform = getPlatform()\n const state = reactive({} as DisplayInstance)\n const width = ref(getClientWidth(ssr))\n\n function update () {\n height.value = getClientHeight()\n width.value = getClientWidth()\n }\n\n // eslint-disable-next-line max-statements\n watchEffect(() => {\n const xs = width.value < thresholds.sm\n const sm = width.value < thresholds.md && !xs\n const md = width.value < thresholds.lg && !(sm || xs)\n const lg = width.value < thresholds.xl && !(md || sm || xs)\n const xl = width.value < thresholds.xxl && !(lg || md || sm || xs)\n const xxl = width.value >= thresholds.xxl\n const name =\n xs ? 'xs'\n : sm ? 'sm'\n : md ? 'md'\n : lg ? 'lg'\n : xl ? 'xl'\n : 'xxl'\n const breakpointValue = typeof mobileBreakpoint === 'number' ? mobileBreakpoint : thresholds[mobileBreakpoint]\n const mobile = !platform.ssr\n ? width.value < breakpointValue\n : platform.android || platform.ios || platform.opera\n\n state.xs = xs\n state.sm = sm\n state.md = md\n state.lg = lg\n state.xl = xl\n state.xxl = xxl\n state.smAndUp = !xs\n state.mdAndUp = !(xs || sm)\n state.lgAndUp = !(xs || sm || md)\n state.xlAndUp = !(xs || sm || md || lg)\n state.smAndDown = !(md || lg || xl || xxl)\n state.mdAndDown = !(lg || xl || xxl)\n state.lgAndDown = !(xl || xxl)\n state.xlAndDown = !xxl\n state.name = name\n state.height = height.value\n state.width = width.value\n state.mobile = mobile\n state.mobileBreakpoint = mobileBreakpoint\n state.platform = platform\n state.thresholds = thresholds\n })\n\n if (IN_BROWSER) {\n window.addEventListener('resize', update, { passive: true })\n }\n\n return { ...toRefs(state), update, ssr: !!ssr }\n}\n\nexport function useDisplay () {\n const display = inject(DisplaySymbol)\n\n if (!display) throw new Error('Could not find Vuetify display injection')\n\n return display\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"display.mjs","names":["inject","reactive","ref","shallowRef","toRefs","watchEffect","mergeDeep","IN_BROWSER","SUPPORTS_TOUCH","DisplaySymbol","Symbol","for","defaultDisplayOptions","mobileBreakpoint","thresholds","xs","sm","md","lg","xl","xxl","parseDisplayOptions","options","getClientWidth","isHydrate","window","innerWidth","getClientHeight","innerHeight","getPlatform","userAgent","navigator","match","regexp","Boolean","android","ios","cordova","electron","chrome","edge","firefox","opera","win","mac","linux","touch","ssr","createDisplay","height","platform","state","width","updateSize","value","update","name","breakpointValue","mobile","smAndUp","mdAndUp","lgAndUp","xlAndUp","smAndDown","mdAndDown","lgAndDown","xlAndDown","addEventListener","passive","useDisplay","display","Error"],"sources":["../../src/composables/display.ts"],"sourcesContent":["// Utilities\nimport { inject, reactive, ref, shallowRef, toRefs, watchEffect } from 'vue'\nimport { mergeDeep } from '@/util'\n\n// Globals\nimport { IN_BROWSER, SUPPORTS_TOUCH } from '@/util/globals'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nexport type DisplayBreakpoint = keyof DisplayThresholds\n\nexport interface DisplayThresholds {\n xs: number\n sm: number\n md: number\n lg: number\n xl: number\n xxl: number\n}\n\nexport interface DisplayOptions {\n mobileBreakpoint?: number | DisplayBreakpoint\n thresholds?: Partial<DisplayThresholds>\n}\n\nexport interface InternalDisplayOptions {\n mobileBreakpoint: number | DisplayBreakpoint\n thresholds: DisplayThresholds\n}\n\nexport interface DisplayPlatform {\n android: boolean\n ios: boolean\n cordova: boolean\n electron: boolean\n chrome: boolean\n edge: boolean\n firefox: boolean\n opera: boolean\n win: boolean\n mac: boolean\n linux: boolean\n touch: boolean\n ssr: boolean\n}\n\nexport interface DisplayInstance {\n xs: Ref<boolean>\n sm: Ref<boolean>\n md: Ref<boolean>\n lg: Ref<boolean>\n xl: Ref<boolean>\n xxl: Ref<boolean>\n smAndUp: Ref<boolean>\n mdAndUp: Ref<boolean>\n lgAndUp: Ref<boolean>\n xlAndUp: Ref<boolean>\n smAndDown: Ref<boolean>\n mdAndDown: Ref<boolean>\n lgAndDown: Ref<boolean>\n xlAndDown: Ref<boolean>\n name: Ref<DisplayBreakpoint>\n height: Ref<number>\n width: Ref<number>\n mobile: Ref<boolean>\n mobileBreakpoint: Ref<number | DisplayBreakpoint>\n platform: Ref<DisplayPlatform>\n thresholds: Ref<DisplayThresholds>\n\n /** @internal */\n ssr: boolean\n\n update (): void\n}\n\nexport const DisplaySymbol: InjectionKey<DisplayInstance> = Symbol.for('vuetify:display')\n\nconst defaultDisplayOptions: DisplayOptions = {\n mobileBreakpoint: 'lg',\n thresholds: {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n xxl: 2560,\n },\n}\n\nconst parseDisplayOptions = (options: DisplayOptions = defaultDisplayOptions) => {\n return mergeDeep(defaultDisplayOptions, options) as InternalDisplayOptions\n}\n\nfunction getClientWidth (isHydrate?: boolean) {\n return IN_BROWSER && !isHydrate\n ? window.innerWidth\n : 0\n}\n\nfunction getClientHeight (isHydrate?: boolean) {\n return IN_BROWSER && !isHydrate\n ? window.innerHeight\n : 0\n}\n\nfunction getPlatform (isHydrate?: boolean): DisplayPlatform {\n const userAgent = IN_BROWSER && !isHydrate\n ? window.navigator.userAgent\n : 'ssr'\n\n function match (regexp: RegExp) {\n return Boolean(userAgent.match(regexp))\n }\n\n const android = match(/android/i)\n const ios = match(/iphone|ipad|ipod/i)\n const cordova = match(/cordova/i)\n const electron = match(/electron/i)\n const chrome = match(/chrome/i)\n const edge = match(/edge/i)\n const firefox = match(/firefox/i)\n const opera = match(/opera/i)\n const win = match(/win/i)\n const mac = match(/mac/i)\n const linux = match(/linux/i)\n\n return {\n android,\n ios,\n cordova,\n electron,\n chrome,\n edge,\n firefox,\n opera,\n win,\n mac,\n linux,\n touch: SUPPORTS_TOUCH,\n ssr: userAgent === 'ssr',\n }\n}\n\nexport function createDisplay (options?: DisplayOptions, ssr?: boolean): DisplayInstance {\n const { thresholds, mobileBreakpoint } = parseDisplayOptions(options)\n\n const height = ref(getClientHeight(ssr))\n const platform = shallowRef(getPlatform(ssr))\n const state = reactive({} as DisplayInstance)\n const width = ref(getClientWidth(ssr))\n\n function updateSize () {\n height.value = getClientHeight()\n width.value = getClientWidth()\n }\n function update () {\n updateSize()\n platform.value = getPlatform()\n }\n\n // eslint-disable-next-line max-statements\n watchEffect(() => {\n const xs = width.value < thresholds.sm\n const sm = width.value < thresholds.md && !xs\n const md = width.value < thresholds.lg && !(sm || xs)\n const lg = width.value < thresholds.xl && !(md || sm || xs)\n const xl = width.value < thresholds.xxl && !(lg || md || sm || xs)\n const xxl = width.value >= thresholds.xxl\n const name =\n xs ? 'xs'\n : sm ? 'sm'\n : md ? 'md'\n : lg ? 'lg'\n : xl ? 'xl'\n : 'xxl'\n const breakpointValue = typeof mobileBreakpoint === 'number' ? mobileBreakpoint : thresholds[mobileBreakpoint]\n const mobile = width.value < breakpointValue\n\n state.xs = xs\n state.sm = sm\n state.md = md\n state.lg = lg\n state.xl = xl\n state.xxl = xxl\n state.smAndUp = !xs\n state.mdAndUp = !(xs || sm)\n state.lgAndUp = !(xs || sm || md)\n state.xlAndUp = !(xs || sm || md || lg)\n state.smAndDown = !(md || lg || xl || xxl)\n state.mdAndDown = !(lg || xl || xxl)\n state.lgAndDown = !(xl || xxl)\n state.xlAndDown = !xxl\n state.name = name\n state.height = height.value\n state.width = width.value\n state.mobile = mobile\n state.mobileBreakpoint = mobileBreakpoint\n state.platform = platform.value\n state.thresholds = thresholds\n })\n\n if (IN_BROWSER) {\n window.addEventListener('resize', updateSize, { passive: true })\n }\n\n return { ...toRefs(state), update, ssr: !!ssr }\n}\n\nexport function useDisplay () {\n const display = inject(DisplaySymbol)\n\n if (!display) throw new Error('Could not find Vuetify display injection')\n\n return display\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.mjs","names":["VProgressLinear","computed","getCurrentInstanceName","propsFactory","makeLoaderProps","loading","Boolean","String","useLoader","props","name","loaderClasses","LoaderSlot","slots","default","color","isActive","active"],"sources":["../../src/composables/loader.tsx"],"sourcesContent":["// Components\nimport { VProgressLinear } from '@/components/VProgressLinear'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { ExtractPropTypes, SetupContext } from 'vue'\nimport type { MakeSlots, SlotsToProps } from '@/util'\n\nexport interface LoaderSlotProps {\n color: string | undefined\n isActive: boolean\n}\n\nexport interface LoaderProps {\n loading?: boolean | string\n}\n\n// Composables\nexport const makeLoaderProps = propsFactory({\n loading: [Boolean, String],\n}, 'loader')\n\nexport function useLoader (\n props: LoaderProps,\n name = getCurrentInstanceName(),\n) {\n const loaderClasses = computed(() => ({\n [`${name}--loading`]: props.loading,\n }))\n\n return { loaderClasses }\n}\n\nexport function LoaderSlot (\n props: {\n active: boolean\n name: string\n color?: string\n } & ExtractPropTypes<SlotsToProps<MakeSlots<{\n default: [LoaderSlotProps]\n }>>>,\n { slots }: SetupContext,\n) {\n return (\n <div class={`${props.name}__loader`}>\n { slots.default?.({\n color: props.color,\n isActive: props.active,\n } as LoaderSlotProps) || (\n <VProgressLinear\n active={ props.active }\n color={ props.color }\n height=\"2\"\n indeterminate\n />\n )}\n </div>\n )\n}\n"],"mappings":";AAAA;AAAA,SACSA,eAAe,mDAExB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,sBAAsB,EAAEC,YAAY,6BAE7C;AAaA;AACA,OAAO,MAAMC,eAAe,GAAGD,YAAY,CAAC;EAC1CE,OAAO,EAAE,CAACC,OAAO,EAAEC,MAAM;AAC3B,CAAC,EAAE,QAAQ,CAAC;AAEZ,OAAO,SAASC,SAAS,CACvBC,KAAkB,EAElB;EAAA,IADAC,IAAI,uEAAGR,sBAAsB,EAAE;EAE/B,MAAMS,aAAa,GAAGV,QAAQ,CAAC,OAAO;IACpC,CAAE,GAAES,IAAK,WAAU,GAAGD,KAAK,CAACJ;EAC9B,CAAC,CAAC,CAAC;EAEH,OAAO;IAAEM;EAAc,CAAC;AAC1B;AAEA,OAAO,SAASC,UAAU,CACxBH,KAMI,QAEJ;EAAA,IADA;IAAEI;EAAoB,CAAC;EAEvB;IAAA,
|
|
1
|
+
{"version":3,"file":"loader.mjs","names":["VProgressLinear","computed","getCurrentInstanceName","propsFactory","makeLoaderProps","loading","Boolean","String","useLoader","props","name","loaderClasses","LoaderSlot","slots","default","color","isActive","active"],"sources":["../../src/composables/loader.tsx"],"sourcesContent":["// Components\nimport { VProgressLinear } from '@/components/VProgressLinear'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { ExtractPropTypes, SetupContext } from 'vue'\nimport type { MakeSlots, SlotsToProps } from '@/util'\n\nexport interface LoaderSlotProps {\n color: string | undefined\n isActive: boolean\n}\n\nexport interface LoaderProps {\n loading?: boolean | string\n}\n\n// Composables\nexport const makeLoaderProps = propsFactory({\n loading: [Boolean, String],\n}, 'loader')\n\nexport function useLoader (\n props: LoaderProps,\n name = getCurrentInstanceName(),\n) {\n const loaderClasses = computed(() => ({\n [`${name}--loading`]: props.loading,\n }))\n\n return { loaderClasses }\n}\n\nexport function LoaderSlot (\n props: {\n active: boolean\n name: string\n color?: string\n } & ExtractPropTypes<SlotsToProps<MakeSlots<{\n default: [LoaderSlotProps]\n }>>>,\n { slots }: SetupContext,\n) {\n return (\n <div class={ `${props.name}__loader` }>\n { slots.default?.({\n color: props.color,\n isActive: props.active,\n } as LoaderSlotProps) || (\n <VProgressLinear\n active={ props.active }\n color={ props.color }\n height=\"2\"\n indeterminate\n />\n )}\n </div>\n )\n}\n"],"mappings":";AAAA;AAAA,SACSA,eAAe,mDAExB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,sBAAsB,EAAEC,YAAY,6BAE7C;AAaA;AACA,OAAO,MAAMC,eAAe,GAAGD,YAAY,CAAC;EAC1CE,OAAO,EAAE,CAACC,OAAO,EAAEC,MAAM;AAC3B,CAAC,EAAE,QAAQ,CAAC;AAEZ,OAAO,SAASC,SAAS,CACvBC,KAAkB,EAElB;EAAA,IADAC,IAAI,uEAAGR,sBAAsB,EAAE;EAE/B,MAAMS,aAAa,GAAGV,QAAQ,CAAC,OAAO;IACpC,CAAE,GAAES,IAAK,WAAU,GAAGD,KAAK,CAACJ;EAC9B,CAAC,CAAC,CAAC;EAEH,OAAO;IAAEM;EAAc,CAAC;AAC1B;AAEA,OAAO,SAASC,UAAU,CACxBH,KAMI,QAEJ;EAAA,IADA;IAAEI;EAAoB,CAAC;EAEvB;IAAA,SACgB,GAAEJ,KAAK,CAACC,IAAK;EAAS,IAChCG,KAAK,CAACC,OAAO,GAAG;IAChBC,KAAK,EAAEN,KAAK,CAACM,KAAK;IAClBC,QAAQ,EAAEP,KAAK,CAACQ;EAClB,CAAC,CAAoB;IAAA,UAERR,KAAK,CAACQ,MAAM;IAAA,SACbR,KAAK,CAACM,KAAK;IAAA,UACZ,GAAG;IAAA;EAAA,QAGb;AAGP"}
|
|
@@ -157,17 +157,9 @@ export function createTheme(options) {
|
|
|
157
157
|
if (current.value.dark) {
|
|
158
158
|
createCssClass(lines, ':root', ['color-scheme: dark']);
|
|
159
159
|
}
|
|
160
|
+
createCssClass(lines, ':root', genCssVariables(current.value));
|
|
160
161
|
for (const [themeName, theme] of Object.entries(computedThemes.value)) {
|
|
161
|
-
|
|
162
|
-
variables,
|
|
163
|
-
dark
|
|
164
|
-
} = theme;
|
|
165
|
-
createCssClass(lines, `.v-theme--${themeName}`, [`color-scheme: ${dark ? 'dark' : 'normal'}`, ...genCssVariables(theme), ...Object.keys(variables).map(key => {
|
|
166
|
-
const value = variables[key];
|
|
167
|
-
const color = typeof value === 'string' && value.startsWith('#') ? parseColor(value) : undefined;
|
|
168
|
-
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
|
169
|
-
return `--v-${key}: ${rgb ?? value}`;
|
|
170
|
-
})]);
|
|
162
|
+
createCssClass(lines, `.v-theme--${themeName}`, [`color-scheme: ${theme.dark ? 'dark' : 'normal'}`, ...genCssVariables(theme)]);
|
|
171
163
|
}
|
|
172
164
|
const bgLines = [];
|
|
173
165
|
const fgLines = [];
|
|
@@ -280,6 +272,11 @@ function genCssVariables(theme) {
|
|
|
280
272
|
variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`);
|
|
281
273
|
}
|
|
282
274
|
}
|
|
275
|
+
for (const [key, value] of Object.entries(theme.variables)) {
|
|
276
|
+
const color = typeof value === 'string' && value.startsWith('#') ? parseColor(value) : undefined;
|
|
277
|
+
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
|
278
|
+
variables.push(`--v-${key}: ${rgb ?? value}`);
|
|
279
|
+
}
|
|
283
280
|
return variables;
|
|
284
281
|
}
|
|
285
282
|
//# sourceMappingURL=theme.mjs.map
|