vuetify 3.1.1 → 3.1.3

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 (135) hide show
  1. package/dist/json/attributes.json +495 -483
  2. package/dist/json/importMap.json +58 -58
  3. package/dist/json/tags.json +4 -1
  4. package/dist/json/web-types.json +892 -839
  5. package/dist/vuetify-labs.css +356 -346
  6. package/dist/vuetify-labs.d.ts +257 -179
  7. package/dist/vuetify-labs.esm.js +432 -278
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +431 -277
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +94 -84
  12. package/dist/vuetify.d.ts +261 -194
  13. package/dist/vuetify.esm.js +346 -242
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +345 -241
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +731 -721
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.ts +2 -2
  21. package/lib/blueprints/md1.d.ts +2 -2
  22. package/lib/blueprints/md2.d.ts +2 -2
  23. package/lib/blueprints/md3.d.ts +2 -2
  24. package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -2
  25. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  26. package/lib/components/VAutocomplete/index.d.ts +43 -20
  27. package/lib/components/VBtn/VBtn.mjs +16 -5
  28. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  29. package/lib/components/VCard/VCard.mjs +5 -2
  30. package/lib/components/VCard/VCard.mjs.map +1 -1
  31. package/lib/components/VCard/index.d.ts +8 -2
  32. package/lib/components/VChip/VChip.mjs +18 -4
  33. package/lib/components/VChip/VChip.mjs.map +1 -1
  34. package/lib/components/VChip/index.d.ts +15 -2
  35. package/lib/components/VChipGroup/VChipGroup.mjs +1 -0
  36. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  37. package/lib/components/VCombobox/VCombobox.mjs +5 -4
  38. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  39. package/lib/components/VCombobox/index.d.ts +43 -20
  40. package/lib/components/VDefaultsProvider/index.d.ts +5 -4
  41. package/lib/components/VDialog/VDialog.mjs +6 -5
  42. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  43. package/lib/components/VDialog/index.d.ts +57 -34
  44. package/lib/components/VDivider/VDivider.mjs +6 -6
  45. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  46. package/lib/components/VField/VField.mjs +28 -26
  47. package/lib/components/VField/VField.mjs.map +1 -1
  48. package/lib/components/VFileInput/VFileInput.css +1 -0
  49. package/lib/components/VFileInput/VFileInput.mjs +7 -4
  50. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  51. package/lib/components/VFileInput/VFileInput.sass +1 -0
  52. package/lib/components/VForm/index.d.ts +0 -3
  53. package/lib/components/VGrid/VGrid.css +5 -0
  54. package/lib/components/VGrid/VGrid.sass +5 -0
  55. package/lib/components/VList/VList.mjs +4 -1
  56. package/lib/components/VList/VList.mjs.map +1 -1
  57. package/lib/components/VList/VListItem.css +1 -1
  58. package/lib/components/VList/VListItem.mjs +34 -20
  59. package/lib/components/VList/VListItem.mjs.map +1 -1
  60. package/lib/components/VList/VListItem.sass +1 -1
  61. package/lib/components/VList/index.d.ts +20 -1
  62. package/lib/components/VMenu/VMenu.mjs +6 -5
  63. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  64. package/lib/components/VMenu/index.d.ts +57 -34
  65. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +4 -0
  66. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  67. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  68. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +4 -0
  69. package/lib/components/VNavigationDrawer/index.d.ts +3 -3
  70. package/lib/components/VNavigationDrawer/touch.mjs +7 -6
  71. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  72. package/lib/components/VOverlay/index.d.ts +34 -11
  73. package/lib/components/VOverlay/locationStrategies.mjs +40 -29
  74. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  75. package/lib/components/VOverlay/scrollStrategies.mjs +25 -16
  76. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  77. package/lib/components/VPagination/VPagination.mjs +1 -1
  78. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  79. package/lib/components/VProgressLinear/VProgressLinear.mjs +13 -1
  80. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  81. package/lib/components/VProgressLinear/index.d.ts +18 -0
  82. package/lib/components/VSelect/VSelect.mjs +4 -4
  83. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  84. package/lib/components/VSelect/index.d.ts +43 -20
  85. package/lib/components/VSlider/VSliderThumb.mjs +5 -1
  86. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  87. package/lib/components/VSnackbar/index.d.ts +42 -19
  88. package/lib/components/VTable/VTable.css +4 -4
  89. package/lib/components/VTable/VTable.sass +2 -2
  90. package/lib/components/VTooltip/VTooltip.mjs +4 -3
  91. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  92. package/lib/components/VTooltip/index.d.ts +57 -34
  93. package/lib/components/index.d.ts +247 -179
  94. package/lib/composables/defaults.mjs +1 -1
  95. package/lib/composables/defaults.mjs.map +1 -1
  96. package/lib/composables/filter.mjs +3 -3
  97. package/lib/composables/filter.mjs.map +1 -1
  98. package/lib/composables/form.mjs +0 -1
  99. package/lib/composables/form.mjs.map +1 -1
  100. package/lib/composables/teleport.mjs +6 -7
  101. package/lib/composables/teleport.mjs.map +1 -1
  102. package/lib/composables/toggleScope.mjs +14 -7
  103. package/lib/composables/toggleScope.mjs.map +1 -1
  104. package/lib/entry-bundler.mjs +1 -1
  105. package/lib/framework.mjs +1 -1
  106. package/lib/index.d.ts +17 -17
  107. package/lib/labs/VDataTable/VDataTable.mjs +10 -6
  108. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  109. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +3 -3
  110. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  111. package/lib/labs/VDataTable/VDataTableRows.mjs +36 -8
  112. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  113. package/lib/labs/VDataTable/VDataTableServer.mjs +23 -10
  114. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  115. package/lib/labs/VDataTable/VDataTableVirtual.mjs +6 -2
  116. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  117. package/lib/labs/VDataTable/composables/group.mjs +9 -4
  118. package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
  119. package/lib/labs/VDataTable/composables/options.mjs +4 -2
  120. package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
  121. package/lib/labs/VDataTable/composables/sort.mjs +3 -5
  122. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  123. package/lib/labs/VDataTable/index.d.ts +11 -0
  124. package/lib/labs/components.d.ts +11 -0
  125. package/lib/locale/adapters/vue-i18n.mjs +12 -2
  126. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  127. package/lib/locale/en.mjs +2 -2
  128. package/lib/locale/en.mjs.map +1 -1
  129. package/lib/locale/sv.mjs +7 -7
  130. package/lib/locale/sv.mjs.map +1 -1
  131. package/lib/util/defineComponent.mjs +21 -18
  132. package/lib/util/defineComponent.mjs.map +1 -1
  133. package/lib/util/helpers.mjs +5 -1
  134. package/lib/util/helpers.mjs.map +1 -1
  135. package/package.json +2 -2
@@ -32,6 +32,10 @@ export const VSliderThumb = defineComponent({
32
32
  position: {
33
33
  type: Number,
34
34
  required: true
35
+ },
36
+ ripple: {
37
+ type: Boolean,
38
+ default: true
35
39
  }
36
40
  },
37
41
  emits: {
@@ -132,7 +136,7 @@ export const VSliderThumb = defineComponent({
132
136
  }, null), _withDirectives(_createVNode("div", {
133
137
  "class": ['v-slider-thumb__ripple', textColorClasses.value],
134
138
  "style": textColorStyles.value
135
- }, null), [[_resolveDirective("ripple"), true, null, {
139
+ }, null), [[_resolveDirective("ripple"), props.ripple, null, {
136
140
  circle: true,
137
141
  center: true
138
142
  }]]), _createVNode(VScaleTransition, {
@@ -1 +1 @@
1
- {"version":3,"file":"VSliderThumb.mjs","names":["VScaleTransition","VSliderSymbol","Ripple","useElevation","useTextColor","computed","inject","convertToUnit","defineComponent","keyValues","useRender","VSliderThumb","name","directives","props","focused","Boolean","max","type","Number","required","min","modelValue","position","emits","v","setup","slots","emit","slider","Error","thumbColor","step","vertical","disabled","thumbSize","thumbLabel","direction","readonly","elevation","isReversed","horizontalDirection","mousePressed","decimals","textColorClasses","textColorStyles","pageup","pagedown","end","home","left","right","down","up","relevantKeys","multipliers","value","parseKeydown","e","includes","key","preventDefault","_step","steps","increase","multiplier","shiftKey","ctrlKey","Math","onKeydown","newValue","positionPercentage","elevationClasses","undefined","toFixed"],"sources":["../../../src/components/VSlider/VSliderThumb.tsx"],"sourcesContent":["// Styles\nimport './VSliderThumb.sass'\n\n// Components\nimport { VScaleTransition } from '../transitions'\nimport { VSliderSymbol } from './slider'\n\n// Directives\nimport Ripple from '@/directives/ripple'\n\n// Composables\nimport { useElevation } from '@/composables/elevation'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { convertToUnit, defineComponent, keyValues, useRender } from '@/util'\n\nexport const VSliderThumb = defineComponent({\n name: 'VSliderThumb',\n\n directives: { Ripple },\n\n props: {\n focused: Boolean,\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n modelValue: {\n type: Number,\n required: true,\n },\n position: {\n type: Number,\n required: true,\n },\n },\n\n emits: {\n 'update:modelValue': (v: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const slider = inject(VSliderSymbol)\n\n if (!slider) throw new Error('[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider')\n\n const {\n thumbColor,\n step,\n vertical,\n disabled,\n thumbSize,\n thumbLabel,\n direction,\n readonly,\n elevation,\n isReversed,\n horizontalDirection,\n mousePressed,\n decimals,\n } = slider\n\n const { textColorClasses, textColorStyles } = useTextColor(thumbColor)\n\n const { pageup, pagedown, end, home, left, right, down, up } = keyValues\n const relevantKeys = [pageup, pagedown, end, home, left, right, down, up]\n\n const multipliers = computed(() => {\n if (step.value) return [1, 2, 3]\n else return [1, 5, 10]\n })\n\n function parseKeydown (e: KeyboardEvent, value: number) {\n if (!relevantKeys.includes(e.key)) return\n\n e.preventDefault()\n\n const _step = step.value || 0.1\n const steps = (props.max - props.min) / _step\n if ([left, right, down, up].includes(e.key)) {\n const increase = horizontalDirection.value === 'rtl' ? [left, up] : [right, up]\n const direction = increase.includes(e.key) ? 1 : -1\n const multiplier = e.shiftKey ? 2 : (e.ctrlKey ? 1 : 0)\n\n value = value + (direction * _step * multipliers.value[multiplier])\n } else if (e.key === home) {\n value = props.min\n } else if (e.key === end) {\n value = props.max\n } else {\n const direction = e.key === pagedown ? 1 : -1\n value = value - (direction * _step * (steps > 100 ? steps / 10 : 10))\n }\n\n return Math.max(props.min, Math.min(props.max, value))\n }\n\n function onKeydown (e: KeyboardEvent) {\n const newValue = parseKeydown(e, props.modelValue)\n\n newValue != null && emit('update:modelValue', newValue)\n }\n\n useRender(() => {\n const positionPercentage = convertToUnit((vertical.value || isReversed.value) ? 100 - props.position : props.position, '%')\n const { elevationClasses } = useElevation(computed(() => !disabled.value ? elevation.value : undefined))\n\n return (\n <div\n class={[\n 'v-slider-thumb',\n {\n 'v-slider-thumb--focused': props.focused,\n 'v-slider-thumb--pressed': props.focused && mousePressed.value,\n },\n ]}\n style={{\n '--v-slider-thumb-position': positionPercentage,\n '--v-slider-thumb-size': convertToUnit(thumbSize.value),\n }}\n role=\"slider\"\n tabindex={ disabled.value ? -1 : 0 }\n aria-valuemin={ props.min }\n aria-valuemax={ props.max }\n aria-valuenow={ props.modelValue }\n aria-readonly={ readonly.value }\n aria-orientation={ direction.value }\n onKeydown={ !readonly.value ? onKeydown : undefined }\n >\n <div\n class={[\n 'v-slider-thumb__surface',\n textColorClasses.value,\n elevationClasses.value,\n ]}\n style={{\n ...textColorStyles.value,\n }}\n />\n <div\n class={[\n 'v-slider-thumb__ripple',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n v-ripple={[true, null, ['circle', 'center']]}\n />\n <VScaleTransition origin=\"bottom center\">\n <div\n class=\"v-slider-thumb__label-container\"\n v-show={ (thumbLabel.value && props.focused) || thumbLabel.value === 'always' }\n >\n <div\n class={[\n 'v-slider-thumb__label',\n ]}\n >\n <div>\n { slots['thumb-label']?.({ modelValue: props.modelValue }) ?? props.modelValue.toFixed(step.value ? decimals.value : 1) }\n </div>\n </div>\n </div>\n </VScaleTransition>\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VSliderThumb = InstanceType<typeof VSliderThumb>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VSliderThumb.mjs","names":["VScaleTransition","VSliderSymbol","Ripple","useElevation","useTextColor","computed","inject","convertToUnit","defineComponent","keyValues","useRender","VSliderThumb","name","directives","props","focused","Boolean","max","type","Number","required","min","modelValue","position","ripple","default","emits","v","setup","slots","emit","slider","Error","thumbColor","step","vertical","disabled","thumbSize","thumbLabel","direction","readonly","elevation","isReversed","horizontalDirection","mousePressed","decimals","textColorClasses","textColorStyles","pageup","pagedown","end","home","left","right","down","up","relevantKeys","multipliers","value","parseKeydown","e","includes","key","preventDefault","_step","steps","increase","multiplier","shiftKey","ctrlKey","Math","onKeydown","newValue","positionPercentage","elevationClasses","undefined","toFixed"],"sources":["../../../src/components/VSlider/VSliderThumb.tsx"],"sourcesContent":["// Styles\nimport './VSliderThumb.sass'\n\n// Components\nimport { VScaleTransition } from '../transitions'\nimport { VSliderSymbol } from './slider'\n\n// Directives\nimport Ripple from '@/directives/ripple'\n\n// Composables\nimport { useElevation } from '@/composables/elevation'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { convertToUnit, defineComponent, keyValues, useRender } from '@/util'\n\nexport const VSliderThumb = defineComponent({\n name: 'VSliderThumb',\n\n directives: { Ripple },\n\n props: {\n focused: Boolean,\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n modelValue: {\n type: Number,\n required: true,\n },\n position: {\n type: Number,\n required: true,\n },\n ripple: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: {\n 'update:modelValue': (v: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const slider = inject(VSliderSymbol)\n\n if (!slider) throw new Error('[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider')\n\n const {\n thumbColor,\n step,\n vertical,\n disabled,\n thumbSize,\n thumbLabel,\n direction,\n readonly,\n elevation,\n isReversed,\n horizontalDirection,\n mousePressed,\n decimals,\n } = slider\n\n const { textColorClasses, textColorStyles } = useTextColor(thumbColor)\n\n const { pageup, pagedown, end, home, left, right, down, up } = keyValues\n const relevantKeys = [pageup, pagedown, end, home, left, right, down, up]\n\n const multipliers = computed(() => {\n if (step.value) return [1, 2, 3]\n else return [1, 5, 10]\n })\n\n function parseKeydown (e: KeyboardEvent, value: number) {\n if (!relevantKeys.includes(e.key)) return\n\n e.preventDefault()\n\n const _step = step.value || 0.1\n const steps = (props.max - props.min) / _step\n if ([left, right, down, up].includes(e.key)) {\n const increase = horizontalDirection.value === 'rtl' ? [left, up] : [right, up]\n const direction = increase.includes(e.key) ? 1 : -1\n const multiplier = e.shiftKey ? 2 : (e.ctrlKey ? 1 : 0)\n\n value = value + (direction * _step * multipliers.value[multiplier])\n } else if (e.key === home) {\n value = props.min\n } else if (e.key === end) {\n value = props.max\n } else {\n const direction = e.key === pagedown ? 1 : -1\n value = value - (direction * _step * (steps > 100 ? steps / 10 : 10))\n }\n\n return Math.max(props.min, Math.min(props.max, value))\n }\n\n function onKeydown (e: KeyboardEvent) {\n const newValue = parseKeydown(e, props.modelValue)\n\n newValue != null && emit('update:modelValue', newValue)\n }\n\n useRender(() => {\n const positionPercentage = convertToUnit((vertical.value || isReversed.value) ? 100 - props.position : props.position, '%')\n const { elevationClasses } = useElevation(computed(() => !disabled.value ? elevation.value : undefined))\n\n return (\n <div\n class={[\n 'v-slider-thumb',\n {\n 'v-slider-thumb--focused': props.focused,\n 'v-slider-thumb--pressed': props.focused && mousePressed.value,\n },\n ]}\n style={{\n '--v-slider-thumb-position': positionPercentage,\n '--v-slider-thumb-size': convertToUnit(thumbSize.value),\n }}\n role=\"slider\"\n tabindex={ disabled.value ? -1 : 0 }\n aria-valuemin={ props.min }\n aria-valuemax={ props.max }\n aria-valuenow={ props.modelValue }\n aria-readonly={ readonly.value }\n aria-orientation={ direction.value }\n onKeydown={ !readonly.value ? onKeydown : undefined }\n >\n <div\n class={[\n 'v-slider-thumb__surface',\n textColorClasses.value,\n elevationClasses.value,\n ]}\n style={{\n ...textColorStyles.value,\n }}\n />\n <div\n class={[\n 'v-slider-thumb__ripple',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n v-ripple={[props.ripple, null, ['circle', 'center']]}\n />\n <VScaleTransition origin=\"bottom center\">\n <div\n class=\"v-slider-thumb__label-container\"\n v-show={ (thumbLabel.value && props.focused) || thumbLabel.value === 'always' }\n >\n <div\n class={[\n 'v-slider-thumb__label',\n ]}\n >\n <div>\n { slots['thumb-label']?.({ modelValue: props.modelValue }) ?? props.modelValue.toFixed(step.value ? decimals.value : 1) }\n </div>\n </div>\n </div>\n </VScaleTransition>\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VSliderThumb = InstanceType<typeof VSliderThumb>\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as vue from 'vue';
2
- import { Ref, VNodeChild } from 'vue';
2
+ import { Ref, EffectScope, VNodeChild } from 'vue';
3
3
 
4
4
  interface ScrollStrategyData {
5
5
  root: Ref<HTMLElement | undefined>;
@@ -8,7 +8,7 @@ interface ScrollStrategyData {
8
8
  isActive: Ref<boolean>;
9
9
  updateLocation: Ref<((e: Event) => void) | undefined>;
10
10
  }
11
- declare type ScrollStrategyFn = (data: ScrollStrategyData, props: StrategyProps$1) => void;
11
+ declare type ScrollStrategyFn = (data: ScrollStrategyData, props: StrategyProps$1, scope: EffectScope) => void;
12
12
  declare const scrollStrategies: {
13
13
  none: null;
14
14
  close: typeof closeScrollStrategy;
@@ -21,7 +21,24 @@ interface StrategyProps$1 {
21
21
  }
22
22
  declare function closeScrollStrategy(data: ScrollStrategyData): void;
23
23
  declare function blockScrollStrategy(data: ScrollStrategyData, props: StrategyProps$1): void;
24
- declare function repositionScrollStrategy(data: ScrollStrategyData): void;
24
+ declare function repositionScrollStrategy(data: ScrollStrategyData, props: StrategyProps$1, scope: EffectScope): void;
25
+
26
+ declare class Box {
27
+ x: number;
28
+ y: number;
29
+ width: number;
30
+ height: number;
31
+ constructor({ x, y, width, height }: {
32
+ x: number;
33
+ y: number;
34
+ width: number;
35
+ height: number;
36
+ });
37
+ get top(): number;
38
+ get bottom(): number;
39
+ get left(): number;
40
+ get right(): number;
41
+ }
25
42
 
26
43
  declare const block: readonly ["top", "bottom"];
27
44
  declare const inline: readonly ["start", "end", "left", "right"];
@@ -69,7 +86,13 @@ interface StrategyProps {
69
86
  }
70
87
  declare function staticLocationStrategy(): void;
71
88
  declare function connectedLocationStrategy(data: LocationStrategyData, props: StrategyProps, contentStyles: Ref<Record<string, string>>): {
72
- updateLocation: () => void;
89
+ updateLocation: () => {
90
+ available: {
91
+ x: number;
92
+ y: number;
93
+ };
94
+ contentBox: Box;
95
+ } | undefined;
73
96
  };
74
97
 
75
98
  declare const VSnackbar: {
@@ -324,7 +347,7 @@ declare const VSnackbar: {
324
347
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
325
348
  updateLocation: (e: Event) => void;
326
349
  } | undefined);
327
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
350
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
328
351
  closeOnBack: boolean;
329
352
  contained: boolean;
330
353
  noClickAnimation: boolean;
@@ -341,7 +364,7 @@ declare const VSnackbar: {
341
364
  };
342
365
  theme: StringConstructor;
343
366
  scrollStrategy: {
344
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
367
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
345
368
  default: string;
346
369
  validator: (val: any) => boolean;
347
370
  };
@@ -435,7 +458,7 @@ declare const VSnackbar: {
435
458
  };
436
459
  theme: StringConstructor;
437
460
  scrollStrategy: {
438
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
461
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
439
462
  default: string;
440
463
  validator: (val: any) => boolean;
441
464
  };
@@ -535,7 +558,7 @@ declare const VSnackbar: {
535
558
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
536
559
  updateLocation: (e: Event) => void;
537
560
  } | undefined);
538
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
561
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
539
562
  closeOnBack: boolean;
540
563
  contained: boolean;
541
564
  noClickAnimation: boolean;
@@ -572,7 +595,7 @@ declare const VSnackbar: {
572
595
  };
573
596
  theme: StringConstructor;
574
597
  scrollStrategy: {
575
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
598
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
576
599
  default: string;
577
600
  validator: (val: any) => boolean;
578
601
  };
@@ -841,7 +864,7 @@ declare const VSnackbar: {
841
864
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
842
865
  updateLocation: (e: Event) => void;
843
866
  } | undefined);
844
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
867
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
845
868
  closeOnBack: boolean;
846
869
  contained: boolean;
847
870
  noClickAnimation: boolean;
@@ -858,7 +881,7 @@ declare const VSnackbar: {
858
881
  };
859
882
  theme: StringConstructor;
860
883
  scrollStrategy: {
861
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
884
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
862
885
  default: string;
863
886
  validator: (val: any) => boolean;
864
887
  };
@@ -952,7 +975,7 @@ declare const VSnackbar: {
952
975
  };
953
976
  theme: StringConstructor;
954
977
  scrollStrategy: {
955
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
978
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
956
979
  default: string;
957
980
  validator: (val: any) => boolean;
958
981
  };
@@ -1052,7 +1075,7 @@ declare const VSnackbar: {
1052
1075
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1053
1076
  updateLocation: (e: Event) => void;
1054
1077
  } | undefined);
1055
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1078
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1056
1079
  closeOnBack: boolean;
1057
1080
  contained: boolean;
1058
1081
  noClickAnimation: boolean;
@@ -1089,7 +1112,7 @@ declare const VSnackbar: {
1089
1112
  };
1090
1113
  theme: StringConstructor;
1091
1114
  scrollStrategy: {
1092
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1115
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1093
1116
  default: string;
1094
1117
  validator: (val: any) => boolean;
1095
1118
  };
@@ -1314,7 +1337,7 @@ declare const VSnackbar: {
1314
1337
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1315
1338
  updateLocation: (e: Event) => void;
1316
1339
  } | undefined);
1317
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1340
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1318
1341
  closeOnBack: boolean;
1319
1342
  contained: boolean;
1320
1343
  noClickAnimation: boolean;
@@ -1331,7 +1354,7 @@ declare const VSnackbar: {
1331
1354
  };
1332
1355
  theme: StringConstructor;
1333
1356
  scrollStrategy: {
1334
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1357
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1335
1358
  default: string;
1336
1359
  validator: (val: any) => boolean;
1337
1360
  };
@@ -1425,7 +1448,7 @@ declare const VSnackbar: {
1425
1448
  };
1426
1449
  theme: StringConstructor;
1427
1450
  scrollStrategy: {
1428
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1451
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1429
1452
  default: string;
1430
1453
  validator: (val: any) => boolean;
1431
1454
  };
@@ -1525,7 +1548,7 @@ declare const VSnackbar: {
1525
1548
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1526
1549
  updateLocation: (e: Event) => void;
1527
1550
  } | undefined);
1528
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1551
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1529
1552
  closeOnBack: boolean;
1530
1553
  contained: boolean;
1531
1554
  noClickAnimation: boolean;
@@ -1562,7 +1585,7 @@ declare const VSnackbar: {
1562
1585
  };
1563
1586
  theme: StringConstructor;
1564
1587
  scrollStrategy: {
1565
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1588
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1566
1589
  default: string;
1567
1590
  validator: (val: any) => boolean;
1568
1591
  };
@@ -32,7 +32,7 @@
32
32
  }
33
33
 
34
34
  .v-table {
35
- --v-table-header-height: $table-header-height;
35
+ --v-table-header-height: 56px;
36
36
  border-radius: inherit;
37
37
  line-height: 1.5;
38
38
  max-width: 100%;
@@ -60,7 +60,7 @@
60
60
  .v-table--density-default > .v-table__wrapper > table > tbody > tr > th,
61
61
  .v-table--density-default > .v-table__wrapper > table > thead > tr > th,
62
62
  .v-table--density-default > .v-table__wrapper > table > tfoot > tr > th {
63
- height: 56px;
63
+ height: calc(var(--v-table-header-height) + 0px);
64
64
  }
65
65
  .v-table--density-default > .v-table__wrapper > table > tbody > tr > td,
66
66
  .v-table--density-default > .v-table__wrapper > table > thead > tr > td,
@@ -71,7 +71,7 @@
71
71
  .v-table--density-comfortable > .v-table__wrapper > table > tbody > tr > th,
72
72
  .v-table--density-comfortable > .v-table__wrapper > table > thead > tr > th,
73
73
  .v-table--density-comfortable > .v-table__wrapper > table > tfoot > tr > th {
74
- height: 48px;
74
+ height: calc(var(--v-table-header-height) - 8px);
75
75
  }
76
76
  .v-table--density-comfortable > .v-table__wrapper > table > tbody > tr > td,
77
77
  .v-table--density-comfortable > .v-table__wrapper > table > thead > tr > td,
@@ -82,7 +82,7 @@
82
82
  .v-table--density-compact > .v-table__wrapper > table > tbody > tr > th,
83
83
  .v-table--density-compact > .v-table__wrapper > table > thead > tr > th,
84
84
  .v-table--density-compact > .v-table__wrapper > table > tfoot > tr > th {
85
- height: 40px;
85
+ height: calc(var(--v-table-header-height) - 16px);
86
86
  }
87
87
  .v-table--density-compact > .v-table__wrapper > table > tbody > tr > td,
88
88
  .v-table--density-compact > .v-table__wrapper > table > thead > tr > td,
@@ -60,7 +60,7 @@
60
60
 
61
61
  // Block
62
62
  .v-table
63
- --v-table-header-height: $table-header-height
63
+ --v-table-header-height: #{$table-header-height}
64
64
 
65
65
  border-radius: inherit
66
66
  // Do not inherit line-height
@@ -95,7 +95,7 @@
95
95
  > tfoot
96
96
  > tr
97
97
  > th
98
- height: $table-header-height + $modifier
98
+ height: calc(var(--v-table-header-height) + $modifier)
99
99
 
100
100
  > td
101
101
  height: calc($table-row-height + $modifier)
@@ -53,6 +53,9 @@ export const VTooltip = genericComponent()({
53
53
  if (props.transition) return props.transition;
54
54
  return isActive.value ? 'scale-transition' : 'fade-transition';
55
55
  });
56
+ const activatorProps = computed(() => mergeProps({
57
+ 'aria-describedby': id.value
58
+ }, props.activatorProps));
56
59
  useRender(() => {
57
60
  const [overlayProps] = filterVOverlayProps(props);
58
61
  return _createVNode(VOverlay, _mergeProps({
@@ -69,9 +72,7 @@ export const VTooltip = genericComponent()({
69
72
  "persistent": true,
70
73
  "role": "tooltip",
71
74
  "eager": true,
72
- "activatorProps": mergeProps({
73
- 'aria-describedby': id.value
74
- }, props.activatorProps),
75
+ "activatorProps": activatorProps.value,
75
76
  "_disableGlobalStack": true
76
77
  }, scopeId), {
77
78
  activator: slots.activator,
@@ -1 +1 @@
1
- {"version":3,"file":"VTooltip.mjs","names":["VOverlay","useProxiedModel","useScopeId","forwardRefs","computed","mergeProps","ref","genericComponent","getUid","omit","useRender","filterVOverlayProps","makeVOverlayProps","VTooltip","name","props","id","String","text","closeOnBack","location","locationStrategy","minWidth","offset","openOnClick","openOnHover","origin","scrim","scrollStrategy","transition","emits","value","setup","slots","isActive","scopeId","uid","overlay","split","length","overlayProps","activatorProps","activator","default","args"],"sources":["../../../src/components/VTooltip/VTooltip.tsx"],"sourcesContent":["// Styles\nimport './VTooltip.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { computed, mergeProps, ref } from 'vue'\nimport { genericComponent, getUid, omit, useRender } from '@/util'\nimport { filterVOverlayProps, makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Types\nimport type { SlotsToProps } from '@/util'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\n\nexport const VTooltip = genericComponent<new () => {\n $props: SlotsToProps<OverlaySlots>\n}>()({\n name: 'VTooltip',\n\n props: {\n id: String,\n text: String,\n\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end' as const,\n locationStrategy: 'connected' as const,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto' as const,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: false,\n }), [\n 'absolute',\n 'persistent',\n 'eager',\n ]),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-tooltip-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const location = computed(() => {\n return props.location.split(' ').length > 1\n ? props.location\n : props.location + ' center' as StrategyProps['location']\n })\n\n const origin = computed(() => {\n return (\n props.origin === 'auto' ||\n props.origin === 'overlap' ||\n props.origin.split(' ').length > 1 ||\n props.location.split(' ').length > 1\n ) ? props.origin\n : props.origin + ' center' as StrategyProps['origin']\n })\n\n const transition = computed(() => {\n if (props.transition) return props.transition\n return isActive.value ? 'scale-transition' : 'fade-transition'\n })\n\n useRender(() => {\n const [overlayProps] = filterVOverlayProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n class={[\n 'v-tooltip',\n ]}\n id={ id.value }\n { ...overlayProps }\n v-model={ isActive.value }\n transition={ transition.value }\n absolute\n location={ location.value }\n origin={ origin.value }\n persistent\n role=\"tooltip\"\n eager\n activatorProps={ mergeProps({\n 'aria-describedby': id.value,\n }, props.activatorProps) }\n _disableGlobalStack\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => slots.default?.(...args) ?? props.text,\n }}\n </VOverlay>\n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VTooltip = InstanceType<typeof VTooltip>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VTooltip.mjs","names":["VOverlay","useProxiedModel","useScopeId","forwardRefs","computed","mergeProps","ref","genericComponent","getUid","omit","useRender","filterVOverlayProps","makeVOverlayProps","VTooltip","name","props","id","String","text","closeOnBack","location","locationStrategy","minWidth","offset","openOnClick","openOnHover","origin","scrim","scrollStrategy","transition","emits","value","setup","slots","isActive","scopeId","uid","overlay","split","length","activatorProps","overlayProps","activator","default","args"],"sources":["../../../src/components/VTooltip/VTooltip.tsx"],"sourcesContent":["// Styles\nimport './VTooltip.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { computed, mergeProps, ref } from 'vue'\nimport { genericComponent, getUid, omit, useRender } from '@/util'\nimport { filterVOverlayProps, makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Types\nimport type { SlotsToProps } from '@/util'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\n\nexport const VTooltip = genericComponent<new () => {\n $props: SlotsToProps<OverlaySlots>\n}>()({\n name: 'VTooltip',\n\n props: {\n id: String,\n text: String,\n\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end' as const,\n locationStrategy: 'connected' as const,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto' as const,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: false,\n }), [\n 'absolute',\n 'persistent',\n 'eager',\n ]),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-tooltip-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const location = computed(() => {\n return props.location.split(' ').length > 1\n ? props.location\n : props.location + ' center' as StrategyProps['location']\n })\n\n const origin = computed(() => {\n return (\n props.origin === 'auto' ||\n props.origin === 'overlap' ||\n props.origin.split(' ').length > 1 ||\n props.location.split(' ').length > 1\n ) ? props.origin\n : props.origin + ' center' as StrategyProps['origin']\n })\n\n const transition = computed(() => {\n if (props.transition) return props.transition\n return isActive.value ? 'scale-transition' : 'fade-transition'\n })\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-describedby': id.value,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const [overlayProps] = filterVOverlayProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n class={[\n 'v-tooltip',\n ]}\n id={ id.value }\n { ...overlayProps }\n v-model={ isActive.value }\n transition={ transition.value }\n absolute\n location={ location.value }\n origin={ origin.value }\n persistent\n role=\"tooltip\"\n eager\n activatorProps={ activatorProps.value }\n _disableGlobalStack\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => slots.default?.(...args) ?? props.text,\n }}\n </VOverlay>\n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VTooltip = InstanceType<typeof VTooltip>\n"],"mappings":"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"}