vuetify 3.3.14 → 3.3.15

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.
Files changed (60) hide show
  1. package/dist/json/importMap-labs.json +4 -4
  2. package/dist/json/web-types.json +95 -46
  3. package/dist/vuetify-labs.css +411 -391
  4. package/dist/vuetify-labs.d.ts +447 -226
  5. package/dist/vuetify-labs.esm.js +47 -17
  6. package/dist/vuetify-labs.esm.js.map +1 -1
  7. package/dist/vuetify-labs.js +47 -17
  8. package/dist/vuetify-labs.min.css +2 -2
  9. package/dist/vuetify.css +39 -19
  10. package/dist/vuetify.d.ts +448 -227
  11. package/dist/vuetify.esm.js +47 -17
  12. package/dist/vuetify.esm.js.map +1 -1
  13. package/dist/vuetify.js +47 -17
  14. package/dist/vuetify.js.map +1 -1
  15. package/dist/vuetify.min.css +2 -2
  16. package/dist/vuetify.min.js +18 -17
  17. package/dist/vuetify.min.js.map +1 -1
  18. package/lib/components/VBtnToggle/VBtnToggle.css +13 -2
  19. package/lib/components/VBtnToggle/VBtnToggle.sass +3 -3
  20. package/lib/components/VBtnToggle/_variables.scss +2 -1
  21. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  22. package/lib/components/VCheckbox/index.d.mts +203 -87
  23. package/lib/components/VField/VField.css +14 -11
  24. package/lib/components/VField/VField.sass +14 -7
  25. package/lib/components/VField/_variables.scss +0 -1
  26. package/lib/components/VIcon/VIcon.css +1 -0
  27. package/lib/components/VIcon/VIcon.sass +1 -0
  28. package/lib/components/VOverlay/useActivator.mjs +1 -1
  29. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  30. package/lib/components/VRadio/index.d.mts +82 -23
  31. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  32. package/lib/components/VRadioGroup/index.d.mts +75 -109
  33. package/lib/components/VSelectionControl/VSelectionControl.mjs +17 -2
  34. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  35. package/lib/components/VSelectionControl/index.d.mts +19 -5
  36. package/lib/components/VSwitch/VSwitch.css +7 -5
  37. package/lib/components/VSwitch/VSwitch.mjs +18 -8
  38. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  39. package/lib/components/VSwitch/VSwitch.sass +6 -4
  40. package/lib/components/VSwitch/_variables.scss +5 -3
  41. package/lib/components/VSwitch/index.d.mts +82 -23
  42. package/lib/components/VTable/VTable.css +3 -0
  43. package/lib/components/VTable/VTable.sass +4 -0
  44. package/lib/components/VTable/_variables.scss +3 -0
  45. package/lib/components/VTabs/VTab.mjs +2 -2
  46. package/lib/components/VTabs/VTab.mjs.map +1 -1
  47. package/lib/components/VTextarea/VTextarea.mjs +1 -0
  48. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  49. package/lib/components/index.d.mts +448 -227
  50. package/lib/composables/theme.mjs +6 -2
  51. package/lib/composables/theme.mjs.map +1 -1
  52. package/lib/entry-bundler.mjs +1 -1
  53. package/lib/framework.mjs +1 -1
  54. package/lib/index.d.mts +1 -1
  55. package/lib/locale/bg.mjs +23 -23
  56. package/lib/locale/bg.mjs.map +1 -1
  57. package/lib/locale/fa.mjs +16 -16
  58. package/lib/locale/fa.mjs.map +1 -1
  59. package/lib/styles/tools/_states.sass +5 -5
  60. package/package.json +2 -2
@@ -18,6 +18,7 @@ const defaultThemeOptions = {
18
18
  colors: {
19
19
  background: '#FFFFFF',
20
20
  surface: '#FFFFFF',
21
+ 'surface-bright': '#FFFFFF',
21
22
  'surface-variant': '#424242',
22
23
  'on-surface-variant': '#EEEEEE',
23
24
  primary: '#6200EE',
@@ -53,7 +54,8 @@ const defaultThemeOptions = {
53
54
  colors: {
54
55
  background: '#121212',
55
56
  surface: '#212121',
56
- 'surface-variant': '#BDBDBD',
57
+ 'surface-bright': '#ccbfd6',
58
+ 'surface-variant': '#a3a3a3',
57
59
  'on-surface-variant': '#424242',
58
60
  primary: '#BB86FC',
59
61
  'primary-darken-1': '#3700B3',
@@ -244,12 +246,14 @@ export function provideTheme(props) {
244
246
  const theme = inject(ThemeSymbol, null);
245
247
  if (!theme) throw new Error('Could not find Vuetify theme injection');
246
248
  const name = computed(() => {
247
- return props.theme ?? theme?.name.value;
249
+ return props.theme ?? theme.name.value;
248
250
  });
251
+ const current = computed(() => theme.themes.value[name.value]);
249
252
  const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`);
250
253
  const newTheme = {
251
254
  ...theme,
252
255
  name,
256
+ current,
253
257
  themeClasses
254
258
  };
255
259
  provide(ThemeSymbol, newTheme);
@@ -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","defaultThemeOptions","defaultTheme","variations","colors","themes","light","dark","background","surface","primary","secondary","error","info","success","warning","variables","parseThemeOptions","options","arguments","length","undefined","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 { 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\nconst defaultThemeOptions: Exclude<ThemeOptions, false> = {\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-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#6200EE',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC6',\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-variant': '#BDBDBD',\n 'on-surface-variant': '#424242',\n primary: '#BB86FC',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC5',\n 'secondary-darken-1': '#03DAC5',\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\nfunction parseThemeOptions (options: ThemeOptions = defaultThemeOptions): InternalThemeOptions {\n if (!options) return { ...defaultThemeOptions, isDisabled: true } as InternalThemeOptions\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 ? defaultThemeOptions.themes?.dark\n : defaultThemeOptions.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaultThemeOptions,\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 // TODO: warn about poor color selections\n // const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))\n // const minContrast = Math.max(blackContrast, whiteContrast)\n // if (minContrast < 60) {\n // consoleInfo(`${key} theme color ${color} has poor contrast (${minContrast.toFixed()}%)`)\n // } else if (contrastAsText < 60 && !['background', 'surface'].includes(color)) {\n // consoleInfo(`${key} theme color ${color} has poor contrast as text (${contrastAsText.toFixed()}%)`)\n // }\n\n // Prefer white text if both have an acceptable contrast ratio\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 | 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\n const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`)\n\n const newTheme: ThemeInstance = {\n ...theme,\n name,\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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"}
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","defaultThemeOptions","defaultTheme","variations","colors","themes","light","dark","background","surface","primary","secondary","error","info","success","warning","variables","parseThemeOptions","options","arguments","length","undefined","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 { 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\nconst defaultThemeOptions: Exclude<ThemeOptions, false> = {\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-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#6200EE',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC6',\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-variant': '#a3a3a3',\n 'on-surface-variant': '#424242',\n primary: '#BB86FC',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC5',\n 'secondary-darken-1': '#03DAC5',\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\nfunction parseThemeOptions (options: ThemeOptions = defaultThemeOptions): InternalThemeOptions {\n if (!options) return { ...defaultThemeOptions, isDisabled: true } as InternalThemeOptions\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 ? defaultThemeOptions.themes?.dark\n : defaultThemeOptions.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaultThemeOptions,\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 // TODO: warn about poor color selections\n // const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))\n // const minContrast = Math.max(blackContrast, whiteContrast)\n // if (minContrast < 60) {\n // consoleInfo(`${key} theme color ${color} has poor contrast (${minContrast.toFixed()}%)`)\n // } else if (contrastAsText < 60 && !['background', 'surface'].includes(color)) {\n // consoleInfo(`${key} theme color ${color} has poor contrast as text (${contrastAsText.toFixed()}%)`)\n // }\n\n // Prefer white text if both have an acceptable contrast ratio\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 | 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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"}
@@ -15,7 +15,7 @@ export const createVuetify = function () {
15
15
  ...options
16
16
  });
17
17
  };
18
- export const version = "3.3.14";
18
+ export const version = "3.3.15";
19
19
  createVuetify.version = version;
20
20
  export { components, directives };
21
21
  export * from "./composables/index.mjs";
package/lib/framework.mjs CHANGED
@@ -92,7 +92,7 @@ export function createVuetify() {
92
92
  date
93
93
  };
94
94
  }
95
- export const version = "3.3.14";
95
+ export const version = "3.3.15";
96
96
  createVuetify.version = version;
97
97
 
98
98
  // Vue's inject() can only be used in setup
package/lib/index.d.mts CHANGED
@@ -508,6 +508,7 @@ declare module '@vue/runtime-core' {
508
508
  VDatePickerMonth: typeof import('vuetify/labs/components')['VDatePickerMonth']
509
509
  VDatePickerYears: typeof import('vuetify/labs/components')['VDatePickerYears']
510
510
  VInfiniteScroll: typeof import('vuetify/labs/components')['VInfiniteScroll']
511
+ VOtpInput: typeof import('vuetify/labs/components')['VOtpInput']
511
512
  VPicker: typeof import('vuetify/labs/components')['VPicker']
512
513
  VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
513
514
  VSkeletonLoader: typeof import('vuetify/labs/components')['VSkeletonLoader']
@@ -517,7 +518,6 @@ declare module '@vue/runtime-core' {
517
518
  VStepperItem: typeof import('vuetify/labs/components')['VStepperItem']
518
519
  VStepperWindow: typeof import('vuetify/labs/components')['VStepperWindow']
519
520
  VStepperWindowItem: typeof import('vuetify/labs/components')['VStepperWindowItem']
520
- VOtpInput: typeof import('vuetify/labs/components')['VOtpInput']
521
521
  VDataIterator: typeof import('vuetify/labs/components')['VDataIterator']
522
522
  }
523
523
  }
package/lib/locale/bg.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  badge: 'Значка',
3
- open: 'Open',
3
+ open: 'Отвори',
4
4
  close: 'Затвори',
5
5
  dataIterator: {
6
6
  noResultsText: 'Не са намерени записи',
@@ -28,19 +28,19 @@ export default {
28
28
  pageText: '{0}-{1} от {2}'
29
29
  },
30
30
  dateRangeInput: {
31
- divider: 'to'
31
+ divider: 'до'
32
32
  },
33
33
  datePicker: {
34
- ok: 'OK',
35
- cancel: 'Cancel',
34
+ ok: 'ОК',
35
+ cancel: 'Отмяна',
36
36
  range: {
37
- title: 'Select dates',
38
- header: 'Enter dates'
37
+ title: 'Избор на дати',
38
+ header: 'Въвеждане на дати'
39
39
  },
40
- title: 'Select date',
41
- header: 'Enter date',
40
+ title: 'Избор на дата',
41
+ header: 'Въвеждане на дата',
42
42
  input: {
43
- placeholder: 'Enter date'
43
+ placeholder: 'Въведете дата'
44
44
  }
45
45
  },
46
46
  noDataText: 'Няма налични данни',
@@ -55,18 +55,18 @@ export default {
55
55
  moreEvents: 'Още {0}'
56
56
  },
57
57
  input: {
58
- clear: 'Clear {0}',
59
- prependAction: '{0} prepended action',
60
- appendAction: '{0} appended action',
61
- otp: 'Please enter OTP character {0}'
58
+ clear: 'Изчисти {0}',
59
+ prependAction: '{0} предшестващо действие',
60
+ appendAction: '{0} последващо действие',
61
+ otp: 'Моля, въведете OTP символ {0}'
62
62
  },
63
63
  fileInput: {
64
64
  counter: '{0} файла',
65
65
  counterSize: '{0} файла ({1} общо)'
66
66
  },
67
67
  timePicker: {
68
- am: 'AM',
69
- pm: 'PM'
68
+ am: 'пр. обяд',
69
+ pm: 'сл. обяд'
70
70
  },
71
71
  pagination: {
72
72
  ariaLabel: {
@@ -75,23 +75,23 @@ export default {
75
75
  previous: 'Предишна страница',
76
76
  page: 'Отиди на страница {0}',
77
77
  currentPage: 'Текуща страница, Страница {0}',
78
- first: 'First page',
79
- last: 'Last page'
78
+ first: 'Първа страница',
79
+ last: 'Последна страница'
80
80
  }
81
81
  },
82
82
  stepper: {
83
- next: 'Next',
84
- prev: 'Previous'
83
+ next: 'Следващ',
84
+ prev: 'Предишен'
85
85
  },
86
86
  rating: {
87
87
  ariaLabel: {
88
- item: 'Rating {0} of {1}'
88
+ item: 'Оценка {0} от {1}'
89
89
  }
90
90
  },
91
- loading: 'Loading...',
91
+ loading: 'Зареждане...',
92
92
  infiniteScroll: {
93
- loadMore: 'Load more',
94
- empty: 'No more'
93
+ loadMore: 'Зареди още',
94
+ empty: 'Няма повече'
95
95
  }
96
96
  };
97
97
  //# sourceMappingURL=bg.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"bg.mjs","names":["badge","open","close","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","ok","cancel","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/bg.ts"],"sourcesContent":["export default {\n badge: 'Значка',\n open: 'Open',\n close: 'Затвори',\n dataIterator: {\n noResultsText: 'Не са намерени записи',\n loadingText: 'Зареждане на елементи...',\n },\n dataTable: {\n itemsPerPageText: 'Редове на страница:',\n ariaLabel: {\n sortDescending: 'Подреди в намаляващ ред.',\n sortAscending: 'Подреди в нарастващ ред.',\n sortNone: 'Без подредба.',\n activateNone: 'Активирай за премахване на подредбата.',\n activateDescending: 'Активирай за подредба в намаляващ ред.',\n activateAscending: 'Активирай за подредба в нарастващ ред.',\n },\n sortBy: 'Сортирай по',\n },\n dataFooter: {\n itemsPerPageText: 'Елементи на страница:',\n itemsPerPageAll: 'Всички',\n nextPage: 'Следваща страница',\n prevPage: 'Предишна страница',\n firstPage: 'Първа страница',\n lastPage: 'Последна страница',\n pageText: '{0}-{1} от {2}',\n },\n dateRangeInput: {\n divider: 'to',\n },\n datePicker: {\n ok: 'OK',\n cancel: 'Cancel',\n range: {\n title: 'Select dates',\n header: 'Enter dates',\n },\n title: 'Select date',\n header: 'Enter date',\n input: {\n placeholder: 'Enter date',\n },\n },\n noDataText: 'Няма налични данни',\n carousel: {\n prev: 'Предишна визуализация',\n next: 'Следваща визуализация',\n ariaLabel: {\n delimiter: 'Кадър {0} от {1} на въртележката',\n },\n },\n calendar: {\n moreEvents: 'Още {0}',\n },\n input: {\n clear: 'Clear {0}',\n prependAction: '{0} prepended action',\n appendAction: '{0} appended action',\n otp: 'Please enter OTP character {0}',\n },\n fileInput: {\n counter: '{0} файла',\n counterSize: '{0} файла ({1} общо)',\n },\n timePicker: {\n am: 'AM',\n pm: 'PM',\n },\n pagination: {\n ariaLabel: {\n root: 'Странициране',\n next: 'Следваща страница',\n previous: 'Предишна страница',\n page: 'Отиди на страница {0}',\n currentPage: 'Текуща страница, Страница {0}',\n first: 'First page',\n last: 'Last page',\n },\n },\n stepper: {\n next: 'Next',\n prev: 'Previous',\n },\n rating: {\n ariaLabel: {\n item: 'Rating {0} of {1}',\n },\n },\n loading: 'Loading...',\n infiniteScroll: {\n loadMore: 'Load more',\n empty: 'No more',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,QAAQ;EACfC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,SAAS;EAChBC,YAAY,EAAE;IACZC,aAAa,EAAE,uBAAuB;IACtCC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,qBAAqB;IACvCC,SAAS,EAAE;MACTC,cAAc,EAAE,0BAA0B;MAC1CC,aAAa,EAAE,0BAA0B;MACzCC,QAAQ,EAAE,eAAe;MACzBC,YAAY,EAAE,wCAAwC;MACtDC,kBAAkB,EAAE,wCAAwC;MAC5DC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,uBAAuB;IACzCU,eAAe,EAAE,QAAQ;IACzBC,QAAQ,EAAE,mBAAmB;IAC7BC,QAAQ,EAAE,mBAAmB;IAC7BC,SAAS,EAAE,gBAAgB;IAC3BC,QAAQ,EAAE,mBAAmB;IAC7BC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE,QAAQ;IAChBC,KAAK,EAAE;MACLC,KAAK,EAAE,cAAc;MACrBC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,aAAa;IACpBC,MAAM,EAAE,YAAY;IACpBC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,oBAAoB;EAChCC,QAAQ,EAAE;IACRC,IAAI,EAAE,uBAAuB;IAC7BC,IAAI,EAAE,uBAAuB;IAC7B5B,SAAS,EAAE;MACT6B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE;EACd,CAAC;EACDR,KAAK,EAAE;IACLS,KAAK,EAAE,WAAW;IAClBC,aAAa,EAAE,sBAAsB;IACrCC,YAAY,EAAE,qBAAqB;IACnCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,WAAW;IACpBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE;EACN,CAAC;EACDC,UAAU,EAAE;IACV1C,SAAS,EAAE;MACT2C,IAAI,EAAE,cAAc;MACpBf,IAAI,EAAE,mBAAmB;MACzBgB,QAAQ,EAAE,mBAAmB;MAC7BC,IAAI,EAAE,uBAAuB;MAC7BC,WAAW,EAAE,+BAA+B;MAC5CC,KAAK,EAAE,YAAY;MACnBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPrB,IAAI,EAAE,MAAM;IACZD,IAAI,EAAE;EACR,CAAC;EACDuB,MAAM,EAAE;IACNlD,SAAS,EAAE;MACTmD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,YAAY;EACrBC,cAAc,EAAE;IACdC,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT;AACF,CAAC"}
1
+ {"version":3,"file":"bg.mjs","names":["badge","open","close","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","ok","cancel","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/bg.ts"],"sourcesContent":["export default {\n badge: 'Значка',\n open: 'Отвори',\n close: 'Затвори',\n dataIterator: {\n noResultsText: 'Не са намерени записи',\n loadingText: 'Зареждане на елементи...',\n },\n dataTable: {\n itemsPerPageText: 'Редове на страница:',\n ariaLabel: {\n sortDescending: 'Подреди в намаляващ ред.',\n sortAscending: 'Подреди в нарастващ ред.',\n sortNone: 'Без подредба.',\n activateNone: 'Активирай за премахване на подредбата.',\n activateDescending: 'Активирай за подредба в намаляващ ред.',\n activateAscending: 'Активирай за подредба в нарастващ ред.',\n },\n sortBy: 'Сортирай по',\n },\n dataFooter: {\n itemsPerPageText: 'Елементи на страница:',\n itemsPerPageAll: 'Всички',\n nextPage: 'Следваща страница',\n prevPage: 'Предишна страница',\n firstPage: 'Първа страница',\n lastPage: 'Последна страница',\n pageText: '{0}-{1} от {2}',\n },\n dateRangeInput: {\n divider: 'до',\n },\n datePicker: {\n ok: 'ОК',\n cancel: 'Отмяна',\n range: {\n title: 'Избор на дати',\n header: 'Въвеждане на дати',\n },\n title: 'Избор на дата',\n header: 'Въвеждане на дата',\n input: {\n placeholder: 'Въведете дата',\n },\n },\n noDataText: 'Няма налични данни',\n carousel: {\n prev: 'Предишна визуализация',\n next: 'Следваща визуализация',\n ariaLabel: {\n delimiter: 'Кадър {0} от {1} на въртележката',\n },\n },\n calendar: {\n moreEvents: 'Още {0}',\n },\n input: {\n clear: 'Изчисти {0}',\n prependAction: '{0} предшестващо действие',\n appendAction: '{0} последващо действие',\n otp: 'Моля, въведете OTP символ {0}',\n },\n fileInput: {\n counter: '{0} файла',\n counterSize: '{0} файла ({1} общо)',\n },\n timePicker: {\n am: 'пр. обяд',\n pm: 'сл. обяд',\n },\n pagination: {\n ariaLabel: {\n root: 'Странициране',\n next: 'Следваща страница',\n previous: 'Предишна страница',\n page: 'Отиди на страница {0}',\n currentPage: 'Текуща страница, Страница {0}',\n first: 'Първа страница',\n last: 'Последна страница',\n },\n },\n stepper: {\n next: 'Следващ',\n prev: 'Предишен',\n },\n rating: {\n ariaLabel: {\n item: 'Оценка {0} от {1}',\n },\n },\n loading: 'Зареждане...',\n infiniteScroll: {\n loadMore: 'Зареди още',\n empty: 'Няма повече',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,QAAQ;EACfC,IAAI,EAAE,QAAQ;EACdC,KAAK,EAAE,SAAS;EAChBC,YAAY,EAAE;IACZC,aAAa,EAAE,uBAAuB;IACtCC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,qBAAqB;IACvCC,SAAS,EAAE;MACTC,cAAc,EAAE,0BAA0B;MAC1CC,aAAa,EAAE,0BAA0B;MACzCC,QAAQ,EAAE,eAAe;MACzBC,YAAY,EAAE,wCAAwC;MACtDC,kBAAkB,EAAE,wCAAwC;MAC5DC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,uBAAuB;IACzCU,eAAe,EAAE,QAAQ;IACzBC,QAAQ,EAAE,mBAAmB;IAC7BC,QAAQ,EAAE,mBAAmB;IAC7BC,SAAS,EAAE,gBAAgB;IAC3BC,QAAQ,EAAE,mBAAmB;IAC7BC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE,QAAQ;IAChBC,KAAK,EAAE;MACLC,KAAK,EAAE,eAAe;MACtBC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,eAAe;IACtBC,MAAM,EAAE,mBAAmB;IAC3BC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,oBAAoB;EAChCC,QAAQ,EAAE;IACRC,IAAI,EAAE,uBAAuB;IAC7BC,IAAI,EAAE,uBAAuB;IAC7B5B,SAAS,EAAE;MACT6B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE;EACd,CAAC;EACDR,KAAK,EAAE;IACLS,KAAK,EAAE,aAAa;IACpBC,aAAa,EAAE,2BAA2B;IAC1CC,YAAY,EAAE,yBAAyB;IACvCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,WAAW;IACpBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,UAAU;IACdC,EAAE,EAAE;EACN,CAAC;EACDC,UAAU,EAAE;IACV1C,SAAS,EAAE;MACT2C,IAAI,EAAE,cAAc;MACpBf,IAAI,EAAE,mBAAmB;MACzBgB,QAAQ,EAAE,mBAAmB;MAC7BC,IAAI,EAAE,uBAAuB;MAC7BC,WAAW,EAAE,+BAA+B;MAC5CC,KAAK,EAAE,gBAAgB;MACvBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPrB,IAAI,EAAE,SAAS;IACfD,IAAI,EAAE;EACR,CAAC;EACDuB,MAAM,EAAE;IACNlD,SAAS,EAAE;MACTmD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,cAAc;EACvBC,cAAc,EAAE;IACdC,QAAQ,EAAE,YAAY;IACtBC,KAAK,EAAE;EACT;AACF,CAAC"}
package/lib/locale/fa.mjs CHANGED
@@ -32,15 +32,15 @@ export default {
32
32
  },
33
33
  datePicker: {
34
34
  ok: 'OK',
35
- cancel: 'Cancel',
35
+ cancel: 'لغو',
36
36
  range: {
37
- title: 'Select dates',
38
- header: 'Enter dates'
37
+ title: 'انتخاب تاریخ‌ها',
38
+ header: 'تاریخ‌ها را وارد کنید'
39
39
  },
40
- title: 'Select date',
41
- header: 'Enter date',
40
+ title: 'انتخاب تاریخ',
41
+ header: 'تاریخ را وارد کنید',
42
42
  input: {
43
- placeholder: 'Enter date'
43
+ placeholder: 'تاریخ را وارد کنید'
44
44
  }
45
45
  },
46
46
  noDataText: 'داده‌ای موجود نیست',
@@ -71,27 +71,27 @@ export default {
71
71
  pagination: {
72
72
  ariaLabel: {
73
73
  root: 'جهت یابی صفحه',
74
- next: 'صفحه بعد',
75
- previous: 'صفحه قبلی',
74
+ next: 'صفحه‌ی بعد',
75
+ previous: 'صفحه‌ی قبلی',
76
76
  page: 'برو صفحه {0}',
77
- currentPage: '{0} صفحه فعلی ، صفحه',
78
- first: 'First page',
79
- last: 'Last page'
77
+ currentPage: '{0} صفحه‌ی فعلی ، صفحه‌ی',
78
+ first: 'صفحه‌ی اول',
79
+ last: 'صفحه‌ی آخر'
80
80
  }
81
81
  },
82
82
  stepper: {
83
- next: 'Next',
84
- prev: 'Previous'
83
+ next: 'بعدی',
84
+ prev: 'قبلی'
85
85
  },
86
86
  rating: {
87
87
  ariaLabel: {
88
88
  item: 'Rating {0} of {1}'
89
89
  }
90
90
  },
91
- loading: 'Loading...',
91
+ loading: 'در حال بارگذاری...',
92
92
  infiniteScroll: {
93
- loadMore: 'Load more',
94
- empty: 'No more'
93
+ loadMore: 'بارگذاری بیشتر',
94
+ empty: 'پایان'
95
95
  }
96
96
  };
97
97
  //# sourceMappingURL=fa.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"fa.mjs","names":["badge","open","close","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","ok","cancel","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/fa.ts"],"sourcesContent":["export default {\n badge: 'نشان',\n open: 'Open',\n close: 'بستن',\n dataIterator: {\n noResultsText: 'نتیجه‌ای یافت نشد',\n loadingText: 'در حال بارگذاری...',\n },\n dataTable: {\n itemsPerPageText: 'ردیف در صفحه:',\n ariaLabel: {\n sortDescending: 'مرتب‌سازی نزولی',\n sortAscending: 'مرتب‌سازی صعودی',\n sortNone: 'بدون مرتب‌سازی',\n activateNone: 'غیرفعال‌سازی مرتب‌سازی',\n activateDescending: 'غیرفعال‌سازی مرتب‌سازی نزولی',\n activateAscending: 'غیرفعال‌سازی مرتب‌سازی صعودی',\n },\n sortBy: 'مرتب‌سازی براساس',\n },\n dataFooter: {\n itemsPerPageText: 'ردیف در صفحه:',\n itemsPerPageAll: 'همه',\n nextPage: 'صفحه‌ی بعد',\n prevPage: 'صفحه‌ی قبل',\n firstPage: 'صفحه‌ی یکم',\n lastPage: 'صفحه‌ی آخر',\n pageText: '{0} تا {1} از {2}',\n },\n dateRangeInput: {\n divider: 'to',\n },\n datePicker: {\n ok: 'OK',\n cancel: 'Cancel',\n range: {\n title: 'Select dates',\n header: 'Enter dates',\n },\n title: 'Select date',\n header: 'Enter date',\n input: {\n placeholder: 'Enter date',\n },\n },\n noDataText: 'داده‌ای موجود نیست',\n carousel: {\n prev: 'اسلاید قبلی',\n next: 'اسلاید بعدی',\n ariaLabel: {\n delimiter: 'اسلاید {0} از {1}',\n },\n },\n calendar: {\n moreEvents: '{بیشتر {0',\n },\n input: {\n clear: 'Clear {0}',\n prependAction: '{0} prepended action',\n appendAction: '{0} appended action',\n otp: 'Please enter OTP character {0}',\n },\n fileInput: {\n counter: '{0} پرونده',\n counterSize: '{0} پرونده ({1} در کل)',\n },\n timePicker: {\n am: 'قبل از ظهر',\n pm: 'بعد از ظهر',\n },\n pagination: {\n ariaLabel: {\n root: 'جهت یابی صفحه',\n next: 'صفحه بعد',\n previous: 'صفحه قبلی',\n page: 'برو صفحه {0}',\n currentPage: '{0} صفحه فعلی ، صفحه',\n first: 'First page',\n last: 'Last page',\n },\n },\n stepper: {\n next: 'Next',\n prev: 'Previous',\n },\n rating: {\n ariaLabel: {\n item: 'Rating {0} of {1}',\n },\n },\n loading: 'Loading...',\n infiniteScroll: {\n loadMore: 'Load more',\n empty: 'No more',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,MAAM;EACbC,YAAY,EAAE;IACZC,aAAa,EAAE,mBAAmB;IAClCC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,eAAe;IACjCC,SAAS,EAAE;MACTC,cAAc,EAAE,iBAAiB;MACjCC,aAAa,EAAE,iBAAiB;MAChCC,QAAQ,EAAE,gBAAgB;MAC1BC,YAAY,EAAE,wBAAwB;MACtCC,kBAAkB,EAAE,8BAA8B;MAClDC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,eAAe;IACjCU,eAAe,EAAE,KAAK;IACtBC,QAAQ,EAAE,YAAY;IACtBC,QAAQ,EAAE,YAAY;IACtBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,YAAY;IACtBC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE,QAAQ;IAChBC,KAAK,EAAE;MACLC,KAAK,EAAE,cAAc;MACrBC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,aAAa;IACpBC,MAAM,EAAE,YAAY;IACpBC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,oBAAoB;EAChCC,QAAQ,EAAE;IACRC,IAAI,EAAE,aAAa;IACnBC,IAAI,EAAE,aAAa;IACnB5B,SAAS,EAAE;MACT6B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE;EACd,CAAC;EACDR,KAAK,EAAE;IACLS,KAAK,EAAE,WAAW;IAClBC,aAAa,EAAE,sBAAsB;IACrCC,YAAY,EAAE,qBAAqB;IACnCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,YAAY;IACrBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,YAAY;IAChBC,EAAE,EAAE;EACN,CAAC;EACDC,UAAU,EAAE;IACV1C,SAAS,EAAE;MACT2C,IAAI,EAAE,eAAe;MACrBf,IAAI,EAAE,UAAU;MAChBgB,QAAQ,EAAE,WAAW;MACrBC,IAAI,EAAE,cAAc;MACpBC,WAAW,EAAE,sBAAsB;MACnCC,KAAK,EAAE,YAAY;MACnBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPrB,IAAI,EAAE,MAAM;IACZD,IAAI,EAAE;EACR,CAAC;EACDuB,MAAM,EAAE;IACNlD,SAAS,EAAE;MACTmD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,YAAY;EACrBC,cAAc,EAAE;IACdC,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT;AACF,CAAC"}
1
+ {"version":3,"file":"fa.mjs","names":["badge","open","close","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","ok","cancel","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/fa.ts"],"sourcesContent":["export default {\n badge: 'نشان',\n open: 'Open',\n close: 'بستن',\n dataIterator: {\n noResultsText: 'نتیجه‌ای یافت نشد',\n loadingText: 'در حال بارگذاری...',\n },\n dataTable: {\n itemsPerPageText: 'ردیف در صفحه:',\n ariaLabel: {\n sortDescending: 'مرتب‌سازی نزولی',\n sortAscending: 'مرتب‌سازی صعودی',\n sortNone: 'بدون مرتب‌سازی',\n activateNone: 'غیرفعال‌سازی مرتب‌سازی',\n activateDescending: 'غیرفعال‌سازی مرتب‌سازی نزولی',\n activateAscending: 'غیرفعال‌سازی مرتب‌سازی صعودی',\n },\n sortBy: 'مرتب‌سازی براساس',\n },\n dataFooter: {\n itemsPerPageText: 'ردیف در صفحه:',\n itemsPerPageAll: 'همه',\n nextPage: 'صفحه‌ی بعد',\n prevPage: 'صفحه‌ی قبل',\n firstPage: 'صفحه‌ی یکم',\n lastPage: 'صفحه‌ی آخر',\n pageText: '{0} تا {1} از {2}',\n },\n dateRangeInput: {\n divider: 'to',\n },\n datePicker: {\n ok: 'OK',\n cancel: 'لغو',\n range: {\n title: 'انتخاب تاریخ‌ها',\n header: 'تاریخ‌ها را وارد کنید',\n },\n title: 'انتخاب تاریخ',\n header: 'تاریخ را وارد کنید',\n input: {\n placeholder: 'تاریخ را وارد کنید',\n },\n },\n noDataText: 'داده‌ای موجود نیست',\n carousel: {\n prev: 'اسلاید قبلی',\n next: 'اسلاید بعدی',\n ariaLabel: {\n delimiter: 'اسلاید {0} از {1}',\n },\n },\n calendar: {\n moreEvents: '{بیشتر {0',\n },\n input: {\n clear: 'Clear {0}',\n prependAction: '{0} prepended action',\n appendAction: '{0} appended action',\n otp: 'Please enter OTP character {0}',\n },\n fileInput: {\n counter: '{0} پرونده',\n counterSize: '{0} پرونده ({1} در کل)',\n },\n timePicker: {\n am: 'قبل از ظهر',\n pm: 'بعد از ظهر',\n },\n pagination: {\n ariaLabel: {\n root: 'جهت یابی صفحه',\n next: 'صفحه‌ی بعد',\n previous: 'صفحه‌ی قبلی',\n page: 'برو صفحه {0}',\n currentPage: '{0} صفحه‌ی فعلی ، صفحه‌ی',\n first: 'صفحه‌ی اول',\n last: 'صفحه‌ی آخر',\n },\n },\n stepper: {\n next: 'بعدی',\n prev: 'قبلی',\n },\n rating: {\n ariaLabel: {\n item: 'Rating {0} of {1}',\n },\n },\n loading: 'در حال بارگذاری...',\n infiniteScroll: {\n loadMore: 'بارگذاری بیشتر',\n empty: 'پایان',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,MAAM;EACbC,YAAY,EAAE;IACZC,aAAa,EAAE,mBAAmB;IAClCC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,eAAe;IACjCC,SAAS,EAAE;MACTC,cAAc,EAAE,iBAAiB;MACjCC,aAAa,EAAE,iBAAiB;MAChCC,QAAQ,EAAE,gBAAgB;MAC1BC,YAAY,EAAE,wBAAwB;MACtCC,kBAAkB,EAAE,8BAA8B;MAClDC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,eAAe;IACjCU,eAAe,EAAE,KAAK;IACtBC,QAAQ,EAAE,YAAY;IACtBC,QAAQ,EAAE,YAAY;IACtBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,YAAY;IACtBC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE,KAAK;IACbC,KAAK,EAAE;MACLC,KAAK,EAAE,iBAAiB;MACxBC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,cAAc;IACrBC,MAAM,EAAE,oBAAoB;IAC5BC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,oBAAoB;EAChCC,QAAQ,EAAE;IACRC,IAAI,EAAE,aAAa;IACnBC,IAAI,EAAE,aAAa;IACnB5B,SAAS,EAAE;MACT6B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE;EACd,CAAC;EACDR,KAAK,EAAE;IACLS,KAAK,EAAE,WAAW;IAClBC,aAAa,EAAE,sBAAsB;IACrCC,YAAY,EAAE,qBAAqB;IACnCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,YAAY;IACrBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,YAAY;IAChBC,EAAE,EAAE;EACN,CAAC;EACDC,UAAU,EAAE;IACV1C,SAAS,EAAE;MACT2C,IAAI,EAAE,eAAe;MACrBf,IAAI,EAAE,YAAY;MAClBgB,QAAQ,EAAE,aAAa;MACvBC,IAAI,EAAE,cAAc;MACpBC,WAAW,EAAE,0BAA0B;MACvCC,KAAK,EAAE,YAAY;MACnBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPrB,IAAI,EAAE,MAAM;IACZD,IAAI,EAAE;EACR,CAAC;EACDuB,MAAM,EAAE;IACNlD,SAAS,EAAE;MACTmD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,oBAAoB;EAC7BC,cAAc,EAAE;IACdC,QAAQ,EAAE,gBAAgB;IAC1BC,KAAK,EAAE;EACT;AACF,CAAC"}
@@ -24,19 +24,19 @@
24
24
  &[aria-haspopup="menu"][aria-expanded="true"]
25
25
  @include active-states($selector)
26
26
 
27
- @mixin active-states ($selector)
27
+ @mixin active-states ($selector, $base: map.get(settings.$states, 'activated'))
28
28
  #{$selector}
29
- opacity: calc(#{map.get(settings.$states, 'activated')} * var(--v-theme-overlay-multiplier))
29
+ opacity: calc(#{$base} * var(--v-theme-overlay-multiplier))
30
30
 
31
31
  &:hover
32
32
  #{$selector}
33
- opacity: calc((#{map.get(settings.$states, 'activated')} + #{map.get(settings.$states, 'hover')}) * var(--v-theme-overlay-multiplier))
33
+ opacity: calc((#{$base} + #{map.get(settings.$states, 'hover')}) * var(--v-theme-overlay-multiplier))
34
34
 
35
35
  &:focus-visible
36
36
  #{$selector}
37
- opacity: calc((#{map.get(settings.$states, 'activated')} + #{map.get(settings.$states, 'focus')}) * var(--v-theme-overlay-multiplier))
37
+ opacity: calc((#{$base} + #{map.get(settings.$states, 'focus')}) * var(--v-theme-overlay-multiplier))
38
38
 
39
39
  @supports not selector(:focus-visible)
40
40
  &:focus
41
41
  #{$selector}
42
- opacity: calc((#{map.get(settings.$states, 'activated')} + #{map.get(settings.$states, 'focus')}) * var(--v-theme-overlay-multiplier))
42
+ opacity: calc((#{$base} + #{map.get(settings.$states, 'focus')}) * var(--v-theme-overlay-multiplier))
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vuetify",
3
3
  "description": "Vue Material Component Framework",
4
- "version": "3.3.14",
4
+ "version": "3.3.15",
5
5
  "author": {
6
6
  "name": "John Leider",
7
7
  "email": "john@vuetifyjs.com"
@@ -200,5 +200,5 @@
200
200
  "attributes": "dist/json/attributes.json"
201
201
  },
202
202
  "web-types": "dist/json/web-types.json",
203
- "gitHead": "4d1d423499bad2667ca6a3d0547b04c9870a2f18"
203
+ "gitHead": "8464ab6caf739c45fb00815d1e8a87d8ef53f9a4"
204
204
  }