@vuetify/nightly 3.8.9-master.2025-06-11 → 3.8.9-master.2025-06-13

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 (48) hide show
  1. package/CHANGELOG.md +19 -3
  2. package/dist/json/attributes.json +3262 -3262
  3. package/dist/json/importMap-labs.json +22 -22
  4. package/dist/json/importMap.json +176 -176
  5. package/dist/json/web-types.json +6344 -6344
  6. package/dist/vuetify-labs.cjs +43 -22
  7. package/dist/vuetify-labs.css +4907 -4905
  8. package/dist/vuetify-labs.d.ts +60 -60
  9. package/dist/vuetify-labs.esm.js +43 -22
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +43 -22
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.cjs +41 -22
  14. package/dist/vuetify.cjs.map +1 -1
  15. package/dist/vuetify.css +3650 -3648
  16. package/dist/vuetify.d.ts +60 -60
  17. package/dist/vuetify.esm.js +41 -22
  18. package/dist/vuetify.esm.js.map +1 -1
  19. package/dist/vuetify.js +41 -22
  20. package/dist/vuetify.js.map +1 -1
  21. package/dist/vuetify.min.css +2 -2
  22. package/dist/vuetify.min.js +19 -17
  23. package/dist/vuetify.min.js.map +1 -1
  24. package/lib/components/VDatePicker/VDatePicker.js +19 -13
  25. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  26. package/lib/components/VDatePicker/VDatePickerYears.js +1 -3
  27. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  28. package/lib/components/VField/VField.js +10 -2
  29. package/lib/components/VField/VField.js.map +1 -1
  30. package/lib/components/VList/VListItem.css +2 -0
  31. package/lib/components/VList/VListItem.sass +2 -0
  32. package/lib/components/VList/_variables.scss +1 -0
  33. package/lib/components/VSpeedDial/VSpeedDial.css +1 -1
  34. package/lib/components/VSpeedDial/VSpeedDial.sass +3 -1
  35. package/lib/composables/hotkey.d.ts +9 -0
  36. package/lib/composables/hotkey.js +131 -0
  37. package/lib/composables/hotkey.js.map +1 -0
  38. package/lib/composables/transition.js +3 -3
  39. package/lib/composables/transition.js.map +1 -1
  40. package/lib/entry-bundler.js +1 -1
  41. package/lib/framework.d.ts +60 -60
  42. package/lib/framework.js +1 -1
  43. package/lib/labs/VTimePicker/VTimePickerClock.js +3 -1
  44. package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
  45. package/lib/util/helpers.d.ts +3 -0
  46. package/lib/util/helpers.js +7 -0
  47. package/lib/util/helpers.js.map +1 -1
  48. package/package.json +1 -1
package/dist/vuetify.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.9-master.2025-06-11
2
+ * Vuetify v3.8.9-master.2025-06-13
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -536,6 +536,13 @@
536
536
  }
537
537
  return out;
538
538
  }
539
+ function onlyDefinedProps(props) {
540
+ const booleanAttributes = ['checked', 'disabled'];
541
+ return Object.fromEntries(Object.entries(props).filter(_ref => {
542
+ let [key, v] = _ref;
543
+ return booleanAttributes.includes(key) ? !!v : v !== undefined;
544
+ }));
545
+ }
539
546
 
540
547
  // Utilities
541
548
  const block = ['top', 'bottom'];
@@ -3812,10 +3819,10 @@
3812
3819
  } = isObject(transition) ? transition : {};
3813
3820
  let transitionProps;
3814
3821
  if (isObject(transition)) {
3815
- transitionProps = vue.mergeProps(customProps, JSON.parse(JSON.stringify({
3822
+ transitionProps = vue.mergeProps(customProps, onlyDefinedProps({
3816
3823
  disabled,
3817
3824
  group
3818
- })), rest);
3825
+ }), rest);
3819
3826
  } else {
3820
3827
  transitionProps = vue.mergeProps({
3821
3828
  name: disabled || !transition ? '' : transition
@@ -12227,7 +12234,11 @@
12227
12234
  default: slots.loader
12228
12235
  }), hasPrepend && vue.createElementVNode("div", {
12229
12236
  "key": "prepend",
12230
- "class": "v-field__prepend-inner"
12237
+ "class": "v-field__prepend-inner",
12238
+ "onMousedown": e => {
12239
+ e.preventDefault();
12240
+ e.stopPropagation();
12241
+ }
12231
12242
  }, [props.prependInnerIcon && vue.createVNode(InputIcon, {
12232
12243
  "key": "prepend-icon",
12233
12244
  "name": "prependInner",
@@ -12296,7 +12307,11 @@
12296
12307
  })]), [[vue.vShow, props.dirty]])]
12297
12308
  }), hasAppend && vue.createElementVNode("div", {
12298
12309
  "key": "append",
12299
- "class": "v-field__append-inner"
12310
+ "class": "v-field__append-inner",
12311
+ "onMousedown": e => {
12312
+ e.preventDefault();
12313
+ e.stopPropagation();
12314
+ }
12300
12315
  }, [slots['append-inner']?.(slotProps.value), props.appendInnerIcon && vue.createVNode(InputIcon, {
12301
12316
  "key": "append-icon",
12302
12317
  "name": "appendInner",
@@ -22755,9 +22770,7 @@
22755
22770
  const yearRef = templateRef();
22756
22771
  vue.onMounted(async () => {
22757
22772
  await vue.nextTick();
22758
- yearRef.el?.scrollIntoView({
22759
- block: 'center'
22760
- });
22773
+ yearRef.el?.focus();
22761
22774
  });
22762
22775
  function isYearAllowed(year) {
22763
22776
  if (Array.isArray(props.allowedYears) && props.allowedYears.length) {
@@ -22893,8 +22906,16 @@
22893
22906
  return value && adapter.isValid(value) ? value : today;
22894
22907
  });
22895
22908
  const headerColor = vue.toRef(() => props.headerColor ?? props.color);
22896
- const month = vue.ref(Number(props.month ?? adapter.getMonth(adapter.startOfMonth(internal.value))));
22897
- const year = vue.ref(Number(props.year ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))));
22909
+ const _month = useProxiedModel(props, 'month');
22910
+ const month = vue.computed({
22911
+ get: () => Number(_month.value ?? adapter.getMonth(adapter.startOfMonth(internal.value))),
22912
+ set: v => _month.value = v
22913
+ });
22914
+ const _year = useProxiedModel(props, 'year');
22915
+ const year = vue.computed({
22916
+ get: () => Number(_year.value ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))),
22917
+ set: v => _year.value = v
22918
+ });
22898
22919
  const isReversing = vue.shallowRef(false);
22899
22920
  const header = vue.computed(() => {
22900
22921
  if (props.multiple && model.value.length > 1) {
@@ -22978,9 +22999,9 @@
22978
22999
  } else {
22979
23000
  year.value++;
22980
23001
  month.value = 0;
22981
- onUpdateYear(year.value);
23002
+ onUpdateYear();
22982
23003
  }
22983
- onUpdateMonth(month.value);
23004
+ onUpdateMonth();
22984
23005
  }
22985
23006
  function onClickPrev() {
22986
23007
  if (month.value > 0) {
@@ -22988,9 +23009,9 @@
22988
23009
  } else {
22989
23010
  year.value--;
22990
23011
  month.value = 11;
22991
- onUpdateYear(year.value);
23012
+ onUpdateYear();
22992
23013
  }
22993
- onUpdateMonth(month.value);
23014
+ onUpdateMonth();
22994
23015
  }
22995
23016
  function onClickDate() {
22996
23017
  viewMode.value = 'month';
@@ -23001,13 +23022,11 @@
23001
23022
  function onClickYear() {
23002
23023
  viewMode.value = viewMode.value === 'year' ? 'month' : 'year';
23003
23024
  }
23004
- function onUpdateMonth(value) {
23025
+ function onUpdateMonth() {
23005
23026
  if (viewMode.value === 'months') onClickMonth();
23006
- emit('update:month', value);
23007
23027
  }
23008
- function onUpdateYear(value) {
23028
+ function onUpdateYear() {
23009
23029
  if (viewMode.value === 'year') onClickYear();
23010
- emit('update:year', value);
23011
23030
  }
23012
23031
  vue.watch(model, (val, oldVal) => {
23013
23032
  const arrBefore = wrapInArray(oldVal);
@@ -23019,11 +23038,11 @@
23019
23038
  const newYear = adapter.getYear(after);
23020
23039
  if (newMonth !== month.value) {
23021
23040
  month.value = newMonth;
23022
- onUpdateMonth(month.value);
23041
+ onUpdateMonth();
23023
23042
  }
23024
23043
  if (newYear !== year.value) {
23025
23044
  year.value = newYear;
23026
- onUpdateYear(year.value);
23045
+ onUpdateYear();
23027
23046
  }
23028
23047
  isReversing.value = adapter.isBefore(before, after);
23029
23048
  });
@@ -29468,7 +29487,7 @@
29468
29487
  };
29469
29488
  });
29470
29489
  }
29471
- const version$1 = "3.8.9-master.2025-06-11";
29490
+ const version$1 = "3.8.9-master.2025-06-13";
29472
29491
  createVuetify$1.version = version$1;
29473
29492
 
29474
29493
  // Vue's inject() can only be used in setup
@@ -29493,7 +29512,7 @@
29493
29512
  ...options
29494
29513
  });
29495
29514
  };
29496
- const version = "3.8.9-master.2025-06-11";
29515
+ const version = "3.8.9-master.2025-06-13";
29497
29516
  createVuetify.version = version;
29498
29517
 
29499
29518
  exports.blueprints = index;