@vuetify/nightly 3.8.10-master.2025-06-19 → 3.8.11-master.2025-06-27

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 (54) hide show
  1. package/CHANGELOG.md +12 -7
  2. package/dist/json/attributes.json +3005 -3005
  3. package/dist/json/importMap-labs.json +20 -20
  4. package/dist/json/importMap.json +162 -162
  5. package/dist/json/web-types.json +5874 -5874
  6. package/dist/vuetify-labs.cjs +37 -37
  7. package/dist/vuetify-labs.css +6315 -6321
  8. package/dist/vuetify-labs.d.ts +58 -58
  9. package/dist/vuetify-labs.esm.js +37 -37
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +37 -37
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.cjs +36 -37
  14. package/dist/vuetify.cjs.map +1 -1
  15. package/dist/vuetify.css +3938 -3944
  16. package/dist/vuetify.d.ts +58 -58
  17. package/dist/vuetify.esm.js +36 -37
  18. package/dist/vuetify.esm.js.map +1 -1
  19. package/dist/vuetify.js +36 -37
  20. package/dist/vuetify.js.map +1 -1
  21. package/dist/vuetify.min.css +2 -2
  22. package/dist/vuetify.min.js +36 -36
  23. package/dist/vuetify.min.js.map +1 -1
  24. package/lib/components/VCarousel/VCarousel.css +0 -1
  25. package/lib/components/VCarousel/VCarousel.js +1 -0
  26. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  27. package/lib/components/VCarousel/VCarousel.sass +0 -1
  28. package/lib/components/VDataTable/VDataTableColumn.js +0 -1
  29. package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
  30. package/lib/components/VDataTable/VDataTableHeaders.js +5 -5
  31. package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
  32. package/lib/components/VDatePicker/VDatePickerMonth.css +3 -8
  33. package/lib/components/VDatePicker/VDatePickerMonth.js +8 -3
  34. package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
  35. package/lib/components/VDatePicker/VDatePickerMonth.sass +3 -8
  36. package/lib/components/VField/VField.js +2 -10
  37. package/lib/components/VField/VField.js.map +1 -1
  38. package/lib/components/VList/VList.js +1 -1
  39. package/lib/components/VList/VList.js.map +1 -1
  40. package/lib/components/VNumberInput/VNumberInput.js +4 -10
  41. package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
  42. package/lib/components/VNumberInput/hold.js +4 -0
  43. package/lib/components/VNumberInput/hold.js.map +1 -1
  44. package/lib/components/VTextField/VTextField.js +1 -1
  45. package/lib/components/VTextField/VTextField.js.map +1 -1
  46. package/lib/composables/calendar.d.ts +1 -0
  47. package/lib/composables/calendar.js +7 -3
  48. package/lib/composables/calendar.js.map +1 -1
  49. package/lib/entry-bundler.js +1 -1
  50. package/lib/framework.d.ts +58 -58
  51. package/lib/framework.js +1 -1
  52. package/lib/labs/VIconBtn/VIconBtn.js +1 -0
  53. package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
  54. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.10-master.2025-06-19
2
+ * Vuetify v3.8.11-master.2025-06-27
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -9991,7 +9991,7 @@
9991
9991
  function transformItem$2(props, item) {
9992
9992
  const type = getPropertyFromItem(item, props.itemType, 'item');
9993
9993
  const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle);
9994
- const value = getPropertyFromItem(item, props.itemValue, undefined);
9994
+ const value = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemValue, undefined);
9995
9995
  const children = getPropertyFromItem(item, props.itemChildren);
9996
9996
  const itemProps = props.itemProps === true ? omit(item, ['children']) : getPropertyFromItem(item, props.itemProps);
9997
9997
  const _props = {
@@ -12236,11 +12236,7 @@
12236
12236
  default: slots.loader
12237
12237
  }), hasPrepend && vue.createElementVNode("div", {
12238
12238
  "key": "prepend",
12239
- "class": "v-field__prepend-inner",
12240
- "onMousedown": e => {
12241
- e.preventDefault();
12242
- e.stopPropagation();
12243
- }
12239
+ "class": "v-field__prepend-inner"
12244
12240
  }, [props.prependInnerIcon && vue.createVNode(InputIcon, {
12245
12241
  "key": "prepend-icon",
12246
12242
  "name": "prependInner",
@@ -12309,11 +12305,7 @@
12309
12305
  })]), [[vue.vShow, props.dirty]])]
12310
12306
  }), hasAppend && vue.createElementVNode("div", {
12311
12307
  "key": "append",
12312
- "class": "v-field__append-inner",
12313
- "onMousedown": e => {
12314
- e.preventDefault();
12315
- e.stopPropagation();
12316
- }
12308
+ "class": "v-field__append-inner"
12317
12309
  }, [slots['append-inner']?.(slotProps.value), props.appendInnerIcon && vue.createVNode(InputIcon, {
12318
12310
  "key": "append-icon",
12319
12311
  "name": "appendInner",
@@ -12424,7 +12416,7 @@
12424
12416
  if (!isFocused.value) focus();
12425
12417
  vue.nextTick(() => {
12426
12418
  if (inputRef.value !== document.activeElement) {
12427
- inputRef.value?.focus();
12419
+ vue.nextTick(() => inputRef.value?.focus());
12428
12420
  }
12429
12421
  });
12430
12422
  }
@@ -15507,6 +15499,7 @@
15507
15499
  }) : vue.createVNode(VBtn, vue.mergeProps(item, props), null);
15508
15500
  })]
15509
15501
  })]), props.progress && vue.createVNode(VProgressLinear, {
15502
+ "absolute": true,
15510
15503
  "class": "v-carousel__progress",
15511
15504
  "color": typeof props.progress === 'string' ? props.progress : undefined,
15512
15505
  "modelValue": (group.getItemIndex(model.value) + 1) / group.items.value.length * 100
@@ -20301,7 +20294,6 @@
20301
20294
  } = _ref;
20302
20295
  const Tag = props.tag ?? 'td';
20303
20296
  return vue.createVNode(Tag, {
20304
- "tabindex": "0",
20305
20297
  "class": vue.normalizeClass(['v-data-table__td', {
20306
20298
  'v-data-table-column--fixed': props.fixed,
20307
20299
  'v-data-table-column--last-fixed': props.lastFixed,
@@ -20702,14 +20694,14 @@
20702
20694
  },
20703
20695
  "colspan": column.colspan,
20704
20696
  "rowspan": column.rowspan,
20705
- "onClick": column.sortable ? () => toggleSort(column) : undefined,
20706
20697
  "fixed": column.fixed,
20707
20698
  "nowrap": column.nowrap,
20708
20699
  "lastFixed": column.lastFixed,
20709
- "noPadding": noPadding
20710
- }, headerProps, {
20711
- "onKeydown": event => column.sortable && handleEnterKeyPress(event, column)
20712
- }), {
20700
+ "noPadding": noPadding,
20701
+ "tabindex": column.sortable ? 0 : undefined,
20702
+ "onClick": column.sortable ? () => toggleSort(column) : undefined,
20703
+ "onKeydown": column.sortable ? event => handleEnterKeyPress(event, column) : undefined
20704
+ }, headerProps), {
20713
20705
  default: () => {
20714
20706
  const columnSlotName = `header.${column.key}`;
20715
20707
  const columnSlotProps = {
@@ -22387,8 +22379,11 @@
22387
22379
  }, v => adapter.getMonth(v));
22388
22380
  const weekDays = vue.computed(() => {
22389
22381
  const firstDayOfWeek = adapter.toJsDate(adapter.startOfWeek(adapter.date(), props.firstDayOfWeek)).getDay();
22390
- // Always generate all days, regardless of props.weekdays
22391
- return [0, 1, 2, 3, 4, 5, 6].map(day => (day + firstDayOfWeek) % 7);
22382
+ return props.weekdays.map(day => (day + firstDayOfWeek) % 7);
22383
+ });
22384
+ const weekdayLabels = vue.computed(() => {
22385
+ const labels = adapter.getWeekdays(props.firstDayOfWeek);
22386
+ return weekDays.value.map(day => labels[day]);
22392
22387
  });
22393
22388
  const weeksInMonth = vue.computed(() => {
22394
22389
  const weeks = adapter.getWeekArray(month.value, props.firstDayOfWeek);
@@ -22469,7 +22464,7 @@
22469
22464
  if (typeof props.allowedDates === 'function') {
22470
22465
  return !props.allowedDates(date);
22471
22466
  }
22472
- return !props.weekdays.includes(adapter.toJsDate(date).getDay());
22467
+ return false;
22473
22468
  }
22474
22469
  return {
22475
22470
  displayValue,
@@ -22479,6 +22474,7 @@
22479
22474
  model,
22480
22475
  weeksInMonth,
22481
22476
  weekDays,
22477
+ weekdayLabels,
22482
22478
  weekNumbers
22483
22479
  };
22484
22480
  }
@@ -22517,7 +22513,9 @@
22517
22513
  const {
22518
22514
  daysInMonth,
22519
22515
  model,
22520
- weekNumbers
22516
+ weekNumbers,
22517
+ weekDays,
22518
+ weekdayLabels
22521
22519
  } = useCalendar(props);
22522
22520
  const adapter = useDate();
22523
22521
  const rangeStart = vue.shallowRef();
@@ -22589,7 +22587,10 @@
22589
22587
  }
22590
22588
  }
22591
22589
  useRender(() => vue.createElementVNode("div", {
22592
- "class": "v-date-picker-month"
22590
+ "class": "v-date-picker-month",
22591
+ "style": {
22592
+ '--v-date-picker-days-in-week': weekDays.value.length
22593
+ }
22593
22594
  }, [props.showWeek && vue.createElementVNode("div", {
22594
22595
  "key": "weeks",
22595
22596
  "class": "v-date-picker-month__weeks"
@@ -22605,7 +22606,7 @@
22605
22606
  "ref": daysRef,
22606
22607
  "key": daysInMonth.value[0].date?.toString(),
22607
22608
  "class": "v-date-picker-month__days"
22608
- }, [!props.hideWeekdays && adapter.getWeekdays(props.firstDayOfWeek).map(weekDay => vue.createElementVNode("div", {
22609
+ }, [!props.hideWeekdays && weekdayLabels.value.map(weekDay => vue.createElementVNode("div", {
22609
22610
  "class": vue.normalizeClass(['v-date-picker-month__day', 'v-date-picker-month__weekday'])
22610
22611
  }, [weekDay])), daysInMonth.value.map((item, i) => {
22611
22612
  const slotProps = {
@@ -25207,6 +25208,8 @@
25207
25208
  function holdStart(value) {
25208
25209
  holdStop();
25209
25210
  tick(value);
25211
+ window.addEventListener('pointerup', holdStop);
25212
+ document.addEventListener('blur', holdStop);
25210
25213
  timeout = window.setTimeout(() => {
25211
25214
  interval = window.setInterval(() => tick(value), HOLD_REPEAT);
25212
25215
  }, HOLD_DELAY);
@@ -25214,6 +25217,8 @@
25214
25217
  function holdStop() {
25215
25218
  window.clearTimeout(timeout);
25216
25219
  window.clearInterval(interval);
25220
+ window.removeEventListener('pointerup', holdStop);
25221
+ document.removeEventListener('blur', holdStop);
25217
25222
  }
25218
25223
  function tick(value) {
25219
25224
  toggleUpDown(value === 'up');
@@ -25325,7 +25330,7 @@
25325
25330
  onClick: onControlClick,
25326
25331
  onPointerup: onControlMouseup,
25327
25332
  onPointerdown: onUpControlMousedown,
25328
- onPointercancel: onControlPointerCancel
25333
+ onPointercancel: onControlMouseup
25329
25334
  }
25330
25335
  };
25331
25336
  const decrementSlotProps = {
@@ -25333,7 +25338,7 @@
25333
25338
  onClick: onControlClick,
25334
25339
  onPointerup: onControlMouseup,
25335
25340
  onPointerdown: onDownControlMousedown,
25336
- onPointercancel: onControlPointerCancel
25341
+ onPointercancel: onControlMouseup
25337
25342
  }
25338
25343
  };
25339
25344
  vue.watch(() => props.precision, () => formatInputValue());
@@ -25413,7 +25418,6 @@
25413
25418
  const el = e.currentTarget;
25414
25419
  el?.releasePointerCapture(e.pointerId);
25415
25420
  e.preventDefault();
25416
- e.stopPropagation();
25417
25421
  holdStop();
25418
25422
  }
25419
25423
  function onUpControlMousedown(e) {
@@ -25430,11 +25434,6 @@
25430
25434
  e.stopPropagation();
25431
25435
  holdStart('down');
25432
25436
  }
25433
- function onControlPointerCancel(e) {
25434
- const el = e.currentTarget;
25435
- el?.releasePointerCapture(e.pointerId);
25436
- holdStop();
25437
- }
25438
25437
  function clampModel() {
25439
25438
  if (controlsDisabled.value) return;
25440
25439
  if (!vTextFieldRef.value) return;
@@ -25484,7 +25483,7 @@
25484
25483
  "onClick": onControlClick,
25485
25484
  "onPointerdown": onUpControlMousedown,
25486
25485
  "onPointerup": onControlMouseup,
25487
- "onPointercancel": onControlPointerCancel,
25486
+ "onPointercancel": onControlMouseup,
25488
25487
  "size": controlNodeSize.value,
25489
25488
  "tabindex": "-1"
25490
25489
  }, null) : vue.createVNode(VDefaultsProvider, {
@@ -25514,7 +25513,7 @@
25514
25513
  "onClick": onControlClick,
25515
25514
  "onPointerdown": onDownControlMousedown,
25516
25515
  "onPointerup": onControlMouseup,
25517
- "onPointercancel": onControlPointerCancel,
25516
+ "onPointercancel": onControlMouseup,
25518
25517
  "size": controlNodeSize.value,
25519
25518
  "tabindex": "-1"
25520
25519
  }, null) : vue.createVNode(VDefaultsProvider, {
@@ -29512,7 +29511,7 @@
29512
29511
  };
29513
29512
  });
29514
29513
  }
29515
- const version$1 = "3.8.10-master.2025-06-19";
29514
+ const version$1 = "3.8.11-master.2025-06-27";
29516
29515
  createVuetify$1.version = version$1;
29517
29516
 
29518
29517
  // Vue's inject() can only be used in setup
@@ -29537,7 +29536,7 @@
29537
29536
  ...options
29538
29537
  });
29539
29538
  };
29540
- const version = "3.8.10-master.2025-06-19";
29539
+ const version = "3.8.11-master.2025-06-27";
29541
29540
  createVuetify.version = version;
29542
29541
 
29543
29542
  exports.blueprints = index;