@vuetify/nightly 3.7.6-master.2025-01-15 → 3.7.6-master.2025-01-18

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 (44) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/json/attributes.json +3622 -3622
  3. package/dist/json/importMap-labs.json +14 -14
  4. package/dist/json/importMap.json +164 -164
  5. package/dist/json/web-types.json +6178 -6158
  6. package/dist/vuetify-labs.css +3425 -3422
  7. package/dist/vuetify-labs.d.ts +129 -104
  8. package/dist/vuetify-labs.esm.js +53 -20
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +53 -20
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +2764 -2761
  13. package/dist/vuetify.d.ts +62 -65
  14. package/dist/vuetify.esm.js +33 -15
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +33 -15
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +29 -23
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAutocomplete/VAutocomplete.mjs +6 -3
  22. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  23. package/lib/components/VCombobox/VCombobox.mjs +6 -3
  24. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  25. package/lib/components/VDialog/VDialog.css +5 -2
  26. package/lib/components/VDialog/VDialog.sass +6 -2
  27. package/lib/components/VSlideGroup/VSlideGroup.mjs +12 -2
  28. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  29. package/lib/components/VSparkline/VBarline.mjs +3 -2
  30. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  31. package/lib/components/VSparkline/VTrendline.mjs +2 -1
  32. package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
  33. package/lib/components/VSparkline/index.d.mts +7 -10
  34. package/lib/components/VSparkline/util/line.mjs +1 -1
  35. package/lib/components/VSparkline/util/line.mjs.map +1 -1
  36. package/lib/components/index.d.mts +7 -10
  37. package/lib/entry-bundler.mjs +1 -1
  38. package/lib/framework.mjs +1 -1
  39. package/lib/index.d.mts +55 -55
  40. package/lib/labs/VDateInput/VDateInput.mjs +19 -5
  41. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
  42. package/lib/labs/VDateInput/index.d.mts +176 -97
  43. package/lib/labs/components.d.mts +227 -199
  44. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.7.6-master.2025-01-15
2
+ * Vuetify v3.7.6-master.2025-01-18
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -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({
@@ -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) {
@@ -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();
@@ -28289,7 +28307,7 @@
28289
28307
  goTo
28290
28308
  };
28291
28309
  }
28292
- const version$1 = "3.7.6-master.2025-01-15";
28310
+ const version$1 = "3.7.6-master.2025-01-18";
28293
28311
  createVuetify$1.version = version$1;
28294
28312
 
28295
28313
  // Vue's inject() can only be used in setup
@@ -28314,7 +28332,7 @@
28314
28332
  ...options
28315
28333
  });
28316
28334
  };
28317
- const version = "3.7.6-master.2025-01-15";
28335
+ const version = "3.7.6-master.2025-01-18";
28318
28336
  createVuetify.version = version;
28319
28337
 
28320
28338
  exports.blueprints = index;