@vuetify/nightly 4.0.0-dev-20230515.0 → 4.0.0-dev-20230516.0

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 (120) hide show
  1. package/CHANGELOG.md +5 -4
  2. package/dist/json/attributes.json +14 -14
  3. package/dist/json/importMap.json +4 -4
  4. package/dist/json/web-types.json +21 -17
  5. package/dist/vuetify-labs.css +7 -3
  6. package/dist/vuetify-labs.d.ts +6549 -1557
  7. package/dist/vuetify-labs.esm.js +42 -21
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +42 -21
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +204 -200
  12. package/dist/vuetify.d.ts +4883 -968
  13. package/dist/vuetify.esm.js +42 -21
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +42 -21
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +182 -180
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAlert/index.d.mts +58 -0
  21. package/lib/components/VApp/index.d.mts +15 -0
  22. package/lib/components/VAppBar/index.d.mts +81 -0
  23. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  24. package/lib/components/VAutocomplete/index.d.mts +68 -10
  25. package/lib/components/VAvatar/index.d.mts +15 -0
  26. package/lib/components/VBadge/index.d.mts +19 -0
  27. package/lib/components/VBanner/index.d.mts +57 -0
  28. package/lib/components/VBottomNavigation/index.d.mts +15 -0
  29. package/lib/components/VBreadcrumbs/index.d.mts +37 -3
  30. package/lib/components/VBtn/index.d.mts +27 -0
  31. package/lib/components/VBtnGroup/index.d.mts +15 -0
  32. package/lib/components/VBtnToggle/index.d.mts +15 -0
  33. package/lib/components/VCard/index.d.mts +142 -0
  34. package/lib/components/VCarousel/index.d.mts +158 -0
  35. package/lib/components/VCheckbox/VCheckboxBtn.mjs +3 -3
  36. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  37. package/lib/components/VCheckbox/index.d.mts +92 -6
  38. package/lib/components/VChip/VChip.css +4 -2
  39. package/lib/components/VChip/VChip.sass +3 -2
  40. package/lib/components/VChip/index.d.mts +63 -0
  41. package/lib/components/VChipGroup/index.d.mts +39 -0
  42. package/lib/components/VCode/index.d.mts +15 -0
  43. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  44. package/lib/components/VCombobox/index.d.mts +68 -10
  45. package/lib/components/VCounter/index.d.mts +15 -0
  46. package/lib/components/VDefaultsProvider/index.d.mts +15 -0
  47. package/lib/components/VDialog/index.d.mts +129 -3
  48. package/lib/components/VDivider/index.d.mts +15 -0
  49. package/lib/components/VExpansionPanel/index.d.mts +72 -0
  50. package/lib/components/VField/index.d.mts +22 -3
  51. package/lib/components/VFileInput/index.d.mts +180 -24
  52. package/lib/components/VFooter/index.d.mts +15 -0
  53. package/lib/components/VForm/index.d.mts +201 -8
  54. package/lib/components/VGrid/index.d.mts +60 -0
  55. package/lib/components/VHover/index.d.mts +27 -0
  56. package/lib/components/VIcon/index.d.mts +30 -0
  57. package/lib/components/VImg/index.d.mts +27 -0
  58. package/lib/components/VInput/VInput.mjs +1 -1
  59. package/lib/components/VInput/VInput.mjs.map +1 -1
  60. package/lib/components/VInput/index.d.mts +40 -9
  61. package/lib/components/VItemGroup/index.d.mts +82 -0
  62. package/lib/components/VKbd/index.d.mts +15 -0
  63. package/lib/components/VLabel/index.d.mts +15 -0
  64. package/lib/components/VLayout/index.d.mts +30 -0
  65. package/lib/components/VLazy/index.d.mts +15 -0
  66. package/lib/components/VList/index.d.mts +159 -3
  67. package/lib/components/VLocaleProvider/index.d.mts +15 -0
  68. package/lib/components/VMain/index.d.mts +15 -0
  69. package/lib/components/VMenu/index.d.mts +129 -3
  70. package/lib/components/VMessages/index.d.mts +15 -0
  71. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +2 -0
  72. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +2 -0
  73. package/lib/components/VNavigationDrawer/index.d.mts +27 -0
  74. package/lib/components/VOverlay/index.d.mts +39 -0
  75. package/lib/components/VPagination/index.d.mts +31 -0
  76. package/lib/components/VParallax/index.d.mts +27 -0
  77. package/lib/components/VProgressCircular/index.d.mts +23 -0
  78. package/lib/components/VProgressLinear/index.d.mts +27 -0
  79. package/lib/components/VRadio/index.d.mts +35 -0
  80. package/lib/components/VRadioGroup/index.d.mts +57 -6
  81. package/lib/components/VRangeSlider/index.d.mts +49 -6
  82. package/lib/components/VRating/index.d.mts +19 -0
  83. package/lib/components/VResponsive/index.d.mts +19 -0
  84. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  85. package/lib/components/VSelect/index.d.mts +68 -10
  86. package/lib/components/VSelectionControl/index.d.mts +7 -3
  87. package/lib/components/VSelectionControlGroup/index.d.mts +15 -0
  88. package/lib/components/VSheet/index.d.mts +15 -0
  89. package/lib/components/VSlideGroup/index.d.mts +58 -0
  90. package/lib/components/VSlider/index.d.mts +49 -6
  91. package/lib/components/VSnackbar/index.d.mts +125 -3
  92. package/lib/components/VSwitch/index.d.mts +61 -6
  93. package/lib/components/VSystemBar/index.d.mts +15 -0
  94. package/lib/components/VTable/index.d.mts +27 -0
  95. package/lib/components/VTabs/index.d.mts +30 -0
  96. package/lib/components/VTextField/index.d.mts +167 -27
  97. package/lib/components/VTextarea/index.d.mts +156 -24
  98. package/lib/components/VThemeProvider/index.d.mts +15 -0
  99. package/lib/components/VTimeline/index.d.mts +38 -0
  100. package/lib/components/VToolbar/index.d.mts +69 -0
  101. package/lib/components/VTooltip/index.d.mts +129 -3
  102. package/lib/components/VValidation/index.d.mts +96 -25
  103. package/lib/components/VVirtualScroll/index.d.mts +7 -3
  104. package/lib/components/VWindow/index.d.mts +74 -0
  105. package/lib/components/index.d.mts +4673 -758
  106. package/lib/components/transitions/index.d.mts +240 -0
  107. package/lib/composables/form.mjs +2 -3
  108. package/lib/composables/form.mjs.map +1 -1
  109. package/lib/composables/validation.mjs +34 -12
  110. package/lib/composables/validation.mjs.map +1 -1
  111. package/lib/entry-bundler.mjs +1 -1
  112. package/lib/framework.mjs +1 -1
  113. package/lib/index.d.mts +1 -1
  114. package/lib/labs/VDataTable/index.d.mts +1056 -25
  115. package/lib/labs/VInfiniteScroll/index.d.mts +31 -0
  116. package/lib/labs/VSkeletonLoader/index.d.mts +15 -0
  117. package/lib/labs/components.d.mts +1099 -22
  118. package/lib/styles/settings/_variables.scss +3 -3
  119. package/lib/util/defineComponent.mjs.map +1 -1
  120. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v4.0.0-dev-20230515.0
2
+ * Vuetify v4.0.0-dev-20230516.0
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -5931,12 +5931,9 @@
5931
5931
  }
5932
5932
  function reset() {
5933
5933
  items.value.forEach(item => item.reset());
5934
- model.value = null;
5935
5934
  }
5936
5935
  function resetValidation() {
5937
5936
  items.value.forEach(item => item.resetValidation());
5938
- errors.value = [];
5939
- model.value = null;
5940
5937
  }
5941
5938
  vue.watch(items, () => {
5942
5939
  let valid = 0;
@@ -5990,6 +5987,7 @@
5990
5987
  isDisabled,
5991
5988
  isReadonly,
5992
5989
  isValidating,
5990
+ isValid: model,
5993
5991
  items,
5994
5992
  validateOn: vue.toRef(props, 'validateOn')
5995
5993
  });
@@ -5998,6 +5996,7 @@
5998
5996
  isDisabled,
5999
5997
  isReadonly,
6000
5998
  isValidating,
5999
+ isValid: model,
6001
6000
  items,
6002
6001
  validate,
6003
6002
  reset,
@@ -6049,10 +6048,25 @@
6049
6048
  const errorMessages = vue.computed(() => {
6050
6049
  return props.errorMessages.length ? wrapInArray(props.errorMessages).slice(0, Math.max(0, +props.maxErrors)) : internalErrorMessages.value;
6051
6050
  });
6051
+ const validateOn = vue.computed(() => {
6052
+ let value = (props.validateOn ?? form?.validateOn.value) || 'input';
6053
+ if (value === 'lazy') value = 'input lazy';
6054
+ const set = new Set(value?.split(' ') ?? []);
6055
+ return {
6056
+ blur: set.has('blur') || set.has('input'),
6057
+ input: set.has('input'),
6058
+ submit: set.has('submit'),
6059
+ lazy: set.has('lazy')
6060
+ };
6061
+ });
6052
6062
  const isValid = vue.computed(() => {
6053
- if (props.error || errorMessages.value.length) return false;
6063
+ if (props.error || props.errorMessages.length) return false;
6054
6064
  if (!props.rules.length) return true;
6055
- return isPristine.value ? null : true;
6065
+ if (isPristine.value) {
6066
+ return internalErrorMessages.value.length || validateOn.value.lazy ? null : true;
6067
+ } else {
6068
+ return !internalErrorMessages.value.length;
6069
+ }
6056
6070
  });
6057
6071
  const isValidating = vue.shallowRef(false);
6058
6072
  const validationClasses = vue.computed(() => {
@@ -6075,11 +6089,13 @@
6075
6089
  vue.onBeforeUnmount(() => {
6076
6090
  form?.unregister(uid.value);
6077
6091
  });
6078
- const validateOn = vue.computed(() => props.validateOn || form?.validateOn.value || 'input');
6079
-
6080
- // Set initial valid state, for inputs that might not have rules
6081
- vue.onMounted(() => form?.update(uid.value, isValid.value, errorMessages.value));
6082
- useToggleScope(() => validateOn.value === 'input', () => {
6092
+ vue.onMounted(async () => {
6093
+ if (!validateOn.value.lazy) {
6094
+ await validate(true);
6095
+ }
6096
+ form?.update(uid.value, isValid.value, errorMessages.value);
6097
+ });
6098
+ useToggleScope(() => validateOn.value.input, () => {
6083
6099
  vue.watch(validationModel, () => {
6084
6100
  if (validationModel.value != null) {
6085
6101
  validate();
@@ -6091,7 +6107,7 @@
6091
6107
  }
6092
6108
  });
6093
6109
  });
6094
- useToggleScope(() => validateOn.value === 'blur', () => {
6110
+ useToggleScope(() => validateOn.value.blur, () => {
6095
6111
  vue.watch(() => props.focused, val => {
6096
6112
  if (!val) validate();
6097
6113
  });
@@ -6100,14 +6116,19 @@
6100
6116
  form?.update(uid.value, isValid.value, errorMessages.value);
6101
6117
  });
6102
6118
  function reset() {
6103
- resetValidation();
6104
6119
  model.value = null;
6120
+ vue.nextTick(resetValidation);
6105
6121
  }
6106
6122
  function resetValidation() {
6107
6123
  isPristine.value = true;
6108
- internalErrorMessages.value = [];
6124
+ if (!validateOn.value.lazy) {
6125
+ validate(true);
6126
+ } else {
6127
+ internalErrorMessages.value = [];
6128
+ }
6109
6129
  }
6110
6130
  async function validate() {
6131
+ let silent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
6111
6132
  const results = [];
6112
6133
  isValidating.value = true;
6113
6134
  for (const rule of props.rules) {
@@ -6126,7 +6147,7 @@
6126
6147
  }
6127
6148
  internalErrorMessages.value = results;
6128
6149
  isValidating.value = false;
6129
- isPristine.value = false;
6150
+ isPristine.value = silent;
6130
6151
  return internalErrorMessages.value;
6131
6152
  }
6132
6153
  return {
@@ -6216,7 +6237,7 @@
6216
6237
  validate
6217
6238
  }));
6218
6239
  const messages = vue.computed(() => {
6219
- if (errorMessages.value.length > 0) {
6240
+ if (!isPristine.value && errorMessages.value.length > 0) {
6220
6241
  return errorMessages.value;
6221
6242
  } else if (props.hint && (props.persistentHint || props.focused)) {
6222
6243
  return props.hint;
@@ -6869,10 +6890,10 @@
6869
6890
  }
6870
6891
  }
6871
6892
  const falseIcon = vue.computed(() => {
6872
- return props.indeterminate ? props.indeterminateIcon : props.falseIcon;
6893
+ return indeterminate.value ? props.indeterminateIcon : props.falseIcon;
6873
6894
  });
6874
6895
  const trueIcon = vue.computed(() => {
6875
- return props.indeterminate ? props.indeterminateIcon : props.trueIcon;
6896
+ return indeterminate.value ? props.indeterminateIcon : props.trueIcon;
6876
6897
  });
6877
6898
  useRender(() => vue.createVNode(VSelectionControl, vue.mergeProps(props, {
6878
6899
  "modelValue": model.value,
@@ -6882,7 +6903,7 @@
6882
6903
  "type": "checkbox",
6883
6904
  "falseIcon": falseIcon.value,
6884
6905
  "trueIcon": trueIcon.value,
6885
- "aria-checked": props.indeterminate ? 'mixed' : undefined
6906
+ "aria-checked": indeterminate.value ? 'mixed' : undefined
6886
6907
  }), slots));
6887
6908
  return {};
6888
6909
  }
@@ -19601,7 +19622,7 @@
19601
19622
  date
19602
19623
  };
19603
19624
  }
19604
- const version$1 = "4.0.0-dev-20230515.0";
19625
+ const version$1 = "4.0.0-dev-20230516.0";
19605
19626
  createVuetify$1.version = version$1;
19606
19627
 
19607
19628
  // Vue's inject() can only be used in setup
@@ -19621,7 +19642,7 @@
19621
19642
  ...options
19622
19643
  });
19623
19644
  };
19624
- const version = "4.0.0-dev-20230515.0";
19645
+ const version = "4.0.0-dev-20230516.0";
19625
19646
  createVuetify.version = version;
19626
19647
 
19627
19648
  exports.components = components;