@vuetify/nightly 3.9.3-master.2025-08-03 → 3.9.3-master.2025-08-05

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 (81) hide show
  1. package/CHANGELOG.md +7 -6
  2. package/dist/json/attributes.json +3159 -3171
  3. package/dist/json/importMap-labs.json +42 -42
  4. package/dist/json/importMap.json +174 -174
  5. package/dist/json/tags.json +1 -4
  6. package/dist/json/web-types.json +5928 -6047
  7. package/dist/vuetify-labs.cjs +30 -71
  8. package/dist/vuetify-labs.css +3504 -3503
  9. package/dist/vuetify-labs.d.ts +86 -160
  10. package/dist/vuetify-labs.esm.js +30 -71
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +30 -71
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +26 -70
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +4352 -4351
  17. package/dist/vuetify.d.ts +81 -132
  18. package/dist/vuetify.esm.js +26 -70
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +26 -70
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +245 -251
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VColorPicker/VColorPickerCanvas.css +1 -0
  26. package/lib/components/VColorPicker/VColorPickerCanvas.sass +1 -0
  27. package/lib/components/VDataIterator/VDataIterator.d.ts +2 -2
  28. package/lib/components/VDataIterator/VDataIterator.js +1 -1
  29. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  30. package/lib/components/VDataTable/VDataTable.d.ts +4 -6
  31. package/lib/components/VDataTable/VDataTable.js +1 -1
  32. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  33. package/lib/components/VDataTable/VDataTableRows.d.ts +11 -14
  34. package/lib/components/VDataTable/VDataTableRows.js +0 -9
  35. package/lib/components/VDataTable/VDataTableRows.js.map +1 -1
  36. package/lib/components/VDataTable/VDataTableServer.d.ts +2 -4
  37. package/lib/components/VDataTable/VDataTableServer.js +1 -1
  38. package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
  39. package/lib/components/VDataTable/VDataTableVirtual.d.ts +2 -4
  40. package/lib/components/VDataTable/VDataTableVirtual.js +1 -1
  41. package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
  42. package/lib/components/VDataTable/composables/group.d.ts +5 -13
  43. package/lib/components/VDataTable/composables/group.js +5 -11
  44. package/lib/components/VDataTable/composables/group.js.map +1 -1
  45. package/lib/components/VDataTable/composables/paginate.d.ts +3 -3
  46. package/lib/components/VDataTable/composables/paginate.js.map +1 -1
  47. package/lib/components/VDataTable/types.d.ts +1 -7
  48. package/lib/components/VDataTable/types.js.map +1 -1
  49. package/lib/components/VDatePicker/VDatePicker.d.ts +0 -25
  50. package/lib/components/VDatePicker/VDatePickerMonth.d.ts +0 -25
  51. package/lib/components/VOverlay/scrollStrategies.js +7 -7
  52. package/lib/components/VOverlay/scrollStrategies.js.map +1 -1
  53. package/lib/components/VTreeview/VTreeviewChildren.d.ts +2 -20
  54. package/lib/components/VTreeview/VTreeviewChildren.js +2 -7
  55. package/lib/components/VTreeview/VTreeviewChildren.js.map +1 -1
  56. package/lib/composables/calendar.d.ts +0 -12
  57. package/lib/composables/calendar.js +1 -5
  58. package/lib/composables/calendar.js.map +1 -1
  59. package/lib/composables/date/DateAdapter.d.ts +1 -1
  60. package/lib/composables/date/DateAdapter.js.map +1 -1
  61. package/lib/composables/date/adapters/string.d.ts +1 -1
  62. package/lib/composables/date/adapters/string.js +2 -2
  63. package/lib/composables/date/adapters/string.js.map +1 -1
  64. package/lib/composables/date/adapters/vuetify.d.ts +1 -1
  65. package/lib/composables/date/adapters/vuetify.js +5 -25
  66. package/lib/composables/date/adapters/vuetify.js.map +1 -1
  67. package/lib/composables/date/date.d.ts +1 -1
  68. package/lib/entry-bundler.d.ts +1 -1
  69. package/lib/entry-bundler.js +1 -1
  70. package/lib/framework.d.ts +66 -66
  71. package/lib/framework.js +1 -1
  72. package/lib/labs/VCalendar/VCalendar.d.ts +0 -25
  73. package/lib/labs/VDateInput/VDateInput.d.ts +0 -25
  74. package/lib/labs/VVideo/VVideo.css +3 -3
  75. package/lib/labs/VVideo/VVideo.d.ts +10 -0
  76. package/lib/labs/VVideo/VVideo.js +4 -1
  77. package/lib/labs/VVideo/VVideo.js.map +1 -1
  78. package/lib/labs/VVideo/VVideo.sass +2 -2
  79. package/lib/labs/VVideo/_variables.scss +3 -2
  80. package/lib/labs/entry-bundler.d.ts +1 -1
  81. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.9.3-master.2025-08-03
2
+ * Vuetify v3.9.3-master.2025-08-05
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -10933,11 +10933,11 @@
10933
10933
  function onScroll(e) {
10934
10934
  data.isActive.value = false;
10935
10935
  }
10936
- bindScroll(data.target.value ?? data.contentEl.value, onScroll);
10936
+ bindScroll(getTargetEl(data.target.value, data.contentEl.value), onScroll);
10937
10937
  }
10938
10938
  function blockScrollStrategy(data, props) {
10939
10939
  const offsetParent = data.root.value?.offsetParent;
10940
- const target = Array.isArray(data.target.value) ? document.elementFromPoint(...data.target.value) : data.target.value;
10940
+ const target = getTargetEl(data.target.value, data.contentEl.value);
10941
10941
  const scrollElements = [...new Set([...getScrollParents(target, props.contained ? offsetParent : undefined), ...getScrollParents(data.contentEl.value, props.contained ? offsetParent : undefined)])].filter(el => !el.classList.contains('v-overlay-scroll-blocked'));
10942
10942
  const scrollbarWidth = window.innerWidth - document.documentElement.offsetWidth;
10943
10943
  const scrollableParent = (el => hasScrollbar(el) && el)(offsetParent || document.documentElement);
@@ -10985,7 +10985,7 @@
10985
10985
  }
10986
10986
  ric = (typeof requestIdleCallback === 'undefined' ? cb => cb() : requestIdleCallback)(() => {
10987
10987
  scope.run(() => {
10988
- bindScroll(data.target.value ?? data.contentEl.value, e => {
10988
+ bindScroll(getTargetEl(data.target.value, data.contentEl.value), e => {
10989
10989
  if (slow) {
10990
10990
  // If the position calculation is slow,
10991
10991
  // defer updates until scrolling is finished.
@@ -11008,10 +11008,10 @@
11008
11008
  cancelAnimationFrame(raf);
11009
11009
  });
11010
11010
  }
11011
-
11012
- /** @private */
11013
- function bindScroll(target, onScroll) {
11014
- const el = Array.isArray(target) ? document.elementFromPoint(...target) : target;
11011
+ function getTargetEl(target, contentEl) {
11012
+ return Array.isArray(target) ? document.elementsFromPoint(...target).find(el => !contentEl?.contains(el)) : target ?? contentEl;
11013
+ }
11014
+ function bindScroll(el, onScroll) {
11015
11015
  const scrollElements = [document, ...getScrollParents(el)];
11016
11016
  scrollElements.forEach(el => {
11017
11017
  el.addEventListener('scroll', onScroll, {
@@ -17965,35 +17965,16 @@
17965
17965
  function getMonth(date) {
17966
17966
  return date.getMonth();
17967
17967
  }
17968
- function getWeek(date, locale, firstDayOfWeek, firstDayOfYear) {
17968
+ function getWeek(date, locale, firstDayOfWeek, firstWeekMinSize) {
17969
17969
  const weekInfoFromLocale = weekInfo(locale);
17970
17970
  const weekStart = firstDayOfWeek ?? weekInfoFromLocale?.firstDay ?? 0;
17971
- const minWeekSize = weekInfoFromLocale?.firstWeekSize ?? 1;
17972
- return firstDayOfYear !== undefined ? calculateWeekWithFirstDayOfYear(date, locale, weekStart, firstDayOfYear) : calculateWeekWithMinWeekSize(date, locale, weekStart, minWeekSize);
17973
- }
17974
- function calculateWeekWithFirstDayOfYear(date, locale, weekStart, firstDayOfYear) {
17975
- const firstDayOfYearOffset = (7 + firstDayOfYear - weekStart) % 7;
17976
- const currentWeekStart = startOfWeek(date, locale, weekStart);
17977
- const currentWeekEnd = addDays(currentWeekStart, 6);
17978
- function yearStartWeekdayOffset(year) {
17979
- return (7 + new Date(year, 0, 1).getDay() - weekStart) % 7;
17980
- }
17981
- let year = getYear(date);
17982
- if (year < getYear(currentWeekEnd) && yearStartWeekdayOffset(year + 1) <= firstDayOfYearOffset) {
17983
- year++;
17984
- }
17985
- const yearStart = new Date(year, 0, 1);
17986
- const offset = yearStartWeekdayOffset(year);
17987
- const d1w1 = offset <= firstDayOfYearOffset ? addDays(yearStart, -offset) : addDays(yearStart, 7 - offset);
17988
- return 1 + getDiff(endOfDay(date), startOfDay(d1w1), 'weeks');
17989
- }
17990
- function calculateWeekWithMinWeekSize(date, locale, weekStart, minWeekSize) {
17991
- const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6);
17971
+ const minWeekSize = firstWeekMinSize ?? weekInfoFromLocale?.firstWeekSize ?? 1;
17992
17972
  function firstWeekSize(year) {
17993
17973
  const yearStart = new Date(year, 0, 1);
17994
17974
  return 7 - getDiff(yearStart, startOfWeek(yearStart, locale, weekStart), 'days');
17995
17975
  }
17996
17976
  let year = getYear(date);
17977
+ const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6);
17997
17978
  if (year < getYear(currentWeekEnd) && firstWeekSize(year + 1) >= minWeekSize) {
17998
17979
  year++;
17999
17980
  }
@@ -18215,10 +18196,9 @@
18215
18196
  getMonth(date) {
18216
18197
  return getMonth(date);
18217
18198
  }
18218
- getWeek(date, firstDayOfWeek, firstDayOfYear) {
18199
+ getWeek(date, firstDayOfWeek, firstWeekMinSize) {
18219
18200
  const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
18220
- const firstWeekStart = firstDayOfYear !== undefined ? Number(firstDayOfYear) : undefined;
18221
- return getWeek(date, this.locale, firstDay, firstWeekStart);
18201
+ return getWeek(date, this.locale, firstDay, firstWeekMinSize);
18222
18202
  }
18223
18203
  getDate(date) {
18224
18204
  return getDate(date);
@@ -19586,7 +19566,7 @@
19586
19566
  });
19587
19567
  return groups;
19588
19568
  }
19589
- function flattenItems(items, opened, hasSummary) {
19569
+ function flattenItems(items, opened) {
19590
19570
  const flatItems = [];
19591
19571
  for (const item of items) {
19592
19572
  // TODO: make this better
@@ -19595,13 +19575,7 @@
19595
19575
  flatItems.push(item);
19596
19576
  }
19597
19577
  if (opened.has(item.id) || item.value == null) {
19598
- flatItems.push(...flattenItems(item.items, opened, hasSummary));
19599
- if (hasSummary) {
19600
- flatItems.push({
19601
- ...item,
19602
- type: 'group-summary'
19603
- });
19604
- }
19578
+ flatItems.push(...flattenItems(item.items, opened));
19605
19579
  }
19606
19580
  } else {
19607
19581
  flatItems.push(item);
@@ -19609,11 +19583,11 @@
19609
19583
  }
19610
19584
  return flatItems;
19611
19585
  }
19612
- function useGroupedItems(items, groupBy, opened, hasSummary) {
19586
+ function useGroupedItems(items, groupBy, opened) {
19613
19587
  const flatItems = vue.computed(() => {
19614
19588
  if (!groupBy.value.length) return items.value;
19615
19589
  const groupedItems = groupItems(items.value, groupBy.value.map(item => item.key));
19616
- return flattenItems(groupedItems, opened.value, vue.toValue(hasSummary));
19590
+ return flattenItems(groupedItems, opened.value);
19617
19591
  });
19618
19592
  return {
19619
19593
  flatItems
@@ -20231,7 +20205,7 @@
20231
20205
  });
20232
20206
  const {
20233
20207
  flatItems
20234
- } = useGroupedItems(sortedItems, groupBy, opened, false);
20208
+ } = useGroupedItems(sortedItems, groupBy, opened);
20235
20209
  const itemsLength = vue.toRef(() => flatItems.value.length);
20236
20210
  const {
20237
20211
  startIndex,
@@ -21682,15 +21656,6 @@
21682
21656
  "item": item
21683
21657
  }, getPrefixedEventHandlers(attrs, ':group-header', () => slotProps)), slots);
21684
21658
  }
21685
- if (item.type === 'group-summary') {
21686
- const slotProps = {
21687
- index,
21688
- item,
21689
- columns: columns.value,
21690
- toggleGroup
21691
- };
21692
- return slots['group-summary']?.(slotProps) ?? '';
21693
- }
21694
21659
  const slotProps = {
21695
21660
  index,
21696
21661
  item: item.raw,
@@ -21949,7 +21914,7 @@
21949
21914
  });
21950
21915
  const {
21951
21916
  flatItems
21952
- } = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary']);
21917
+ } = useGroupedItems(sortedItems, groupBy, opened);
21953
21918
  const itemsLength = vue.computed(() => flatItems.value.length);
21954
21919
  const {
21955
21920
  startIndex,
@@ -22137,7 +22102,7 @@
22137
22102
  });
22138
22103
  const {
22139
22104
  flatItems
22140
- } = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary']);
22105
+ } = useGroupedItems(sortedItems, groupBy, opened);
22141
22106
  const allItems = vue.computed(() => extractRows(flatItems.value));
22142
22107
  const {
22143
22108
  isSelected,
@@ -22366,7 +22331,7 @@
22366
22331
  });
22367
22332
  const {
22368
22333
  flatItems
22369
- } = useGroupedItems(items, groupBy, opened, () => !!slots['group-summary']);
22334
+ } = useGroupedItems(items, groupBy, opened);
22370
22335
  const {
22371
22336
  isSelected,
22372
22337
  select,
@@ -22958,10 +22923,6 @@
22958
22923
  type: [Number, String],
22959
22924
  default: undefined
22960
22925
  },
22961
- firstDayOfYear: {
22962
- type: [Number, String],
22963
- default: undefined
22964
- },
22965
22926
  weekdayFormat: String
22966
22927
  }, 'calendar');
22967
22928
  function useCalendar(props) {
@@ -23053,7 +23014,7 @@
23053
23014
  });
23054
23015
  const weekNumbers = vue.computed(() => {
23055
23016
  return weeksInMonth.value.map(week => {
23056
- return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek, props.firstDayOfYear) : null;
23017
+ return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek) : null;
23057
23018
  });
23058
23019
  });
23059
23020
  function isDisabled(value) {
@@ -30644,19 +30605,14 @@
30644
30605
  onToggleExpand: [() => checkChildren(item), activatorProps.onClick],
30645
30606
  onClick: isClickOnOpen.value ? [() => checkChildren(item), activatorProps.onClick] : () => selectItem(activatorItems.value[index]?.select, !activatorItems.value[index]?.isSelected)
30646
30607
  };
30647
- return renderSlot(slots.header, {
30648
- props: listItemProps,
30649
- item: item.raw,
30650
- internalItem: item,
30651
- loading
30652
- }, () => vue.createVNode(VTreeviewItem, vue.mergeProps({
30608
+ return vue.createVNode(VTreeviewItem, vue.mergeProps({
30653
30609
  "ref": el => activatorItems.value[index] = el
30654
30610
  }, listItemProps, {
30655
30611
  "hideActions": props.hideActions,
30656
30612
  "indentLines": indentLines.node,
30657
30613
  "value": props.returnObject ? item.raw : itemProps.value,
30658
30614
  "loading": loading
30659
- }), slotsWithItem));
30615
+ }), slotsWithItem);
30660
30616
  },
30661
30617
  default: () => vue.createVNode(VTreeviewChildren, vue.mergeProps(treeviewChildrenProps, {
30662
30618
  "items": children,
@@ -34457,6 +34413,7 @@
34457
34413
 
34458
34414
  const allowedVariants = ['background', 'player'];
34459
34415
  const makeVVideoProps = propsFactory({
34416
+ aspectRatio: [String, Number],
34460
34417
  autoplay: Boolean,
34461
34418
  muted: Boolean,
34462
34419
  eager: Boolean,
@@ -34773,7 +34730,9 @@
34773
34730
  "class": vue.normalizeClass(['v-video', `v-video--variant-${props.variant}`, `v-video--${state.value}`, {
34774
34731
  'v-video--playing': playing.value
34775
34732
  }, themeClasses.value, densityClasses.value, roundedContainerClasses.value, props.class]),
34776
- "style": vue.normalizeStyle([props.variant === 'background' ? [] : pick(dimensionStyles.value, ['width', 'min-width', 'max-width']), props.style]),
34733
+ "style": vue.normalizeStyle([{
34734
+ '--v-video-aspect-ratio': props.aspectRatio
34735
+ }, props.variant === 'background' ? [] : pick(dimensionStyles.value, ['width', 'minWidth', 'maxWidth']), props.style]),
34777
34736
  "onKeydown": onKeydown,
34778
34737
  "onClick": onClick
34779
34738
  }, [vue.createElementVNode("div", {
@@ -35287,7 +35246,7 @@
35287
35246
  };
35288
35247
  });
35289
35248
  }
35290
- const version$1 = "3.9.3-master.2025-08-03";
35249
+ const version$1 = "3.9.3-master.2025-08-05";
35291
35250
  createVuetify$1.version = version$1;
35292
35251
 
35293
35252
  // Vue's inject() can only be used in setup
@@ -35585,7 +35544,7 @@
35585
35544
 
35586
35545
  /* eslint-disable local-rules/sort-imports */
35587
35546
 
35588
- const version = "3.9.3-master.2025-08-03";
35547
+ const version = "3.9.3-master.2025-08-05";
35589
35548
 
35590
35549
  /* eslint-disable local-rules/sort-imports */
35591
35550