@vuetify/nightly 3.9.3-master.2025-07-31 → 3.9.3-master.2025-08-02

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/CHANGELOG.md +14 -3
  2. package/dist/json/attributes.json +3543 -3531
  3. package/dist/json/importMap-labs.json +32 -32
  4. package/dist/json/importMap.json +182 -182
  5. package/dist/json/tags.json +4 -1
  6. package/dist/json/web-types.json +6238 -6212
  7. package/dist/vuetify-labs.cjs +70 -36
  8. package/dist/vuetify-labs.css +4455 -4440
  9. package/dist/vuetify-labs.d.ts +128 -86
  10. package/dist/vuetify-labs.esm.js +70 -36
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +70 -36
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +70 -36
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +2538 -2523
  17. package/dist/vuetify.d.ts +100 -86
  18. package/dist/vuetify.esm.js +70 -36
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +70 -36
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +288 -282
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VAlert/VAlert.css +9 -2
  26. package/lib/components/VAlert/VAlert.js +2 -2
  27. package/lib/components/VAlert/VAlert.js.map +1 -1
  28. package/lib/components/VAlert/VAlert.sass +10 -3
  29. package/lib/components/VAlert/_variables.scss +1 -1
  30. package/lib/components/VApp/VApp.d.ts +0 -25
  31. package/lib/components/VApp/VApp.js +6 -5
  32. package/lib/components/VApp/VApp.js.map +1 -1
  33. package/lib/components/VDatePicker/VDatePicker.d.ts +25 -0
  34. package/lib/components/VDatePicker/VDatePickerMonth.d.ts +25 -0
  35. package/lib/components/VStepper/VStepperItem.css +2 -0
  36. package/lib/components/VStepper/VStepperItem.sass +3 -0
  37. package/lib/components/VTable/VTable.js +32 -20
  38. package/lib/components/VTable/VTable.js.map +1 -1
  39. package/lib/components/VTreeview/VTreeviewItem.css +6 -0
  40. package/lib/components/VTreeview/VTreeviewItem.sass +7 -0
  41. package/lib/composables/calendar.d.ts +12 -0
  42. package/lib/composables/calendar.js +5 -1
  43. package/lib/composables/calendar.js.map +1 -1
  44. package/lib/composables/date/DateAdapter.d.ts +1 -1
  45. package/lib/composables/date/DateAdapter.js.map +1 -1
  46. package/lib/composables/date/adapters/string.d.ts +1 -1
  47. package/lib/composables/date/adapters/string.js +2 -2
  48. package/lib/composables/date/adapters/string.js.map +1 -1
  49. package/lib/composables/date/adapters/vuetify.d.ts +1 -1
  50. package/lib/composables/date/adapters/vuetify.js +25 -5
  51. package/lib/composables/date/adapters/vuetify.js.map +1 -1
  52. package/lib/composables/date/date.d.ts +1 -1
  53. package/lib/entry-bundler.d.ts +1 -1
  54. package/lib/entry-bundler.js +1 -1
  55. package/lib/framework.d.ts +72 -72
  56. package/lib/framework.js +1 -1
  57. package/lib/labs/VCalendar/VCalendar.d.ts +25 -0
  58. package/lib/labs/VDateInput/VDateInput.d.ts +25 -0
  59. package/lib/labs/entry-bundler.d.ts +1 -1
  60. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.9.3-master.2025-07-31
2
+ * Vuetify v3.9.3-master.2025-08-02
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -2874,9 +2874,7 @@
2874
2874
 
2875
2875
  const makeVAppProps = propsFactory({
2876
2876
  ...makeComponentProps(),
2877
- ...makeLayoutProps({
2878
- fullHeight: true
2879
- }),
2877
+ ...omit(makeLayoutProps(), ['fullHeight']),
2880
2878
  ...makeThemeProps()
2881
2879
  }, 'VApp');
2882
2880
  const VApp = genericComponent()({
@@ -2892,7 +2890,10 @@
2892
2890
  getLayoutItem,
2893
2891
  items,
2894
2892
  layoutRef
2895
- } = createLayout(props);
2893
+ } = createLayout({
2894
+ ...props,
2895
+ fullHeight: true
2896
+ });
2896
2897
  const {
2897
2898
  rtlClasses
2898
2899
  } = useRtl();
@@ -6265,7 +6266,7 @@
6265
6266
  });
6266
6267
  const {
6267
6268
  iconSize
6268
- } = useIconSizes(props, () => props.prominent ? 44 : 28);
6269
+ } = useIconSizes(props, () => props.prominent ? 44 : undefined);
6269
6270
  const {
6270
6271
  themeClasses
6271
6272
  } = provideTheme(props);
@@ -6316,7 +6317,7 @@
6316
6317
  const iconProps = {
6317
6318
  density: props.density,
6318
6319
  icon: icon.value,
6319
- size: iconSize.value
6320
+ size: props.iconSize || props.prominent ? iconSize.value : undefined
6320
6321
  };
6321
6322
  return isActive.value && vue.createVNode(props.tag, {
6322
6323
  "class": vue.normalizeClass(['v-alert', props.border && {
@@ -17959,16 +17960,35 @@
17959
17960
  function getMonth(date) {
17960
17961
  return date.getMonth();
17961
17962
  }
17962
- function getWeek(date, locale, firstDayOfWeek, firstWeekMinSize) {
17963
+ function getWeek(date, locale, firstDayOfWeek, firstDayOfYear) {
17963
17964
  const weekInfoFromLocale = weekInfo(locale);
17964
17965
  const weekStart = firstDayOfWeek ?? weekInfoFromLocale?.firstDay ?? 0;
17965
- const minWeekSize = firstWeekMinSize ?? weekInfoFromLocale?.firstWeekSize ?? 1;
17966
+ const minWeekSize = weekInfoFromLocale?.firstWeekSize ?? 1;
17967
+ return firstDayOfYear !== undefined ? calculateWeekWithFirstDayOfYear(date, locale, weekStart, firstDayOfYear) : calculateWeekWithMinWeekSize(date, locale, weekStart, minWeekSize);
17968
+ }
17969
+ function calculateWeekWithFirstDayOfYear(date, locale, weekStart, firstDayOfYear) {
17970
+ const firstDayOfYearOffset = (7 + firstDayOfYear - weekStart) % 7;
17971
+ const currentWeekStart = startOfWeek(date, locale, weekStart);
17972
+ const currentWeekEnd = addDays(currentWeekStart, 6);
17973
+ function yearStartWeekdayOffset(year) {
17974
+ return (7 + new Date(year, 0, 1).getDay() - weekStart) % 7;
17975
+ }
17976
+ let year = getYear(date);
17977
+ if (year < getYear(currentWeekEnd) && yearStartWeekdayOffset(year + 1) <= firstDayOfYearOffset) {
17978
+ year++;
17979
+ }
17980
+ const yearStart = new Date(year, 0, 1);
17981
+ const offset = yearStartWeekdayOffset(year);
17982
+ const d1w1 = offset <= firstDayOfYearOffset ? addDays(yearStart, -offset) : addDays(yearStart, 7 - offset);
17983
+ return 1 + getDiff(endOfDay(date), startOfDay(d1w1), 'weeks');
17984
+ }
17985
+ function calculateWeekWithMinWeekSize(date, locale, weekStart, minWeekSize) {
17986
+ const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6);
17966
17987
  function firstWeekSize(year) {
17967
17988
  const yearStart = new Date(year, 0, 1);
17968
17989
  return 7 - getDiff(yearStart, startOfWeek(yearStart, locale, weekStart), 'days');
17969
17990
  }
17970
17991
  let year = getYear(date);
17971
- const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6);
17972
17992
  if (year < getYear(currentWeekEnd) && firstWeekSize(year + 1) >= minWeekSize) {
17973
17993
  year++;
17974
17994
  }
@@ -18190,9 +18210,10 @@
18190
18210
  getMonth(date) {
18191
18211
  return getMonth(date);
18192
18212
  }
18193
- getWeek(date, firstDayOfWeek, firstWeekMinSize) {
18213
+ getWeek(date, firstDayOfWeek, firstDayOfYear) {
18194
18214
  const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
18195
- return getWeek(date, this.locale, firstDay, firstWeekMinSize);
18215
+ const firstWeekStart = firstDayOfYear !== undefined ? Number(firstDayOfYear) : undefined;
18216
+ return getWeek(date, this.locale, firstDay, firstWeekStart);
18196
18217
  }
18197
18218
  getDate(date) {
18198
18219
  return getDate(date);
@@ -21701,8 +21722,6 @@
21701
21722
  }
21702
21723
  });
21703
21724
 
21704
- // Types
21705
-
21706
21725
  const makeVTableProps = propsFactory({
21707
21726
  fixedHeader: Boolean,
21708
21727
  fixedFooter: Boolean,
@@ -21732,26 +21751,37 @@
21732
21751
  const {
21733
21752
  densityClasses
21734
21753
  } = useDensity(props);
21735
- useRender(() => vue.createVNode(props.tag, {
21736
- "class": vue.normalizeClass(['v-table', {
21737
- 'v-table--fixed-height': !!props.height,
21738
- 'v-table--fixed-header': props.fixedHeader,
21739
- 'v-table--fixed-footer': props.fixedFooter,
21740
- 'v-table--has-top': !!slots.top,
21741
- 'v-table--has-bottom': !!slots.bottom,
21742
- 'v-table--hover': props.hover,
21743
- 'v-table--striped-even': props.striped === 'even',
21744
- 'v-table--striped-odd': props.striped === 'odd'
21745
- }, themeClasses.value, densityClasses.value, props.class]),
21746
- "style": vue.normalizeStyle(props.style)
21747
- }, {
21748
- default: () => [slots.top?.(), slots.default ? vue.createElementVNode("div", {
21749
- "class": "v-table__wrapper",
21750
- "style": {
21751
- height: convertToUnit(props.height)
21754
+ useRender(() => {
21755
+ const tableContentDefaults = {
21756
+ VCheckboxBtn: {
21757
+ density: props.density
21752
21758
  }
21753
- }, [vue.createElementVNode("table", null, [slots.default()])]) : slots.wrapper?.(), slots.bottom?.()]
21754
- }));
21759
+ };
21760
+ return vue.createVNode(props.tag, {
21761
+ "class": vue.normalizeClass(['v-table', {
21762
+ 'v-table--fixed-height': !!props.height,
21763
+ 'v-table--fixed-header': props.fixedHeader,
21764
+ 'v-table--fixed-footer': props.fixedFooter,
21765
+ 'v-table--has-top': !!slots.top,
21766
+ 'v-table--has-bottom': !!slots.bottom,
21767
+ 'v-table--hover': props.hover,
21768
+ 'v-table--striped-even': props.striped === 'even',
21769
+ 'v-table--striped-odd': props.striped === 'odd'
21770
+ }, themeClasses.value, densityClasses.value, props.class]),
21771
+ "style": vue.normalizeStyle(props.style)
21772
+ }, {
21773
+ default: () => [slots.top?.(), vue.createVNode(VDefaultsProvider, {
21774
+ "defaults": tableContentDefaults
21775
+ }, {
21776
+ default: () => [slots.default ? vue.createElementVNode("div", {
21777
+ "class": "v-table__wrapper",
21778
+ "style": {
21779
+ height: convertToUnit(props.height)
21780
+ }
21781
+ }, [vue.createElementVNode("table", null, [slots.default()])]) : slots.wrapper?.()]
21782
+ }), slots.bottom?.()]
21783
+ });
21784
+ });
21755
21785
  return {};
21756
21786
  }
21757
21787
  });
@@ -22923,6 +22953,10 @@
22923
22953
  type: [Number, String],
22924
22954
  default: undefined
22925
22955
  },
22956
+ firstDayOfYear: {
22957
+ type: [Number, String],
22958
+ default: undefined
22959
+ },
22926
22960
  weekdayFormat: String
22927
22961
  }, 'calendar');
22928
22962
  function useCalendar(props) {
@@ -23014,7 +23048,7 @@
23014
23048
  });
23015
23049
  const weekNumbers = vue.computed(() => {
23016
23050
  return weeksInMonth.value.map(week => {
23017
- return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek) : null;
23051
+ return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek, props.firstDayOfYear) : null;
23018
23052
  });
23019
23053
  });
23020
23054
  function isDisabled(value) {
@@ -35248,7 +35282,7 @@
35248
35282
  };
35249
35283
  });
35250
35284
  }
35251
- const version$1 = "3.9.3-master.2025-07-31";
35285
+ const version$1 = "3.9.3-master.2025-08-02";
35252
35286
  createVuetify$1.version = version$1;
35253
35287
 
35254
35288
  // Vue's inject() can only be used in setup
@@ -35546,7 +35580,7 @@
35546
35580
 
35547
35581
  /* eslint-disable local-rules/sort-imports */
35548
35582
 
35549
- const version = "3.9.3-master.2025-07-31";
35583
+ const version = "3.9.3-master.2025-08-02";
35550
35584
 
35551
35585
  /* eslint-disable local-rules/sort-imports */
35552
35586