@vuetify/nightly 3.7.6-master.2024-12-26 → 3.7.6-master.2025-01-16

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 (61) hide show
  1. package/dist/json/attributes.json +1540 -1540
  2. package/dist/json/importMap-labs.json +18 -18
  3. package/dist/json/importMap.json +168 -168
  4. package/dist/json/web-types.json +2725 -2705
  5. package/dist/vuetify-labs.css +3281 -3277
  6. package/dist/vuetify-labs.d.ts +129 -104
  7. package/dist/vuetify-labs.esm.js +61 -27
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +61 -27
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +3686 -3682
  12. package/dist/vuetify.d.ts +65 -68
  13. package/dist/vuetify.esm.js +41 -22
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +41 -22
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +930 -924
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAutocomplete/VAutocomplete.mjs +7 -4
  21. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  22. package/lib/components/VColorPicker/VColorPickerPreview.mjs +2 -2
  23. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  24. package/lib/components/VCombobox/VCombobox.mjs +7 -4
  25. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  26. package/lib/components/VDialog/VDialog.css +5 -2
  27. package/lib/components/VDialog/VDialog.sass +6 -2
  28. package/lib/components/VField/VField.mjs +1 -1
  29. package/lib/components/VField/VField.mjs.map +1 -1
  30. package/lib/components/VInput/VInput.css +1 -1
  31. package/lib/components/VInput/VInput.sass +1 -1
  32. package/lib/components/VProgressLinear/VProgressLinear.mjs +1 -1
  33. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  34. package/lib/components/VSlideGroup/VSlideGroup.mjs +12 -2
  35. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  36. package/lib/components/VSparkline/VBarline.mjs +3 -2
  37. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  38. package/lib/components/VSparkline/VTrendline.mjs +2 -1
  39. package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
  40. package/lib/components/VSparkline/index.d.mts +7 -10
  41. package/lib/components/VSparkline/util/line.mjs +1 -1
  42. package/lib/components/VSparkline/util/line.mjs.map +1 -1
  43. package/lib/components/VStepper/VStepperItem.mjs +1 -0
  44. package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
  45. package/lib/components/VTextarea/VTextarea.css +1 -0
  46. package/lib/components/VTextarea/VTextarea.sass +1 -0
  47. package/lib/components/index.d.mts +7 -10
  48. package/lib/composables/filter.mjs +3 -3
  49. package/lib/composables/filter.mjs.map +1 -1
  50. package/lib/entry-bundler.mjs +1 -1
  51. package/lib/framework.mjs +1 -1
  52. package/lib/index.d.mts +58 -58
  53. package/lib/labs/VDateInput/VDateInput.mjs +19 -5
  54. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
  55. package/lib/labs/VDateInput/index.d.mts +176 -97
  56. package/lib/labs/components.d.mts +227 -199
  57. package/lib/locale/az.mjs +28 -28
  58. package/lib/locale/az.mjs.map +1 -1
  59. package/lib/locale/nl.mjs +5 -5
  60. package/lib/locale/nl.mjs.map +1 -1
  61. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.7.6-master.2024-12-26
2
+ * Vuetify v3.7.6-master.2025-01-16
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -5273,7 +5273,7 @@
5273
5273
  "aria-hidden": props.active ? 'false' : 'true',
5274
5274
  "aria-valuemin": "0",
5275
5275
  "aria-valuemax": props.max,
5276
- "aria-valuenow": props.indeterminate ? undefined : normalizedValue.value,
5276
+ "aria-valuenow": props.indeterminate ? undefined : Math.min(parseFloat(progress.value), max.value),
5277
5277
  "onClick": props.clickable && handleClick
5278
5278
  }, {
5279
5279
  default: () => [props.stream && vue.createVNode("div", {
@@ -7852,6 +7852,14 @@
7852
7852
  toFocus('last');
7853
7853
  }
7854
7854
  }
7855
+ function getSiblingElement(el, location) {
7856
+ if (!el) return undefined;
7857
+ let sibling = el;
7858
+ do {
7859
+ sibling = sibling?.[location === 'next' ? 'nextElementSibling' : 'previousElementSibling'];
7860
+ } while (sibling?.hasAttribute('disabled'));
7861
+ return sibling;
7862
+ }
7855
7863
  function focus(location) {
7856
7864
  if (!contentRef.el) return;
7857
7865
  let el;
@@ -7859,15 +7867,17 @@
7859
7867
  const focusable = focusableChildren(contentRef.el);
7860
7868
  el = focusable[0];
7861
7869
  } else if (location === 'next') {
7862
- el = contentRef.el.querySelector(':focus')?.nextElementSibling;
7870
+ el = getSiblingElement(contentRef.el.querySelector(':focus'), location);
7863
7871
  if (!el) return focus('first');
7864
7872
  } else if (location === 'prev') {
7865
- el = contentRef.el.querySelector(':focus')?.previousElementSibling;
7873
+ el = getSiblingElement(contentRef.el.querySelector(':focus'), location);
7866
7874
  if (!el) return focus('last');
7867
7875
  } else if (location === 'first') {
7868
7876
  el = contentRef.el.firstElementChild;
7877
+ if (el?.hasAttribute('disabled')) el = getSiblingElement(el, 'next');
7869
7878
  } else if (location === 'last') {
7870
7879
  el = contentRef.el.lastElementChild;
7880
+ if (el?.hasAttribute('disabled')) el = getSiblingElement(el, 'prev');
7871
7881
  }
7872
7882
  if (el) {
7873
7883
  el.focus({
@@ -11815,7 +11825,7 @@
11815
11825
  useRender(() => {
11816
11826
  const isOutlined = props.variant === 'outlined';
11817
11827
  const hasPrepend = !!(slots['prepend-inner'] || props.prependInnerIcon);
11818
- const hasClear = !!(props.clearable || slots.clear);
11828
+ const hasClear = !!(props.clearable || slots.clear) && !props.disabled;
11819
11829
  const hasAppend = !!(slots['append-inner'] || props.appendInnerIcon || hasClear);
11820
11830
  const label = () => slots.label ? slots.label({
11821
11831
  ...slotProps.value,
@@ -13097,8 +13107,8 @@
13097
13107
  return array;
13098
13108
  }
13099
13109
  function useFilter(props, items, query, options) {
13100
- const filteredItems = vue.ref([]);
13101
- const filteredMatches = vue.ref(new Map());
13110
+ const filteredItems = vue.shallowRef([]);
13111
+ const filteredMatches = vue.shallowRef(new Map());
13102
13112
  const transformedItems = vue.computed(() => options?.transform ? vue.unref(items).map(item => [item, options.transform(item)]) : vue.unref(items));
13103
13113
  vue.watchEffect(() => {
13104
13114
  const _query = typeof query === 'function' ? query() : vue.unref(query);
@@ -13259,7 +13269,7 @@
13259
13269
  menu.value = !menu.value;
13260
13270
  }
13261
13271
  function onListKeydown(e) {
13262
- if (checkPrintable(e)) {
13272
+ if (e.key !== ' ' && checkPrintable(e)) {
13263
13273
  vTextFieldRef.value?.focus();
13264
13274
  }
13265
13275
  }
@@ -13267,7 +13277,7 @@
13267
13277
  if (form.isReadonly.value) return;
13268
13278
  const selectionStart = vTextFieldRef.value.selectionStart;
13269
13279
  const length = model.value.length;
13270
- if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
13280
+ if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
13271
13281
  e.preventDefault();
13272
13282
  }
13273
13283
  if (['Enter', 'ArrowDown'].includes(e.key)) {
@@ -13290,12 +13300,14 @@
13290
13300
  if (['Backspace', 'Delete'].includes(e.key)) {
13291
13301
  if (!props.multiple && hasSelectionSlot.value && model.value.length > 0 && !search.value) return select(model.value[0], false);
13292
13302
  if (~selectionIndex.value) {
13303
+ e.preventDefault();
13293
13304
  const originalSelectionIndex = selectionIndex.value;
13294
13305
  select(model.value[selectionIndex.value], false);
13295
13306
  selectionIndex.value = originalSelectionIndex >= length - 1 ? length - 2 : originalSelectionIndex;
13296
13307
  } else if (e.key === 'Backspace' && !search.value) {
13297
13308
  selectionIndex.value = length - 1;
13298
13309
  }
13310
+ return;
13299
13311
  }
13300
13312
  if (!props.multiple) return;
13301
13313
  if (e.key === 'ArrowLeft') {
@@ -13307,8 +13319,7 @@
13307
13319
  selectionIndex.value = -1;
13308
13320
  vTextFieldRef.value.setSelectionRange(search.value?.length, search.value?.length);
13309
13321
  }
13310
- }
13311
- if (e.key === 'ArrowRight') {
13322
+ } else if (e.key === 'ArrowRight') {
13312
13323
  if (selectionIndex.value < 0) return;
13313
13324
  const next = selectionIndex.value + 1;
13314
13325
  if (model.value[next]) {
@@ -13317,6 +13328,8 @@
13317
13328
  selectionIndex.value = -1;
13318
13329
  vTextFieldRef.value.setSelectionRange(0, 0);
13319
13330
  }
13331
+ } else if (~selectionIndex.value && checkPrintable(e)) {
13332
+ selectionIndex.value = -1;
13320
13333
  }
13321
13334
  }
13322
13335
  function onChange(e) {
@@ -16332,7 +16345,7 @@
16332
16345
  const result = await eyeDropper.open({
16333
16346
  signal: abortController.signal
16334
16347
  });
16335
- const colorHexValue = HexToHSV(result.sRGBHex);
16348
+ const colorHexValue = RGBtoHSV(parseColor(result.sRGBHex));
16336
16349
  emit('update:color', {
16337
16350
  ...(props.color ?? nullColor),
16338
16351
  ...colorHexValue
@@ -17143,7 +17156,7 @@
17143
17156
  menu.value = !menu.value;
17144
17157
  }
17145
17158
  function onListKeydown(e) {
17146
- if (checkPrintable(e)) {
17159
+ if (e.key !== ' ' && checkPrintable(e)) {
17147
17160
  vTextFieldRef.value?.focus();
17148
17161
  }
17149
17162
  }
@@ -17152,7 +17165,7 @@
17152
17165
  if (isComposingIgnoreKey(e) || form.isReadonly.value) return;
17153
17166
  const selectionStart = vTextFieldRef.value.selectionStart;
17154
17167
  const length = model.value.length;
17155
- if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
17168
+ if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
17156
17169
  e.preventDefault();
17157
17170
  }
17158
17171
  if (['Enter', 'ArrowDown'].includes(e.key)) {
@@ -17182,12 +17195,14 @@
17182
17195
  if (['Backspace', 'Delete'].includes(e.key)) {
17183
17196
  if (!props.multiple && hasSelectionSlot.value && model.value.length > 0 && !search.value) return select(model.value[0], false);
17184
17197
  if (~selectionIndex.value) {
17198
+ e.preventDefault();
17185
17199
  const originalSelectionIndex = selectionIndex.value;
17186
17200
  select(model.value[selectionIndex.value], false);
17187
17201
  selectionIndex.value = originalSelectionIndex >= length - 1 ? length - 2 : originalSelectionIndex;
17188
17202
  } else if (e.key === 'Backspace' && !search.value) {
17189
17203
  selectionIndex.value = length - 1;
17190
17204
  }
17205
+ return;
17191
17206
  }
17192
17207
  if (!props.multiple) return;
17193
17208
  if (e.key === 'ArrowLeft') {
@@ -17199,8 +17214,7 @@
17199
17214
  selectionIndex.value = -1;
17200
17215
  vTextFieldRef.value.setSelectionRange(search.value.length, search.value.length);
17201
17216
  }
17202
- }
17203
- if (e.key === 'ArrowRight') {
17217
+ } else if (e.key === 'ArrowRight') {
17204
17218
  if (selectionIndex.value < 0) return;
17205
17219
  const next = selectionIndex.value + 1;
17206
17220
  if (model.value[next]) {
@@ -17209,6 +17223,8 @@
17209
17223
  selectionIndex.value = -1;
17210
17224
  vTextFieldRef.value.setSelectionRange(0, 0);
17211
17225
  }
17226
+ } else if (~selectionIndex.value && checkPrintable(e)) {
17227
+ selectionIndex.value = -1;
17212
17228
  }
17213
17229
  }
17214
17230
  function onAfterEnter() {
@@ -25781,7 +25797,7 @@
25781
25797
  default: 8
25782
25798
  },
25783
25799
  showLabels: Boolean,
25784
- smooth: Boolean,
25800
+ smooth: [Boolean, String, Number],
25785
25801
  width: {
25786
25802
  type: [Number, String],
25787
25803
  default: 300
@@ -25862,6 +25878,7 @@
25862
25878
  });
25863
25879
  const bars = vue.computed(() => genBars(items.value, boundary.value));
25864
25880
  const offsetX = vue.computed(() => (Math.abs(bars.value[0].x - bars.value[1].x) - lineWidth.value) / 2);
25881
+ const smooth = vue.computed(() => typeof props.smooth === 'boolean' ? props.smooth ? 2 : 0 : Number(props.smooth));
25865
25882
  useRender(() => {
25866
25883
  const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse();
25867
25884
  return vue.createVNode("svg", {
@@ -25883,8 +25900,8 @@
25883
25900
  "y": item.y,
25884
25901
  "width": lineWidth.value,
25885
25902
  "height": item.height,
25886
- "rx": typeof props.smooth === 'number' ? props.smooth : props.smooth ? 2 : 0,
25887
- "ry": typeof props.smooth === 'number' ? props.smooth : props.smooth ? 2 : 0
25903
+ "rx": smooth.value,
25904
+ "ry": smooth.value
25888
25905
  }, [props.autoDraw && vue.createVNode(vue.Fragment, null, [vue.createVNode("animate", {
25889
25906
  "attributeName": "y",
25890
25907
  "from": item.y + item.height,
@@ -26086,7 +26103,8 @@
26086
26103
  immediate: true
26087
26104
  });
26088
26105
  function genPath$1(fill) {
26089
- return genPath(genPoints(items.value, boundary.value), props.smooth ? 8 : Number(props.smooth), fill, parseInt(props.height, 10));
26106
+ const smoothValue = typeof props.smooth === 'boolean' ? props.smooth ? 8 : 0 : Number(props.smooth);
26107
+ return genPath(genPoints(items.value, boundary.value), smoothValue, fill, parseInt(props.height, 10));
26090
26108
  }
26091
26109
  useRender(() => {
26092
26110
  const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse();
@@ -26410,6 +26428,7 @@
26410
26428
  'v-stepper-item--error': hasError.value
26411
26429
  }, group?.selectedClass.value],
26412
26430
  "disabled": !props.editable,
26431
+ "type": "button",
26413
26432
  "onClick": onClick
26414
26433
  }, [isClickable.value && genOverlays(true, 'v-stepper-item'), vue.createVNode(VAvatar, {
26415
26434
  "key": "stepper-avatar",
@@ -28288,7 +28307,7 @@
28288
28307
  goTo
28289
28308
  };
28290
28309
  }
28291
- const version$1 = "3.7.6-master.2024-12-26";
28310
+ const version$1 = "3.7.6-master.2025-01-16";
28292
28311
  createVuetify$1.version = version$1;
28293
28312
 
28294
28313
  // Vue's inject() can only be used in setup
@@ -28313,7 +28332,7 @@
28313
28332
  ...options
28314
28333
  });
28315
28334
  };
28316
- const version = "3.7.6-master.2024-12-26";
28335
+ const version = "3.7.6-master.2025-01-16";
28317
28336
  createVuetify.version = version;
28318
28337
 
28319
28338
  exports.blueprints = index;