vuetify 3.3.20 → 3.3.21

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 (57) hide show
  1. package/dist/json/attributes.json +18 -6
  2. package/dist/json/importMap-labs.json +4 -4
  3. package/dist/json/importMap.json +16 -16
  4. package/dist/json/tags.json +3 -0
  5. package/dist/json/web-types.json +35 -8
  6. package/dist/vuetify-labs.css +4950 -4943
  7. package/dist/vuetify-labs.d.ts +68 -48
  8. package/dist/vuetify-labs.esm.js +59 -14
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +59 -14
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +5468 -5462
  13. package/dist/vuetify.d.ts +7 -5
  14. package/dist/vuetify.esm.js +26 -4
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +26 -4
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +768 -765
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +2 -0
  22. package/lib/blueprints/md1.d.mts +2 -0
  23. package/lib/blueprints/md2.d.mts +2 -0
  24. package/lib/blueprints/md3.d.mts +2 -0
  25. package/lib/components/VChip/VChip.css +67 -67
  26. package/lib/components/VChip/_variables.scss +1 -1
  27. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +1 -0
  28. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  29. package/lib/components/VCombobox/VCombobox.mjs +1 -1
  30. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  31. package/lib/components/VField/VField.css +3 -0
  32. package/lib/components/VField/VField.sass +3 -0
  33. package/lib/components/VField/_variables.scss +1 -0
  34. package/lib/components/VTable/VTable.css +3 -0
  35. package/lib/components/VTable/VTable.sass +3 -0
  36. package/lib/entry-bundler.mjs +1 -1
  37. package/lib/framework.mjs +1 -1
  38. package/lib/index.d.mts +7 -5
  39. package/lib/labs/VDataTable/VDataTableFooter.mjs +12 -4
  40. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  41. package/lib/labs/VDataTable/index.d.mts +48 -48
  42. package/lib/labs/VDatePicker/VDatePickerMonth.mjs +14 -2
  43. package/lib/labs/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  44. package/lib/labs/VDatePicker/index.d.mts +18 -0
  45. package/lib/labs/VDateRangePicker/index.d.mts +12 -0
  46. package/lib/labs/VOtpInput/VOtpInput.css +3 -2
  47. package/lib/labs/VOtpInput/VOtpInput.mjs +7 -4
  48. package/lib/labs/VOtpInput/VOtpInput.mjs.map +1 -1
  49. package/lib/labs/VOtpInput/VOtpInput.sass +9 -8
  50. package/lib/labs/VOtpInput/_variables.scss +9 -0
  51. package/lib/labs/components.d.mts +66 -48
  52. package/lib/labs/date/DateAdapter.mjs.map +1 -1
  53. package/lib/labs/date/adapters/vuetify.d.mts +4 -0
  54. package/lib/labs/date/adapters/vuetify.mjs +18 -1
  55. package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
  56. package/lib/labs/date/index.d.mts +4 -0
  57. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.3.20
2
+ * Vuetify v3.3.21
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -267,6 +267,10 @@
267
267
  let char = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '0';
268
268
  return str + char.repeat(Math.max(0, length - str.length));
269
269
  }
270
+ function padStart(str, length) {
271
+ let char = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '0';
272
+ return char.repeat(Math.max(0, length - str.length)) + str;
273
+ }
270
274
  function chunk(str) {
271
275
  let size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
272
276
  const chunked = [];
@@ -13130,6 +13134,7 @@
13130
13134
  x,
13131
13135
  y
13132
13136
  } = val;
13137
+ _dotPosition.value = val;
13133
13138
  emit('update:color', {
13134
13139
  h: props.color?.h ?? 0,
13135
13140
  s: clamp(x, 0, canvasWidth.value) / canvasWidth.value,
@@ -14924,7 +14929,7 @@
14924
14929
  return _search.value;
14925
14930
  },
14926
14931
  set: val => {
14927
- _search.value = val;
14932
+ _search.value = val ?? '';
14928
14933
  if (!props.multiple) {
14929
14934
  model.value = [transformItem$3(props, val)];
14930
14935
  }
@@ -20529,10 +20534,18 @@
20529
20534
  itemsPerPage,
20530
20535
  setItemsPerPage
20531
20536
  } = usePagination();
20532
- const itemsPerPageOptions = vue.computed(() => props.itemsPerPageOptions.map(option => ({
20533
- ...option,
20534
- title: t(option.title)
20535
- })));
20537
+ const itemsPerPageOptions = vue.computed(() => props.itemsPerPageOptions.map(option => {
20538
+ if (typeof option === 'number') {
20539
+ return {
20540
+ value: option,
20541
+ title: option === -1 ? t('$vuetify.dataFooter.itemsPerPageAll') : String(option)
20542
+ };
20543
+ }
20544
+ return {
20545
+ ...option,
20546
+ title: t(option.title)
20547
+ };
20548
+ }));
20536
20549
  return () => vue.createVNode("div", {
20537
20550
  "class": "v-data-table-footer"
20538
20551
  }, [slots.prepend?.(), vue.createVNode("div", {
@@ -22163,6 +22176,17 @@
22163
22176
  }
22164
22177
  return new Intl.DateTimeFormat(locale, options).format(date);
22165
22178
  }
22179
+ function toISO(adapter, value) {
22180
+ const date = adapter.toJsDate(value);
22181
+ const year = date.getFullYear();
22182
+ const month = padStart(String(date.getMonth() + 1), 2, '0');
22183
+ const day = padStart(String(date.getDate()), 2, '0');
22184
+ return `${year}-${month}-${day}`;
22185
+ }
22186
+ function parseISO(value) {
22187
+ const [year, month, day] = value.split('-').map(Number);
22188
+ return new Date(year, month - 1, day);
22189
+ }
22166
22190
  function addDays(date, amount) {
22167
22191
  const d = new Date(date);
22168
22192
  d.setDate(d.getDate() + amount);
@@ -22237,6 +22261,12 @@
22237
22261
  toJsDate(date) {
22238
22262
  return date;
22239
22263
  }
22264
+ toISO(date) {
22265
+ return toISO(this, date);
22266
+ }
22267
+ parseISO(date) {
22268
+ return parseISO(date);
22269
+ }
22240
22270
  addDays(date, amount) {
22241
22271
  return addDays(date, amount);
22242
22272
  }
@@ -22517,6 +22547,7 @@
22517
22547
  }
22518
22548
 
22519
22549
  const makeVDatePickerMonthProps = propsFactory({
22550
+ allowedDates: [Array, Function],
22520
22551
  color: String,
22521
22552
  showAdjacentMonths: Boolean,
22522
22553
  hideWeekdays: Boolean,
@@ -22603,7 +22634,6 @@
22603
22634
  const startDate = validDates[0];
22604
22635
  const endDate = validDates[1];
22605
22636
  return days.map((date, index) => {
22606
- const isDisabled = !!(props.min && adapter.isAfter(props.min, date) || props.max && adapter.isAfter(date, props.max));
22607
22637
  const isStart = startDate && adapter.isSameDay(date, startDate);
22608
22638
  const isEnd = endDate && adapter.isSameDay(date, endDate);
22609
22639
  const isAdjacent = !adapter.isSameMonth(date, month.value);
@@ -22614,7 +22644,7 @@
22614
22644
  formatted: adapter.format(date, 'keyboardDate'),
22615
22645
  year: adapter.getYear(date),
22616
22646
  month: adapter.getMonth(date),
22617
- isDisabled,
22647
+ isDisabled: isDisabled(date),
22618
22648
  isWeekStart: index % 7 === 0,
22619
22649
  isWeekEnd: index % 7 === 6,
22620
22650
  isSelected: isStart || isEnd,
@@ -22641,6 +22671,18 @@
22641
22671
  backgroundColorClasses,
22642
22672
  backgroundColorStyles
22643
22673
  } = useBackgroundColor(props, 'color');
22674
+ function isDisabled(value) {
22675
+ const date = adapter.date(value);
22676
+ if (props.min && adapter.isAfter(props.min, date)) return true;
22677
+ if (props.max && adapter.isAfter(date, props.max)) return true;
22678
+ if (Array.isArray(props.allowedDates)) {
22679
+ return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date));
22680
+ }
22681
+ if (typeof props.allowedDates === 'function') {
22682
+ return !props.allowedDates(date);
22683
+ }
22684
+ return false;
22685
+ }
22644
22686
  function selectDate(date) {
22645
22687
  let newModel = props.modelValue.slice();
22646
22688
  if (props.multiple) {
@@ -23545,7 +23587,7 @@
23545
23587
  placeholder: String,
23546
23588
  type: {
23547
23589
  type: String,
23548
- default: 'text'
23590
+ default: 'number'
23549
23591
  },
23550
23592
  ...makeDimensionProps(),
23551
23593
  ...makeFocusProps(),
@@ -23591,7 +23633,7 @@
23591
23633
  model.value = array;
23592
23634
  let target = null;
23593
23635
  if (focusIndex.value > model.value.length) {
23594
- target = model.value.length + 1;
23636
+ target = model.value.length;
23595
23637
  } else if (focusIndex.value + 1 !== Number(props.length)) {
23596
23638
  target = 'next';
23597
23639
  } else {
@@ -23616,7 +23658,7 @@
23616
23658
  target = 'prev';
23617
23659
  } else {
23618
23660
  requestAnimationFrame(() => {
23619
- inputRef.value[index].select();
23661
+ inputRef.value[index]?.select();
23620
23662
  });
23621
23663
  }
23622
23664
  }
@@ -23645,6 +23687,9 @@
23645
23687
  }
23646
23688
  provideDefaults({
23647
23689
  VField: {
23690
+ color: vue.computed(() => props.color),
23691
+ bgColor: vue.computed(() => props.color),
23692
+ baseColor: vue.computed(() => props.baseColor),
23648
23693
  disabled: vue.computed(() => props.disabled),
23649
23694
  error: vue.computed(() => props.error),
23650
23695
  variant: vue.computed(() => props.variant)
@@ -23660,7 +23705,7 @@
23660
23705
  vue.watch(focusIndex, val => {
23661
23706
  if (val < 0) return;
23662
23707
  IN_BROWSER && window.requestAnimationFrame(() => {
23663
- inputRef.value[val].select();
23708
+ inputRef.value[val]?.select();
23664
23709
  });
23665
23710
  });
23666
23711
  useRender(() => {
@@ -24612,7 +24657,7 @@
24612
24657
  date
24613
24658
  };
24614
24659
  }
24615
- const version$1 = "3.3.20";
24660
+ const version$1 = "3.3.21";
24616
24661
  createVuetify$1.version = version$1;
24617
24662
 
24618
24663
  // Vue's inject() can only be used in setup
@@ -24626,7 +24671,7 @@
24626
24671
 
24627
24672
  /* eslint-disable local-rules/sort-imports */
24628
24673
 
24629
- const version = "3.3.20";
24674
+ const version = "3.3.21";
24630
24675
 
24631
24676
  /* eslint-disable local-rules/sort-imports */
24632
24677