@vuetify/nightly 3.7.16-master.2025-03-15 → 3.7.16-master.2025-03-17
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 +4 -3
- package/dist/json/attributes.json +1476 -1476
- package/dist/json/importMap-labs.json +38 -38
- package/dist/json/importMap.json +162 -162
- package/dist/json/web-types.json +2580 -2580
- package/dist/vuetify-labs.css +3465 -3465
- package/dist/vuetify-labs.esm.js +4 -4
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +4 -4
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +4195 -4195
- package/dist/vuetify.d.ts +60 -60
- package/dist/vuetify.esm.js +4 -4
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +4 -4
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +4 -4
- package/dist/vuetify.min.js.map +1 -1
- package/lib/composables/theme.mjs +1 -1
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +60 -60
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"theme.mjs","names":["computed","inject","provide","ref","watch","watchEffect","createRange","darken","getCurrentInstance","getForeground","getLuma","IN_BROWSER","lighten","mergeDeep","parseColor","propsFactory","RGBtoHex","ThemeSymbol","Symbol","for","makeThemeProps","theme","String","genDefaults","defaultTheme","variations","colors","themes","light","dark","background","surface","primary","secondary","error","info","success","warning","variables","parseThemeOptions","options","arguments","length","undefined","defaults","isDisabled","key","Object","entries","createTheme","parsedOptions","name","computedThemes","acc","original","value","color","variation","fn","amount","keys","test","onColor","colorVal","current","styles","lines","createCssClass","genCssVariables","themeName","bgLines","fgLines","Set","values","flatMap","push","map","str","i","join","getHead","style","children","id","nonce","cspNonce","install","app","head","_context","provides","usehead","entry","patch","addHeadObjs","updateDOM","styleEl","document","getElementById","updateStyles","immediate","el","createElement","type","setAttribute","appendChild","innerHTML","themeClasses","global","provideTheme","props","Error","newTheme","useTheme","selector","content","line","lightOverlay","darkOverlay","rgb","r","g","b","startsWith"],"sources":["../../src/composables/theme.ts"],"sourcesContent":["// Utilities\nimport {\n computed,\n inject,\n provide,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n createRange,\n darken,\n getCurrentInstance,\n getForeground,\n getLuma,\n IN_BROWSER,\n lighten,\n mergeDeep,\n parseColor,\n propsFactory,\n RGBtoHex,\n} from '@/util'\n\n// Types\nimport type { VueHeadClient } from '@unhead/vue'\nimport type { HeadClient } from '@vueuse/head'\nimport type { App, DeepReadonly, InjectionKey, Ref } from 'vue'\n\ntype DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T\n\nexport type ThemeOptions = false | {\n cspNonce?: string\n defaultTheme?: string\n variations?: false | VariationsOptions\n themes?: Record<string, ThemeDefinition>\n}\nexport type ThemeDefinition = DeepPartial<InternalThemeDefinition>\n\ninterface InternalThemeOptions {\n cspNonce?: string\n isDisabled: boolean\n defaultTheme: string\n variations: false | VariationsOptions\n themes: Record<string, InternalThemeDefinition>\n}\n\ninterface VariationsOptions {\n colors: string[]\n lighten: number\n darken: number\n}\n\ninterface InternalThemeDefinition {\n dark: boolean\n colors: Colors\n variables: Record<string, string | number>\n}\n\nexport interface Colors extends BaseColors, OnColors {\n [key: string]: string\n}\n\ninterface BaseColors {\n background: string\n surface: string\n primary: string\n secondary: string\n success: string\n warning: string\n error: string\n info: string\n}\n\ninterface OnColors {\n 'on-background': string\n 'on-surface': string\n 'on-primary': string\n 'on-secondary': string\n 'on-success': string\n 'on-warning': string\n 'on-error': string\n 'on-info': string\n}\n\nexport interface ThemeInstance {\n readonly isDisabled: boolean\n readonly themes: Ref<Record<string, InternalThemeDefinition>>\n\n readonly name: Readonly<Ref<string>>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>\n\n readonly themeClasses: Readonly<Ref<string | undefined>>\n readonly styles: Readonly<Ref<string>>\n\n readonly global: {\n readonly name: Ref<string>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n }\n}\n\nexport const ThemeSymbol: InjectionKey<ThemeInstance> = Symbol.for('vuetify:theme')\n\nexport const makeThemeProps = propsFactory({\n theme: String,\n}, 'theme')\n\nfunction genDefaults () {\n return {\n defaultTheme: 'light',\n variations: { colors: [], lighten: 0, darken: 0 },\n themes: {\n light: {\n dark: false,\n colors: {\n background: '#FFFFFF',\n surface: '#FFFFFF',\n 'surface-bright': '#FFFFFF',\n 'surface-light': '#EEEEEE',\n 'surface-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#1867C0',\n 'primary-darken-1': '#1F5592',\n secondary: '#48A9A6',\n 'secondary-darken-1': '#018786',\n error: '#B00020',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#000000',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.04,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.12,\n 'dragged-opacity': 0.08,\n 'theme-kbd': '#212529',\n 'theme-on-kbd': '#FFFFFF',\n 'theme-code': '#F5F5F5',\n 'theme-on-code': '#000000',\n },\n },\n dark: {\n dark: true,\n colors: {\n background: '#121212',\n surface: '#212121',\n 'surface-bright': '#ccbfd6',\n 'surface-light': '#424242',\n 'surface-variant': '#a3a3a3',\n 'on-surface-variant': '#424242',\n primary: '#2196F3',\n 'primary-darken-1': '#277CC1',\n secondary: '#54B6B2',\n 'secondary-darken-1': '#48A9A6',\n error: '#CF6679',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#FFFFFF',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 1,\n 'medium-emphasis-opacity': 0.70,\n 'disabled-opacity': 0.50,\n 'idle-opacity': 0.10,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.16,\n 'dragged-opacity': 0.08,\n 'theme-kbd': '#212529',\n 'theme-on-kbd': '#FFFFFF',\n 'theme-code': '#343434',\n 'theme-on-code': '#CCCCCC',\n },\n },\n },\n }\n}\n\nfunction parseThemeOptions (options: ThemeOptions = genDefaults()): InternalThemeOptions {\n const defaults = genDefaults()\n\n if (!options) return { ...defaults, isDisabled: true } as any\n\n const themes: Record<string, InternalThemeDefinition> = {}\n for (const [key, theme] of Object.entries(options.themes ?? {})) {\n const defaultTheme = theme.dark || key === 'dark'\n ? defaults.themes?.dark\n : defaults.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaults,\n { ...options, themes },\n ) as InternalThemeOptions\n}\n\n// Composables\nexport function createTheme (options?: ThemeOptions): ThemeInstance & { install: (app: App) => void } {\n const parsedOptions = parseThemeOptions(options)\n const name = ref(parsedOptions.defaultTheme)\n const themes = ref(parsedOptions.themes)\n\n const computedThemes = computed(() => {\n const acc: Record<string, InternalThemeDefinition> = {}\n for (const [name, original] of Object.entries(themes.value)) {\n const theme: InternalThemeDefinition = acc[name] = {\n ...original,\n colors: {\n ...original.colors,\n },\n }\n\n if (parsedOptions.variations) {\n for (const name of parsedOptions.variations.colors) {\n const color = theme.colors[name]\n\n if (!color) continue\n\n for (const variation of (['lighten', 'darken'] as const)) {\n const fn = variation === 'lighten' ? lighten : darken\n for (const amount of createRange(parsedOptions.variations[variation], 1)) {\n theme.colors[`${name}-${variation}-${amount}`] = RGBtoHex(fn(parseColor(color), amount))\n }\n }\n }\n }\n\n for (const color of Object.keys(theme.colors)) {\n if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue\n\n const onColor = `on-${color}` as keyof OnColors\n const colorVal = parseColor(theme.colors[color]!)\n\n theme.colors[onColor] = getForeground(colorVal)\n }\n }\n\n return acc\n })\n const current = computed(() => computedThemes.value[name.value])\n\n const styles = computed(() => {\n const lines: string[] = []\n\n if (current.value?.dark) {\n createCssClass(lines, ':root', ['color-scheme: dark'])\n }\n\n createCssClass(lines, ':root', genCssVariables(current.value))\n\n for (const [themeName, theme] of Object.entries(computedThemes.value)) {\n createCssClass(lines, `.v-theme--${themeName}`, [\n `color-scheme: ${theme.dark ? 'dark' : 'normal'}`,\n ...genCssVariables(theme),\n ])\n }\n\n const bgLines: string[] = []\n const fgLines: string[] = []\n\n const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)))\n for (const key of colors) {\n if (/^on-[a-z]/.test(key)) {\n createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n } else {\n createCssClass(bgLines, `.bg-${key}`, [\n `--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`,\n `background-color: rgb(var(--v-theme-${key})) !important`,\n `color: rgb(var(--v-theme-on-${key})) !important`,\n ])\n createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`])\n }\n }\n\n lines.push(...bgLines, ...fgLines)\n\n return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('')\n })\n\n function getHead () {\n return {\n style: [{\n children: styles.value,\n id: 'vuetify-theme-stylesheet',\n nonce: parsedOptions.cspNonce || false as never,\n }],\n }\n }\n\n function install (app: App) {\n if (parsedOptions.isDisabled) return\n\n const head = app._context.provides.usehead as HeadClient & VueHeadClient<any> | undefined\n if (head) {\n if (head.push) {\n const entry = head.push(getHead)\n if (IN_BROWSER) {\n watch(styles, () => { entry.patch(getHead) })\n }\n } else {\n if (IN_BROWSER) {\n head.addHeadObjs(computed(getHead))\n watchEffect(() => head.updateDOM())\n } else {\n head.addHeadObjs(getHead())\n }\n }\n } else {\n let styleEl = IN_BROWSER\n ? document.getElementById('vuetify-theme-stylesheet')\n : null\n\n if (IN_BROWSER) {\n watch(styles, updateStyles, { immediate: true })\n } else {\n updateStyles()\n }\n\n function updateStyles () {\n if (typeof document !== 'undefined' && !styleEl) {\n const el = document.createElement('style')\n el.type = 'text/css'\n el.id = 'vuetify-theme-stylesheet'\n if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce)\n\n styleEl = el\n document.head.appendChild(styleEl)\n }\n\n if (styleEl) styleEl.innerHTML = styles.value\n }\n }\n }\n\n const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`)\n\n return {\n install,\n isDisabled: parsedOptions.isDisabled,\n name,\n themes,\n current,\n computedThemes,\n themeClasses,\n styles,\n global: {\n name,\n current,\n },\n }\n}\n\nexport function provideTheme (props: { theme?: string }) {\n getCurrentInstance('provideTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n const name = computed<string>(() => {\n return props.theme ?? theme.name.value\n })\n const current = computed(() => theme.themes.value[name.value])\n\n const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`)\n\n const newTheme: ThemeInstance = {\n ...theme,\n name,\n current,\n themeClasses,\n }\n\n provide(ThemeSymbol, newTheme)\n\n return newTheme\n}\n\nexport function useTheme () {\n getCurrentInstance('useTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n return theme\n}\n\nfunction createCssClass (lines: string[], selector: string, content: string[]) {\n lines.push(\n `${selector} {\\n`,\n ...content.map(line => ` ${line};\\n`),\n '}\\n',\n )\n}\n\nfunction genCssVariables (theme: InternalThemeDefinition) {\n const lightOverlay = theme.dark ? 2 : 1\n const darkOverlay = theme.dark ? 1 : 2\n\n const variables: string[] = []\n for (const [key, value] of Object.entries(theme.colors)) {\n const rgb = parseColor(value)\n variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`)\n if (!key.startsWith('on-')) {\n variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`)\n }\n }\n\n for (const [key, value] of Object.entries(theme.variables)) {\n const color = typeof value === 'string' && value.startsWith('#') ? parseColor(value) : undefined\n const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined\n variables.push(`--v-${key}: ${rgb ?? value}`)\n }\n\n return variables\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"theme.mjs","names":["computed","inject","provide","ref","watch","watchEffect","createRange","darken","getCurrentInstance","getForeground","getLuma","IN_BROWSER","lighten","mergeDeep","parseColor","propsFactory","RGBtoHex","ThemeSymbol","Symbol","for","makeThemeProps","theme","String","genDefaults","defaultTheme","variations","colors","themes","light","dark","background","surface","primary","secondary","error","info","success","warning","variables","parseThemeOptions","options","arguments","length","undefined","defaults","isDisabled","key","Object","entries","createTheme","parsedOptions","name","computedThemes","acc","original","value","color","variation","fn","amount","keys","test","onColor","colorVal","current","styles","lines","createCssClass","genCssVariables","themeName","bgLines","fgLines","Set","values","flatMap","push","map","str","i","join","getHead","style","textContent","id","nonce","cspNonce","install","app","head","_context","provides","usehead","entry","patch","addHeadObjs","updateDOM","styleEl","document","getElementById","updateStyles","immediate","el","createElement","type","setAttribute","appendChild","innerHTML","themeClasses","global","provideTheme","props","Error","newTheme","useTheme","selector","content","line","lightOverlay","darkOverlay","rgb","r","g","b","startsWith"],"sources":["../../src/composables/theme.ts"],"sourcesContent":["// Utilities\nimport {\n computed,\n inject,\n provide,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n createRange,\n darken,\n getCurrentInstance,\n getForeground,\n getLuma,\n IN_BROWSER,\n lighten,\n mergeDeep,\n parseColor,\n propsFactory,\n RGBtoHex,\n} from '@/util'\n\n// Types\nimport type { VueHeadClient } from '@unhead/vue'\nimport type { HeadClient } from '@vueuse/head'\nimport type { App, DeepReadonly, InjectionKey, Ref } from 'vue'\n\ntype DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T\n\nexport type ThemeOptions = false | {\n cspNonce?: string\n defaultTheme?: string\n variations?: false | VariationsOptions\n themes?: Record<string, ThemeDefinition>\n}\nexport type ThemeDefinition = DeepPartial<InternalThemeDefinition>\n\ninterface InternalThemeOptions {\n cspNonce?: string\n isDisabled: boolean\n defaultTheme: string\n variations: false | VariationsOptions\n themes: Record<string, InternalThemeDefinition>\n}\n\ninterface VariationsOptions {\n colors: string[]\n lighten: number\n darken: number\n}\n\ninterface InternalThemeDefinition {\n dark: boolean\n colors: Colors\n variables: Record<string, string | number>\n}\n\nexport interface Colors extends BaseColors, OnColors {\n [key: string]: string\n}\n\ninterface BaseColors {\n background: string\n surface: string\n primary: string\n secondary: string\n success: string\n warning: string\n error: string\n info: string\n}\n\ninterface OnColors {\n 'on-background': string\n 'on-surface': string\n 'on-primary': string\n 'on-secondary': string\n 'on-success': string\n 'on-warning': string\n 'on-error': string\n 'on-info': string\n}\n\nexport interface ThemeInstance {\n readonly isDisabled: boolean\n readonly themes: Ref<Record<string, InternalThemeDefinition>>\n\n readonly name: Readonly<Ref<string>>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>\n\n readonly themeClasses: Readonly<Ref<string | undefined>>\n readonly styles: Readonly<Ref<string>>\n\n readonly global: {\n readonly name: Ref<string>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n }\n}\n\nexport const ThemeSymbol: InjectionKey<ThemeInstance> = Symbol.for('vuetify:theme')\n\nexport const makeThemeProps = propsFactory({\n theme: String,\n}, 'theme')\n\nfunction genDefaults () {\n return {\n defaultTheme: 'light',\n variations: { colors: [], lighten: 0, darken: 0 },\n themes: {\n light: {\n dark: false,\n colors: {\n background: '#FFFFFF',\n surface: '#FFFFFF',\n 'surface-bright': '#FFFFFF',\n 'surface-light': '#EEEEEE',\n 'surface-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#1867C0',\n 'primary-darken-1': '#1F5592',\n secondary: '#48A9A6',\n 'secondary-darken-1': '#018786',\n error: '#B00020',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#000000',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.04,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.12,\n 'dragged-opacity': 0.08,\n 'theme-kbd': '#212529',\n 'theme-on-kbd': '#FFFFFF',\n 'theme-code': '#F5F5F5',\n 'theme-on-code': '#000000',\n },\n },\n dark: {\n dark: true,\n colors: {\n background: '#121212',\n surface: '#212121',\n 'surface-bright': '#ccbfd6',\n 'surface-light': '#424242',\n 'surface-variant': '#a3a3a3',\n 'on-surface-variant': '#424242',\n primary: '#2196F3',\n 'primary-darken-1': '#277CC1',\n secondary: '#54B6B2',\n 'secondary-darken-1': '#48A9A6',\n error: '#CF6679',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#FFFFFF',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 1,\n 'medium-emphasis-opacity': 0.70,\n 'disabled-opacity': 0.50,\n 'idle-opacity': 0.10,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.16,\n 'dragged-opacity': 0.08,\n 'theme-kbd': '#212529',\n 'theme-on-kbd': '#FFFFFF',\n 'theme-code': '#343434',\n 'theme-on-code': '#CCCCCC',\n },\n },\n },\n }\n}\n\nfunction parseThemeOptions (options: ThemeOptions = genDefaults()): InternalThemeOptions {\n const defaults = genDefaults()\n\n if (!options) return { ...defaults, isDisabled: true } as any\n\n const themes: Record<string, InternalThemeDefinition> = {}\n for (const [key, theme] of Object.entries(options.themes ?? {})) {\n const defaultTheme = theme.dark || key === 'dark'\n ? defaults.themes?.dark\n : defaults.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaults,\n { ...options, themes },\n ) as InternalThemeOptions\n}\n\n// Composables\nexport function createTheme (options?: ThemeOptions): ThemeInstance & { install: (app: App) => void } {\n const parsedOptions = parseThemeOptions(options)\n const name = ref(parsedOptions.defaultTheme)\n const themes = ref(parsedOptions.themes)\n\n const computedThemes = computed(() => {\n const acc: Record<string, InternalThemeDefinition> = {}\n for (const [name, original] of Object.entries(themes.value)) {\n const theme: InternalThemeDefinition = acc[name] = {\n ...original,\n colors: {\n ...original.colors,\n },\n }\n\n if (parsedOptions.variations) {\n for (const name of parsedOptions.variations.colors) {\n const color = theme.colors[name]\n\n if (!color) continue\n\n for (const variation of (['lighten', 'darken'] as const)) {\n const fn = variation === 'lighten' ? lighten : darken\n for (const amount of createRange(parsedOptions.variations[variation], 1)) {\n theme.colors[`${name}-${variation}-${amount}`] = RGBtoHex(fn(parseColor(color), amount))\n }\n }\n }\n }\n\n for (const color of Object.keys(theme.colors)) {\n if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue\n\n const onColor = `on-${color}` as keyof OnColors\n const colorVal = parseColor(theme.colors[color]!)\n\n theme.colors[onColor] = getForeground(colorVal)\n }\n }\n\n return acc\n })\n const current = computed(() => computedThemes.value[name.value])\n\n const styles = computed(() => {\n const lines: string[] = []\n\n if (current.value?.dark) {\n createCssClass(lines, ':root', ['color-scheme: dark'])\n }\n\n createCssClass(lines, ':root', genCssVariables(current.value))\n\n for (const [themeName, theme] of Object.entries(computedThemes.value)) {\n createCssClass(lines, `.v-theme--${themeName}`, [\n `color-scheme: ${theme.dark ? 'dark' : 'normal'}`,\n ...genCssVariables(theme),\n ])\n }\n\n const bgLines: string[] = []\n const fgLines: string[] = []\n\n const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)))\n for (const key of colors) {\n if (/^on-[a-z]/.test(key)) {\n createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n } else {\n createCssClass(bgLines, `.bg-${key}`, [\n `--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`,\n `background-color: rgb(var(--v-theme-${key})) !important`,\n `color: rgb(var(--v-theme-on-${key})) !important`,\n ])\n createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`])\n }\n }\n\n lines.push(...bgLines, ...fgLines)\n\n return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('')\n })\n\n function getHead () {\n return {\n style: [{\n textContent: styles.value,\n id: 'vuetify-theme-stylesheet',\n nonce: parsedOptions.cspNonce || false as never,\n }],\n }\n }\n\n function install (app: App) {\n if (parsedOptions.isDisabled) return\n\n const head = app._context.provides.usehead as HeadClient & VueHeadClient<any> | undefined\n if (head) {\n if (head.push) {\n const entry = head.push(getHead)\n if (IN_BROWSER) {\n watch(styles, () => { entry.patch(getHead) })\n }\n } else {\n if (IN_BROWSER) {\n head.addHeadObjs(computed(getHead))\n watchEffect(() => head.updateDOM())\n } else {\n head.addHeadObjs(getHead())\n }\n }\n } else {\n let styleEl = IN_BROWSER\n ? document.getElementById('vuetify-theme-stylesheet')\n : null\n\n if (IN_BROWSER) {\n watch(styles, updateStyles, { immediate: true })\n } else {\n updateStyles()\n }\n\n function updateStyles () {\n if (typeof document !== 'undefined' && !styleEl) {\n const el = document.createElement('style')\n el.type = 'text/css'\n el.id = 'vuetify-theme-stylesheet'\n if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce)\n\n styleEl = el\n document.head.appendChild(styleEl)\n }\n\n if (styleEl) styleEl.innerHTML = styles.value\n }\n }\n }\n\n const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`)\n\n return {\n install,\n isDisabled: parsedOptions.isDisabled,\n name,\n themes,\n current,\n computedThemes,\n themeClasses,\n styles,\n global: {\n name,\n current,\n },\n }\n}\n\nexport function provideTheme (props: { theme?: string }) {\n getCurrentInstance('provideTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n const name = computed<string>(() => {\n return props.theme ?? theme.name.value\n })\n const current = computed(() => theme.themes.value[name.value])\n\n const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`)\n\n const newTheme: ThemeInstance = {\n ...theme,\n name,\n current,\n themeClasses,\n }\n\n provide(ThemeSymbol, newTheme)\n\n return newTheme\n}\n\nexport function useTheme () {\n getCurrentInstance('useTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n return theme\n}\n\nfunction createCssClass (lines: string[], selector: string, content: string[]) {\n lines.push(\n `${selector} {\\n`,\n ...content.map(line => ` ${line};\\n`),\n '}\\n',\n )\n}\n\nfunction genCssVariables (theme: InternalThemeDefinition) {\n const lightOverlay = theme.dark ? 2 : 1\n const darkOverlay = theme.dark ? 1 : 2\n\n const variables: string[] = []\n for (const [key, value] of Object.entries(theme.colors)) {\n const rgb = parseColor(value)\n variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`)\n if (!key.startsWith('on-')) {\n variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`)\n }\n }\n\n for (const [key, value] of Object.entries(theme.variables)) {\n const color = typeof value === 'string' && value.startsWith('#') ? parseColor(value) : undefined\n const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined\n variables.push(`--v-${key}: ${rgb ?? value}`)\n }\n\n return variables\n}\n"],"mappings":"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","ignoreList":[]}
|
package/lib/entry-bundler.mjs
CHANGED
@@ -16,7 +16,7 @@ export const createVuetify = function () {
|
|
16
16
|
...options
|
17
17
|
});
|
18
18
|
};
|
19
|
-
export const version = "3.7.16-master.2025-03-
|
19
|
+
export const version = "3.7.16-master.2025-03-17";
|
20
20
|
createVuetify.version = version;
|
21
21
|
export { blueprints, components, directives };
|
22
22
|
export * from "./composables/index.mjs";
|
package/lib/framework.mjs
CHANGED
package/lib/index.d.mts
CHANGED
@@ -486,40 +486,45 @@ declare module 'vue' {
|
|
486
486
|
$children?: VNodeChild
|
487
487
|
}
|
488
488
|
export interface GlobalComponents {
|
489
|
-
VAppBar: typeof import('vuetify/components')['VAppBar']
|
490
|
-
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
491
|
-
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
492
|
-
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
493
|
-
VApp: typeof import('vuetify/components')['VApp']
|
494
489
|
VAlert: typeof import('vuetify/components')['VAlert']
|
495
490
|
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
496
|
-
|
497
|
-
|
498
|
-
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
491
|
+
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
492
|
+
VApp: typeof import('vuetify/components')['VApp']
|
499
493
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
500
494
|
VBanner: typeof import('vuetify/components')['VBanner']
|
501
495
|
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
502
496
|
VBannerText: typeof import('vuetify/components')['VBannerText']
|
497
|
+
VBadge: typeof import('vuetify/components')['VBadge']
|
498
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
503
499
|
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
504
500
|
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
505
501
|
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
506
|
-
|
507
|
-
|
508
|
-
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
509
|
-
VChip: typeof import('vuetify/components')['VChip']
|
510
|
-
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
502
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
503
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
511
504
|
VCard: typeof import('vuetify/components')['VCard']
|
512
505
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
513
506
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
514
507
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
515
508
|
VCardText: typeof import('vuetify/components')['VCardText']
|
516
509
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
517
|
-
|
518
|
-
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
519
|
-
VCode: typeof import('vuetify/components')['VCode']
|
510
|
+
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
520
511
|
VCarousel: typeof import('vuetify/components')['VCarousel']
|
521
512
|
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
513
|
+
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
514
|
+
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
522
515
|
VCombobox: typeof import('vuetify/components')['VCombobox']
|
516
|
+
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
517
|
+
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
518
|
+
VCode: typeof import('vuetify/components')['VCode']
|
519
|
+
VCounter: typeof import('vuetify/components')['VCounter']
|
520
|
+
VChip: typeof import('vuetify/components')['VChip']
|
521
|
+
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
522
|
+
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
523
|
+
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
524
|
+
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
525
|
+
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
526
|
+
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
527
|
+
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
523
528
|
VDataTable: typeof import('vuetify/components')['VDataTable']
|
524
529
|
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
525
530
|
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
@@ -527,37 +532,29 @@ declare module 'vue' {
|
|
527
532
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
528
533
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
529
534
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
530
|
-
VCounter: typeof import('vuetify/components')['VCounter']
|
531
535
|
VDialog: typeof import('vuetify/components')['VDialog']
|
532
|
-
|
533
|
-
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
534
|
-
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
535
|
-
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
536
|
-
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
537
|
-
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
538
|
-
VField: typeof import('vuetify/components')['VField']
|
539
|
-
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
536
|
+
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
540
537
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
541
538
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
542
539
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
543
540
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
544
|
-
|
541
|
+
VField: typeof import('vuetify/components')['VField']
|
542
|
+
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
545
543
|
VFab: typeof import('vuetify/components')['VFab']
|
546
544
|
VDivider: typeof import('vuetify/components')['VDivider']
|
547
545
|
VFileInput: typeof import('vuetify/components')['VFileInput']
|
546
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
548
547
|
VIcon: typeof import('vuetify/components')['VIcon']
|
549
548
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
550
549
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
551
550
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
552
551
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
553
|
-
VFooter: typeof import('vuetify/components')['VFooter']
|
554
552
|
VImg: typeof import('vuetify/components')['VImg']
|
555
|
-
VLabel: typeof import('vuetify/components')['VLabel']
|
556
553
|
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
557
554
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
558
555
|
VItem: typeof import('vuetify/components')['VItem']
|
559
|
-
VMain: typeof import('vuetify/components')['VMain']
|
560
556
|
VKbd: typeof import('vuetify/components')['VKbd']
|
557
|
+
VInput: typeof import('vuetify/components')['VInput']
|
561
558
|
VList: typeof import('vuetify/components')['VList']
|
562
559
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
563
560
|
VListImg: typeof import('vuetify/components')['VListImg']
|
@@ -567,52 +564,55 @@ declare module 'vue' {
|
|
567
564
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
568
565
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
569
566
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
567
|
+
VMain: typeof import('vuetify/components')['VMain']
|
568
|
+
VLabel: typeof import('vuetify/components')['VLabel']
|
570
569
|
VMenu: typeof import('vuetify/components')['VMenu']
|
571
570
|
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
572
|
-
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
573
|
-
VMessages: typeof import('vuetify/components')['VMessages']
|
574
571
|
VOverlay: typeof import('vuetify/components')['VOverlay']
|
575
|
-
|
572
|
+
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
576
573
|
VPagination: typeof import('vuetify/components')['VPagination']
|
574
|
+
VAppBar: typeof import('vuetify/components')['VAppBar']
|
575
|
+
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
576
|
+
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
577
|
+
VMessages: typeof import('vuetify/components')['VMessages']
|
577
578
|
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
578
|
-
VRating: typeof import('vuetify/components')['VRating']
|
579
579
|
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
580
|
+
VRating: typeof import('vuetify/components')['VRating']
|
580
581
|
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
581
|
-
VSelect: typeof import('vuetify/components')['VSelect']
|
582
582
|
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
583
583
|
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
584
584
|
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
585
|
-
VSlider: typeof import('vuetify/components')['VSlider']
|
586
585
|
VSheet: typeof import('vuetify/components')['VSheet']
|
586
|
+
VSelect: typeof import('vuetify/components')['VSelect']
|
587
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
587
588
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
588
589
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
589
590
|
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
590
|
-
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
591
|
-
VSwitch: typeof import('vuetify/components')['VSwitch']
|
592
591
|
VStepper: typeof import('vuetify/components')['VStepper']
|
593
592
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
594
593
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
595
594
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
596
595
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
597
596
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
597
|
+
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
598
598
|
VTab: typeof import('vuetify/components')['VTab']
|
599
599
|
VTabs: typeof import('vuetify/components')['VTabs']
|
600
600
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
601
601
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
602
|
+
VSwitch: typeof import('vuetify/components')['VSwitch']
|
602
603
|
VTable: typeof import('vuetify/components')['VTable']
|
604
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
605
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
606
|
+
VTooltip: typeof import('vuetify/components')['VTooltip']
|
603
607
|
VTimeline: typeof import('vuetify/components')['VTimeline']
|
604
608
|
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
605
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
606
|
-
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
607
609
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
608
610
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
609
611
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
610
|
-
VTextField: typeof import('vuetify/components')['VTextField']
|
611
612
|
VWindow: typeof import('vuetify/components')['VWindow']
|
612
613
|
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
613
|
-
VTooltip: typeof import('vuetify/components')['VTooltip']
|
614
|
-
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
615
614
|
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
615
|
+
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
616
616
|
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
617
617
|
VHover: typeof import('vuetify/components')['VHover']
|
618
618
|
VForm: typeof import('vuetify/components')['VForm']
|
@@ -620,19 +620,17 @@ declare module 'vue' {
|
|
620
620
|
VCol: typeof import('vuetify/components')['VCol']
|
621
621
|
VRow: typeof import('vuetify/components')['VRow']
|
622
622
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
623
|
-
VLayout: typeof import('vuetify/components')['VLayout']
|
624
|
-
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
625
623
|
VLazy: typeof import('vuetify/components')['VLazy']
|
626
|
-
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
627
|
-
VParallax: typeof import('vuetify/components')['VParallax']
|
628
624
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
629
625
|
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
630
626
|
VRadio: typeof import('vuetify/components')['VRadio']
|
631
627
|
VResponsive: typeof import('vuetify/components')['VResponsive']
|
632
|
-
|
628
|
+
VLayout: typeof import('vuetify/components')['VLayout']
|
629
|
+
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
630
|
+
VParallax: typeof import('vuetify/components')['VParallax']
|
633
631
|
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
632
|
+
VSparkline: typeof import('vuetify/components')['VSparkline']
|
634
633
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
635
|
-
VValidation: typeof import('vuetify/components')['VValidation']
|
636
634
|
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
637
635
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
638
636
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
@@ -650,28 +648,30 @@ declare module 'vue' {
|
|
650
648
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
651
649
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
652
650
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
653
|
-
|
654
|
-
|
655
|
-
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
656
|
-
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
657
|
-
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
658
|
-
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
659
|
-
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
660
|
-
VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
|
661
|
-
VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
|
662
|
-
VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
|
663
|
-
VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
|
651
|
+
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
652
|
+
VValidation: typeof import('vuetify/components')['VValidation']
|
664
653
|
VCalendar: typeof import('vuetify/labs/components')['VCalendar']
|
665
654
|
VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
|
666
655
|
VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
|
667
656
|
VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
|
668
657
|
VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
|
669
658
|
VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
|
659
|
+
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
660
|
+
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
661
|
+
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
662
|
+
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
663
|
+
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
664
|
+
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
665
|
+
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
666
|
+
VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
|
667
|
+
VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
|
668
|
+
VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
|
670
669
|
VTreeview: typeof import('vuetify/labs/components')['VTreeview']
|
671
670
|
VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
|
672
671
|
VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
|
672
|
+
VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
|
673
673
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
674
|
-
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
675
674
|
VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
|
675
|
+
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
676
676
|
}
|
677
677
|
}
|
package/package.json
CHANGED