@vuetify/nightly 3.10.9-dev.2025-11-05 → 3.10.9-dev.2025-11-06

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 (58) hide show
  1. package/CHANGELOG.md +6 -3
  2. package/dist/json/attributes.json +3507 -3455
  3. package/dist/json/importMap-labs.json +26 -26
  4. package/dist/json/importMap.json +164 -164
  5. package/dist/json/tags.json +14 -1
  6. package/dist/json/web-types.json +6462 -6338
  7. package/dist/vuetify-labs.cjs +76 -37
  8. package/dist/vuetify-labs.css +4631 -4631
  9. package/dist/vuetify-labs.d.ts +394 -129
  10. package/dist/vuetify-labs.esm.js +76 -37
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +76 -37
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +76 -37
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +3336 -3336
  17. package/dist/vuetify.d.ts +334 -109
  18. package/dist/vuetify.esm.js +76 -37
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +76 -37
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +22 -21
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VAutocomplete/VAutocomplete.d.ts +33 -11
  26. package/lib/components/VBottomSheet/VBottomSheet.d.ts +25 -0
  27. package/lib/components/VBreadcrumbs/VBreadcrumbs.d.ts +13 -0
  28. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +3 -2
  29. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  30. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.d.ts +20 -0
  31. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -2
  32. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  33. package/lib/components/VCombobox/VCombobox.d.ts +33 -11
  34. package/lib/components/VDialog/VDialog.d.ts +52 -9
  35. package/lib/components/VMenu/VMenu.d.ts +52 -9
  36. package/lib/components/VOverlay/VOverlay.d.ts +25 -0
  37. package/lib/components/VOverlay/locationStrategies.d.ts +12 -0
  38. package/lib/components/VOverlay/locationStrategies.js +10 -7
  39. package/lib/components/VOverlay/locationStrategies.js.map +1 -1
  40. package/lib/components/VSelect/VSelect.d.ts +51 -17
  41. package/lib/components/VSnackbar/VSnackbar.d.ts +27 -9
  42. package/lib/components/VSnackbar/VSnackbar.js +1 -1
  43. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  44. package/lib/components/VSpeedDial/VSpeedDial.d.ts +25 -0
  45. package/lib/components/VTabs/VTab.d.ts +20 -0
  46. package/lib/components/VTabs/VTab.js +46 -17
  47. package/lib/components/VTabs/VTab.js.map +1 -1
  48. package/lib/components/VTabs/VTabs.d.ts +20 -0
  49. package/lib/components/VTabs/VTabs.js +9 -7
  50. package/lib/components/VTabs/VTabs.js.map +1 -1
  51. package/lib/components/VTooltip/VTooltip.d.ts +52 -9
  52. package/lib/entry-bundler.js +1 -1
  53. package/lib/framework.d.ts +86 -67
  54. package/lib/framework.js +1 -1
  55. package/lib/labs/VVideo/VVideo.d.ts +63 -21
  56. package/lib/labs/VVideo/VVideoControls.d.ts +30 -10
  57. package/lib/labs/VVideo/VVideoVolume.d.ts +30 -10
  58. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.10.9-dev.2025-11-05
2
+ * Vuetify v3.10.9-dev.2025-11-06
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -10999,7 +10999,11 @@ const makeLocationStrategyProps = propsFactory({
10999
10999
  default: 'auto'
11000
11000
  },
11001
11001
  offset: [Number, String, Array],
11002
- stickToTarget: Boolean
11002
+ stickToTarget: Boolean,
11003
+ viewportMargin: {
11004
+ type: [Number, String],
11005
+ default: 12
11006
+ }
11003
11007
  }, 'VOverlay-location-strategies');
11004
11008
  function useLocationStrategies(props, data) {
11005
11009
  const contentStyles = ref({});
@@ -11186,8 +11190,7 @@ function connectedLocationStrategy(data, props, contentStyles) {
11186
11190
 
11187
11191
  const contentBox = getIntrinsicSize(data.contentEl.value, data.isRtl.value);
11188
11192
  const scrollParents = getScrollParents(data.contentEl.value);
11189
- const viewportMargin = props.stickToTarget ? 0 : 12; // TOOD: prop.viewportMargin
11190
-
11193
+ const viewportMargin = Number(props.viewportMargin);
11191
11194
  if (!scrollParents.length) {
11192
11195
  scrollParents.push(document.documentElement);
11193
11196
  if (!(data.contentEl.value.style.top && data.contentEl.value.style.left)) {
@@ -11208,10 +11211,10 @@ function connectedLocationStrategy(data, props, contentStyles) {
11208
11211
  return scrollBox;
11209
11212
  }, undefined);
11210
11213
  if (props.stickToTarget) {
11211
- viewport.x += Math.min(0, targetBox.x);
11212
- viewport.y += Math.min(0, targetBox.y);
11213
- viewport.width = Math.max(viewport.width, targetBox.x + targetBox.width);
11214
- viewport.height = Math.max(viewport.height, targetBox.y + targetBox.height);
11214
+ viewport.x += Math.min(viewportMargin, targetBox.x);
11215
+ viewport.y += Math.min(viewportMargin, targetBox.y);
11216
+ viewport.width = Math.max(viewport.width - viewportMargin * 2, targetBox.x + targetBox.width - viewportMargin);
11217
+ viewport.height = Math.max(viewport.height - viewportMargin * 2, targetBox.y + targetBox.height - viewportMargin);
11215
11218
  } else {
11216
11219
  viewport.x += viewportMargin;
11217
11220
  viewport.y += viewportMargin;
@@ -15407,6 +15410,7 @@ const makeVBreadcrumbsItemProps = propsFactory({
15407
15410
  disabled: Boolean,
15408
15411
  title: String,
15409
15412
  ...makeComponentProps(),
15413
+ ...pick(makeDimensionProps(), ['width', 'maxWidth']),
15410
15414
  ...makeRouterProps(),
15411
15415
  ...makeTagProps({
15412
15416
  tag: 'li'
@@ -15422,6 +15426,9 @@ const VBreadcrumbsItem = genericComponent()({
15422
15426
  } = _ref;
15423
15427
  const link = useLink(props, attrs);
15424
15428
  const isActive = computed(() => props.active || link.isActive?.value);
15429
+ const {
15430
+ dimensionStyles
15431
+ } = useDimension(props);
15425
15432
  const {
15426
15433
  textColorClasses,
15427
15434
  textColorStyles
@@ -15433,7 +15440,7 @@ const VBreadcrumbsItem = genericComponent()({
15433
15440
  'v-breadcrumbs-item--disabled': props.disabled,
15434
15441
  [`${props.activeClass}`]: isActive.value && props.activeClass
15435
15442
  }, textColorClasses.value, props.class]),
15436
- "style": normalizeStyle([textColorStyles.value, props.style]),
15443
+ "style": normalizeStyle([textColorStyles.value, dimensionStyles.value, props.style]),
15437
15444
  "aria-current": isActive.value ? 'page' : undefined
15438
15445
  }, {
15439
15446
  default: () => [!link.isLink.value ? slots.default?.() ?? props.title : createElementVNode("a", mergeProps({
@@ -15463,6 +15470,7 @@ const makeVBreadcrumbsProps = propsFactory({
15463
15470
  type: Array,
15464
15471
  default: () => []
15465
15472
  },
15473
+ itemProps: Boolean,
15466
15474
  ...makeComponentProps(),
15467
15475
  ...makeDensityProps(),
15468
15476
  ...makeRoundedProps(),
@@ -15544,7 +15552,7 @@ const VBreadcrumbs = genericComponent()({
15544
15552
  "disabled": index >= array.length - 1
15545
15553
  }, typeof item === 'string' ? {
15546
15554
  title: item
15547
- } : item), {
15555
+ } : item, props.itemProps && isObject(raw) ? raw : {}), {
15548
15556
  default: slots.title ? () => slots.title?.({
15549
15557
  item,
15550
15558
  index
@@ -28597,7 +28605,7 @@ const makeVSnackbarProps = propsFactory({
28597
28605
  ...makeThemeProps(),
28598
28606
  ...omit(makeVOverlayProps({
28599
28607
  transition: 'v-snackbar-transition'
28600
- }), ['persistent', 'noClickAnimation', 'scrim', 'scrollStrategy', 'stickToTarget'])
28608
+ }), ['persistent', 'noClickAnimation', 'scrim', 'scrollStrategy', 'stickToTarget', 'viewportMargin'])
28601
28609
  }, 'VSnackbar');
28602
28610
  const VSnackbar = genericComponent()({
28603
28611
  name: 'VSnackbar',
@@ -30035,6 +30043,8 @@ const VTabsSymbol = Symbol.for('vuetify:v-tabs');
30035
30043
  const makeVTabProps = propsFactory({
30036
30044
  fixed: Boolean,
30037
30045
  sliderColor: String,
30046
+ sliderTransition: String,
30047
+ sliderTransitionDuration: [String, Number],
30038
30048
  hideSlider: Boolean,
30039
30049
  direction: {
30040
30050
  type: String,
@@ -30061,6 +30071,38 @@ const VTab = genericComponent()({
30061
30071
  const sliderEl = ref();
30062
30072
  const isHorizontal = computed(() => props.direction === 'horizontal');
30063
30073
  const isSelected = computed(() => rootEl.value?.group?.isSelected.value ?? false);
30074
+ function fade(nextEl, prevEl) {
30075
+ return {
30076
+ opacity: [0, 1]
30077
+ };
30078
+ }
30079
+ function grow(nextEl, prevEl) {
30080
+ return props.direction === 'vertical' ? {
30081
+ transform: ['scaleY(0)', 'scaleY(1)']
30082
+ } : {
30083
+ transform: ['scaleX(0)', 'scaleX(1)']
30084
+ };
30085
+ }
30086
+ function shift(nextEl, prevEl) {
30087
+ const prevBox = prevEl.getBoundingClientRect();
30088
+ const nextBox = nextEl.getBoundingClientRect();
30089
+ const xy = isHorizontal.value ? 'x' : 'y';
30090
+ const XY = isHorizontal.value ? 'X' : 'Y';
30091
+ const rightBottom = isHorizontal.value ? 'right' : 'bottom';
30092
+ const widthHeight = isHorizontal.value ? 'width' : 'height';
30093
+ const prevPos = prevBox[xy];
30094
+ const nextPos = nextBox[xy];
30095
+ const delta = prevPos > nextPos ? prevBox[rightBottom] - nextBox[rightBottom] : prevBox[xy] - nextBox[xy];
30096
+ const origin = Math.sign(delta) > 0 ? isHorizontal.value ? 'right' : 'bottom' : Math.sign(delta) < 0 ? isHorizontal.value ? 'left' : 'top' : 'center';
30097
+ const size = Math.abs(delta) + (Math.sign(delta) < 0 ? prevBox[widthHeight] : nextBox[widthHeight]);
30098
+ const scale = size / Math.max(prevBox[widthHeight], nextBox[widthHeight]) || 0;
30099
+ const initialScale = prevBox[widthHeight] / nextBox[widthHeight] || 0;
30100
+ const sigma = 1.5;
30101
+ return {
30102
+ transform: [`translate${XY}(${delta}px) scale${XY}(${initialScale})`, `translate${XY}(${delta / sigma}px) scale${XY}(${(scale - 1) / sigma + 1})`, 'none'],
30103
+ transformOrigin: Array(3).fill(origin)
30104
+ };
30105
+ }
30064
30106
  function updateSlider(_ref2) {
30065
30107
  let {
30066
30108
  value
@@ -30070,26 +30112,21 @@ const VTab = genericComponent()({
30070
30112
  const nextEl = sliderEl.value;
30071
30113
  if (!prevEl || !nextEl) return;
30072
30114
  const color = getComputedStyle(prevEl).color;
30073
- const prevBox = prevEl.getBoundingClientRect();
30074
- const nextBox = nextEl.getBoundingClientRect();
30075
- const xy = isHorizontal.value ? 'x' : 'y';
30076
- const XY = isHorizontal.value ? 'X' : 'Y';
30077
- const rightBottom = isHorizontal.value ? 'right' : 'bottom';
30078
- const widthHeight = isHorizontal.value ? 'width' : 'height';
30079
- const prevPos = prevBox[xy];
30080
- const nextPos = nextBox[xy];
30081
- const delta = prevPos > nextPos ? prevBox[rightBottom] - nextBox[rightBottom] : prevBox[xy] - nextBox[xy];
30082
- const origin = Math.sign(delta) > 0 ? isHorizontal.value ? 'right' : 'bottom' : Math.sign(delta) < 0 ? isHorizontal.value ? 'left' : 'top' : 'center';
30083
- const size = Math.abs(delta) + (Math.sign(delta) < 0 ? prevBox[widthHeight] : nextBox[widthHeight]);
30084
- const scale = size / Math.max(prevBox[widthHeight], nextBox[widthHeight]) || 0;
30085
- const initialScale = prevBox[widthHeight] / nextBox[widthHeight] || 0;
30086
- const sigma = 1.5;
30115
+ const keyframes = {
30116
+ fade,
30117
+ grow,
30118
+ shift
30119
+ }[props.sliderTransition ?? 'shift'] ?? shift;
30120
+ const duration = Number(props.sliderTransitionDuration) || ({
30121
+ fade: 400,
30122
+ grow: 350,
30123
+ shift: 225
30124
+ }[props.sliderTransition ?? 'shift'] ?? 225);
30087
30125
  animate(nextEl, {
30088
30126
  backgroundColor: [color, 'currentcolor'],
30089
- transform: [`translate${XY}(${delta}px) scale${XY}(${initialScale})`, `translate${XY}(${delta / sigma}px) scale${XY}(${(scale - 1) / sigma + 1})`, 'none'],
30090
- transformOrigin: Array(3).fill(origin)
30127
+ ...keyframes(nextEl, prevEl)
30091
30128
  }, {
30092
- duration: 225,
30129
+ duration,
30093
30130
  easing: standardEasing
30094
30131
  });
30095
30132
  }
@@ -30223,7 +30260,7 @@ const makeVTabsProps = propsFactory({
30223
30260
  },
30224
30261
  hideSlider: Boolean,
30225
30262
  sliderColor: String,
30226
- ...pick(makeVTabProps(), ['spaced']),
30263
+ ...pick(makeVTabProps(), ['spaced', 'sliderTransition', 'sliderTransitionDuration']),
30227
30264
  ...makeVSlideGroupProps({
30228
30265
  mandatory: 'force',
30229
30266
  selectedClass: 'v-tab-item--selected'
@@ -30256,12 +30293,14 @@ const VTabs = genericComponent()({
30256
30293
  } = useScopeId();
30257
30294
  provideDefaults({
30258
30295
  VTab: {
30259
- color: toRef(() => props.color),
30260
- direction: toRef(() => props.direction),
30261
- stacked: toRef(() => props.stacked),
30262
- fixed: toRef(() => props.fixedTabs),
30263
- sliderColor: toRef(() => props.sliderColor),
30264
- hideSlider: toRef(() => props.hideSlider)
30296
+ color: toRef(props, 'color'),
30297
+ direction: toRef(props, 'direction'),
30298
+ stacked: toRef(props, 'stacked'),
30299
+ fixed: toRef(props, 'fixedTabs'),
30300
+ sliderColor: toRef(props, 'sliderColor'),
30301
+ sliderTransition: toRef(props, 'sliderTransition'),
30302
+ sliderTransitionDuration: toRef(props, 'sliderTransitionDuration'),
30303
+ hideSlider: toRef(props, 'hideSlider')
30265
30304
  }
30266
30305
  });
30267
30306
  useRender(() => {
@@ -32714,7 +32753,7 @@ function createVuetify$1() {
32714
32753
  };
32715
32754
  });
32716
32755
  }
32717
- const version$1 = "3.10.9-dev.2025-11-05";
32756
+ const version$1 = "3.10.9-dev.2025-11-06";
32718
32757
  createVuetify$1.version = version$1;
32719
32758
 
32720
32759
  // Vue's inject() can only be used in setup
@@ -32739,7 +32778,7 @@ const createVuetify = function () {
32739
32778
  ...options
32740
32779
  });
32741
32780
  };
32742
- const version = "3.10.9-dev.2025-11-05";
32781
+ const version = "3.10.9-dev.2025-11-06";
32743
32782
  createVuetify.version = version;
32744
32783
 
32745
32784
  export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useHotkey, useLayout, useLocale, useMask, useRtl, useTheme, version };