vuetify 3.8.3 → 3.8.5

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 (117) hide show
  1. package/dist/_component-variables-labs.sass +1 -0
  2. package/dist/json/attributes.json +4267 -3919
  3. package/dist/json/importMap-labs.json +28 -24
  4. package/dist/json/importMap.json +164 -164
  5. package/dist/json/tags.json +92 -0
  6. package/dist/json/web-types.json +8380 -7153
  7. package/dist/vuetify-labs.cjs +374 -79
  8. package/dist/vuetify-labs.css +3864 -3836
  9. package/dist/vuetify-labs.d.ts +5818 -1810
  10. package/dist/vuetify-labs.esm.js +374 -79
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +374 -79
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +53 -30
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +3556 -3531
  17. package/dist/vuetify.d.ts +4121 -1210
  18. package/dist/vuetify.esm.js +53 -30
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +53 -30
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +30 -27
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VAutocomplete/VAutocomplete.d.ts +795 -77
  26. package/lib/components/VBadge/VBadge.d.ts +22 -46
  27. package/lib/components/VBottomNavigation/VBottomNavigation.d.ts +6 -6
  28. package/lib/components/VBottomSheet/VBottomSheet.css +1 -1
  29. package/lib/components/VBottomSheet/VBottomSheet.d.ts +1434 -80
  30. package/lib/components/VBottomSheet/VBottomSheet.sass +1 -1
  31. package/lib/components/VBtn/VBtn.css +25 -0
  32. package/lib/components/VBtn/VBtn.sass +9 -0
  33. package/lib/components/VBtn/_variables.scss +1 -0
  34. package/lib/components/VCombobox/VCombobox.d.ts +795 -77
  35. package/lib/components/VCounter/VCounter.d.ts +22 -46
  36. package/lib/components/VDataIterator/VDataIterator.d.ts +22 -46
  37. package/lib/components/VDataTable/VDataTable.d.ts +110 -110
  38. package/lib/components/VDataTable/VDataTableHeaders.js +1 -2
  39. package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
  40. package/lib/components/VDataTable/VDataTableServer.d.ts +62 -189
  41. package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
  42. package/lib/components/VDataTable/VDataTableVirtual.d.ts +62 -189
  43. package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
  44. package/lib/components/VDataTable/composables/headers.d.ts +75 -75
  45. package/lib/components/VDataTable/composables/select.js +1 -1
  46. package/lib/components/VDataTable/composables/select.js.map +1 -1
  47. package/lib/components/VDatePicker/VDatePicker.d.ts +3 -3
  48. package/lib/components/VDatePicker/VDatePickerMonth.d.ts +6 -6
  49. package/lib/components/VDialog/VDialog.d.ts +1048 -146
  50. package/lib/components/VDialog/VDialog.js +1 -1
  51. package/lib/components/VDialog/VDialog.js.map +1 -1
  52. package/lib/components/VFab/VFab.d.ts +22 -46
  53. package/lib/components/VFileInput/VFileInput.css +4 -0
  54. package/lib/components/VFileInput/VFileInput.js +21 -3
  55. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  56. package/lib/components/VFileInput/VFileInput.sass +4 -0
  57. package/lib/components/VImg/VImg.d.ts +22 -49
  58. package/lib/components/VLazy/VLazy.d.ts +22 -46
  59. package/lib/components/VMenu/VMenu.d.ts +1048 -146
  60. package/lib/components/VMenu/VMenu.js.map +1 -1
  61. package/lib/components/VMessages/VMessages.d.ts +22 -46
  62. package/lib/components/VNumberInput/VNumberInput.d.ts +3 -3
  63. package/lib/components/VOverlay/VOverlay.d.ts +22 -49
  64. package/lib/components/VOverlay/locationStrategies.js +1 -1
  65. package/lib/components/VOverlay/locationStrategies.js.map +1 -1
  66. package/lib/components/VSelect/VSelect.d.ts +1235 -93
  67. package/lib/components/VSnackbar/VSnackbar.d.ts +58 -109
  68. package/lib/components/VSnackbarQueue/VSnackbarQueue.d.ts +25 -47
  69. package/lib/components/VSnackbarQueue/VSnackbarQueue.js.map +1 -1
  70. package/lib/components/VSpeedDial/VSpeedDial.d.ts +1434 -80
  71. package/lib/components/VTable/VTable.css +2 -6
  72. package/lib/components/VTable/VTable.sass +4 -22
  73. package/lib/components/VTabs/VTabs.d.ts +6 -6
  74. package/lib/components/VTextField/VTextField.js +5 -3
  75. package/lib/components/VTextField/VTextField.js.map +1 -1
  76. package/lib/components/VTooltip/VTooltip.d.ts +58 -109
  77. package/lib/components/VTooltip/VTooltip.js +2 -2
  78. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  79. package/lib/components/transitions/dialog-transition.js +3 -3
  80. package/lib/components/transitions/dialog-transition.js.map +1 -1
  81. package/lib/composables/dateFormat.d.ts +24 -0
  82. package/lib/composables/dateFormat.js +112 -0
  83. package/lib/composables/dateFormat.js.map +1 -0
  84. package/lib/composables/transition.d.ts +10 -20
  85. package/lib/composables/transition.js +15 -12
  86. package/lib/composables/transition.js.map +1 -1
  87. package/lib/entry-bundler.d.ts +6 -6
  88. package/lib/entry-bundler.js +1 -1
  89. package/lib/framework.d.ts +113 -149
  90. package/lib/framework.js +1 -1
  91. package/lib/iconsets/mdi.js +2 -1
  92. package/lib/iconsets/mdi.js.map +1 -1
  93. package/lib/labs/VCalendar/VCalendar.d.ts +3 -3
  94. package/lib/labs/VCalendar/VCalendarDay.d.ts +3 -3
  95. package/lib/labs/VCalendar/VCalendarInterval.d.ts +3 -3
  96. package/lib/labs/VCalendar/VCalendarMonthDay.d.ts +3 -3
  97. package/lib/labs/VColorInput/VColorInput.css +4 -0
  98. package/lib/labs/VColorInput/VColorInput.d.ts +1767 -0
  99. package/lib/labs/VColorInput/VColorInput.js +129 -0
  100. package/lib/labs/VColorInput/VColorInput.js.map +1 -0
  101. package/lib/labs/VColorInput/VColorInput.sass +7 -0
  102. package/lib/labs/VColorInput/_variables.scss +2 -0
  103. package/lib/labs/VColorInput/index.d.ts +1 -0
  104. package/lib/labs/VColorInput/index.js +2 -0
  105. package/lib/labs/VColorInput/index.js.map +1 -0
  106. package/lib/labs/VDateInput/VDateInput.d.ts +96 -34
  107. package/lib/labs/VDateInput/VDateInput.js +71 -17
  108. package/lib/labs/VDateInput/VDateInput.js.map +1 -1
  109. package/lib/labs/VFileUpload/VFileUpload.js +19 -31
  110. package/lib/labs/VFileUpload/VFileUpload.js.map +1 -1
  111. package/lib/labs/VTimePicker/VTimePickerClock.js +2 -2
  112. package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
  113. package/lib/labs/components.d.ts +1 -0
  114. package/lib/labs/components.js +1 -0
  115. package/lib/labs/components.js.map +1 -1
  116. package/lib/util/helpers.js.map +1 -1
  117. package/package.json +7 -8
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.8.3
2
+ * Vuetify v3.8.5
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -1769,7 +1769,8 @@ const aliases = {
1769
1769
  treeviewCollapse: 'mdi-menu-down',
1770
1770
  treeviewExpand: 'mdi-menu-right',
1771
1771
  eyeDropper: 'mdi-eyedropper',
1772
- upload: 'mdi-cloud-upload'
1772
+ upload: 'mdi-cloud-upload',
1773
+ color: 'mdi-palette'
1773
1774
  };
1774
1775
  const mdi = {
1775
1776
  // Not using mergeProps here, functional components merge props by default (?)
@@ -3409,10 +3410,10 @@ const VDialogTransition = genericComponent()({
3409
3410
  async onLeave(el, done) {
3410
3411
  await new Promise(resolve => requestAnimationFrame(resolve));
3411
3412
  let dimensions;
3412
- if (!Array.isArray(props.target) && !props.target.offsetParent && saved.has(el)) {
3413
- dimensions = saved.get(el);
3414
- } else {
3413
+ if (!saved.has(el) || Array.isArray(props.target) || props.target.offsetParent || props.target.getClientRects().length) {
3415
3414
  dimensions = getDimensions(props.target, el);
3415
+ } else {
3416
+ dimensions = saved.get(el);
3416
3417
  }
3417
3418
  const {
3418
3419
  x,
@@ -3737,7 +3738,7 @@ function useRounded(props) {
3737
3738
 
3738
3739
  const makeTransitionProps = propsFactory({
3739
3740
  transition: {
3740
- type: [Boolean, String, Object],
3741
+ type: null,
3741
3742
  default: 'fade-transition',
3742
3743
  validator: val => val !== true
3743
3744
  }
@@ -3755,16 +3756,19 @@ const MaybeTransition = (props, _ref) => {
3755
3756
  const {
3756
3757
  component = group ? TransitionGroup : Transition,
3757
3758
  ...customProps
3758
- } = typeof transition === 'object' ? transition : {};
3759
- return h(component, mergeProps(typeof transition === 'string' ? {
3760
- name: disabled ? '' : transition
3761
- } : customProps, typeof transition === 'string' ? {} : Object.fromEntries(Object.entries({
3762
- disabled,
3763
- group
3764
- }).filter(_ref2 => {
3765
- let [_, v] = _ref2;
3766
- return v !== undefined;
3767
- })), rest), slots);
3759
+ } = isObject(transition) ? transition : {};
3760
+ let transitionProps;
3761
+ if (isObject(transition)) {
3762
+ transitionProps = mergeProps(customProps, JSON.parse(JSON.stringify({
3763
+ disabled,
3764
+ group
3765
+ })), rest);
3766
+ } else {
3767
+ transitionProps = mergeProps({
3768
+ name: disabled || !transition ? '' : transition
3769
+ }, rest);
3770
+ }
3771
+ return h(component, transitionProps, slots);
3768
3772
  };
3769
3773
 
3770
3774
  // Utilities
@@ -10439,7 +10443,7 @@ function connectedLocationStrategy(data, props, contentStyles) {
10439
10443
  observe = false;
10440
10444
  requestAnimationFrame(() => observe = true);
10441
10445
  if (!data.target.value || !data.contentEl.value) return;
10442
- if (Array.isArray(data.target.value) || data.target.value.offsetParent) {
10446
+ if (Array.isArray(data.target.value) || data.target.value.offsetParent || data.target.value.getClientRects().length) {
10443
10447
  targetBox = getTargetBox(data.target.value);
10444
10448
  } // Otherwise target element is hidden, use last known value
10445
10449
 
@@ -12359,11 +12363,12 @@ const VTextField = genericComponent()({
12359
12363
  onFocus();
12360
12364
  emit('click:control', e);
12361
12365
  }
12362
- function onClear(e) {
12366
+ function onClear(e, reset) {
12363
12367
  e.stopPropagation();
12364
12368
  onFocus();
12365
12369
  nextTick(() => {
12366
12370
  model.value = null;
12371
+ reset();
12367
12372
  callEvent(props['onClick:clear'], e);
12368
12373
  });
12369
12374
  }
@@ -12408,13 +12413,14 @@ const VTextField = genericComponent()({
12408
12413
  isDisabled,
12409
12414
  isDirty,
12410
12415
  isReadonly,
12411
- isValid
12416
+ isValid,
12417
+ reset
12412
12418
  } = _ref2;
12413
12419
  return createVNode(VField, mergeProps({
12414
12420
  "ref": vFieldRef,
12415
12421
  "onMousedown": onControlMousedown,
12416
12422
  "onClick": onControlClick,
12417
- "onClick:clear": onClear,
12423
+ "onClick:clear": e => onClear(e, reset),
12418
12424
  "onClick:prependInner": props['onClick:prependInner'],
12419
12425
  "onClick:appendInner": props['onClick:appendInner'],
12420
12426
  "role": props.role
@@ -14394,7 +14400,7 @@ const VDialog = genericComponent()({
14394
14400
  }
14395
14401
  function onAfterEnter() {
14396
14402
  emit('afterEnter');
14397
- if (overlay.value?.contentEl && !overlay.value.contentEl.contains(document.activeElement)) {
14403
+ if ((props.scrim || props.retainFocus) && overlay.value?.contentEl && !overlay.value.contentEl.contains(document.activeElement)) {
14398
14404
  overlay.value.contentEl.focus({
14399
14405
  preventScroll: true
14400
14406
  });
@@ -19266,7 +19272,7 @@ function provideSelection(props, _ref9) {
19266
19272
  index = index ?? currentPage.value.findIndex(i => i.value === item.value);
19267
19273
  if (props.selectStrategy !== 'single' && event?.shiftKey && lastSelectedIndex.value !== null) {
19268
19274
  const [start, end] = [lastSelectedIndex.value, index].sort((a, b) => a - b);
19269
- items.push(...currentPage.value.slice(start, end + 1));
19275
+ items.push(...currentPage.value.slice(start, end + 1).filter(item => item.selectable));
19270
19276
  } else {
19271
19277
  items.push(item);
19272
19278
  lastSelectedIndex.value = index;
@@ -20602,7 +20608,6 @@ const VDataTableHeaders = genericComponent()({
20602
20608
  });
20603
20609
  };
20604
20610
  const VDataTableMobileHeaderCell = () => {
20605
- const headerProps = mergeProps(props.headerProps ?? {} ?? {});
20606
20611
  const displayItems = computed(() => {
20607
20612
  return columns.value.filter(column => column?.sortable && !props.disableSort);
20608
20613
  });
@@ -20615,7 +20620,7 @@ const VDataTableHeaders = genericComponent()({
20615
20620
  "tag": "th",
20616
20621
  "class": [...headerCellClasses.value],
20617
20622
  "colspan": headers.value.length + 1
20618
- }, headerProps), {
20623
+ }, props.headerProps), {
20619
20624
  default: () => [createVNode("div", {
20620
20625
  "class": "v-data-table-header__content"
20621
20626
  }, [createVNode(VSelect, {
@@ -23538,6 +23543,7 @@ const VFileInput = genericComponent()({
23538
23543
  const inputRef = ref();
23539
23544
  const isActive = toRef(() => isFocused.value || props.active);
23540
23545
  const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant));
23546
+ const isDragging = shallowRef(false);
23541
23547
  function onFocus() {
23542
23548
  if (inputRef.value !== document.activeElement) {
23543
23549
  inputRef.value?.focus();
@@ -23564,11 +23570,26 @@ const VFileInput = genericComponent()({
23564
23570
  }
23565
23571
  function onDragover(e) {
23566
23572
  e.preventDefault();
23573
+ e.stopImmediatePropagation();
23574
+ isDragging.value = true;
23575
+ }
23576
+ function onDragleave(e) {
23577
+ e.preventDefault();
23578
+ isDragging.value = false;
23567
23579
  }
23568
23580
  function onDrop(e) {
23569
23581
  e.preventDefault();
23570
- if (!e.dataTransfer) return;
23571
- model.value = [...(e.dataTransfer.files ?? [])];
23582
+ e.stopImmediatePropagation();
23583
+ isDragging.value = false;
23584
+ if (!e.dataTransfer?.files?.length || !inputRef.value) return;
23585
+ const dataTransfer = new DataTransfer();
23586
+ for (const file of e.dataTransfer.files) {
23587
+ dataTransfer.items.add(file);
23588
+ }
23589
+ inputRef.value.files = dataTransfer.files;
23590
+ inputRef.value.dispatchEvent(new Event('change', {
23591
+ bubbles: true
23592
+ }));
23572
23593
  }
23573
23594
  watch(model, newValue => {
23574
23595
  const hasModelReset = !Array.isArray(newValue) || !newValue.length;
@@ -23590,6 +23611,7 @@ const VFileInput = genericComponent()({
23590
23611
  "modelValue": props.multiple ? model.value : model.value[0],
23591
23612
  "class": ['v-file-input', {
23592
23613
  'v-file-input--chips': !!props.chips,
23614
+ 'v-file-input--dragging': isDragging.value,
23593
23615
  'v-file-input--hide': props.hideInput,
23594
23616
  'v-input--plain-underlined': isPlainOrUnderlined.value
23595
23617
  }, props.class],
@@ -23651,6 +23673,7 @@ const VFileInput = genericComponent()({
23651
23673
  const target = e.target;
23652
23674
  model.value = [...(target.files ?? [])];
23653
23675
  },
23676
+ "onDragleave": onDragleave,
23654
23677
  "onFocus": onFocus,
23655
23678
  "onBlur": blur
23656
23679
  }, slotProps, inputAttrs), null), createVNode("div", {
@@ -28638,7 +28661,7 @@ const makeVTooltipProps = propsFactory({
28638
28661
  origin: 'auto',
28639
28662
  scrim: false,
28640
28663
  scrollStrategy: 'reposition',
28641
- transition: false
28664
+ transition: null
28642
28665
  }), ['absolute', 'persistent'])
28643
28666
  }, 'VTooltip');
28644
28667
  const VTooltip = genericComponent()({
@@ -28665,7 +28688,7 @@ const VTooltip = genericComponent()({
28665
28688
  return props.origin === 'auto' || props.origin === 'overlap' || props.origin.split(' ').length > 1 || props.location.split(' ').length > 1 ? props.origin : props.origin + ' center';
28666
28689
  });
28667
28690
  const transition = toRef(() => {
28668
- if (props.transition) return props.transition;
28691
+ if (props.transition != null) return props.transition;
28669
28692
  return isActive.value ? 'scale-transition' : 'fade-transition';
28670
28693
  });
28671
28694
  const activatorProps = computed(() => mergeProps({
@@ -29211,7 +29234,7 @@ function createVuetify$1() {
29211
29234
  };
29212
29235
  });
29213
29236
  }
29214
- const version$1 = "3.8.3";
29237
+ const version$1 = "3.8.5";
29215
29238
  createVuetify$1.version = version$1;
29216
29239
 
29217
29240
  // Vue's inject() can only be used in setup
@@ -29236,7 +29259,7 @@ const createVuetify = function () {
29236
29259
  ...options
29237
29260
  });
29238
29261
  };
29239
- const version = "3.8.3";
29262
+ const version = "3.8.5";
29240
29263
  createVuetify.version = version;
29241
29264
 
29242
29265
  export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useLayout, useLocale, useRtl, useTheme, version };