@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
@@ -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
  */
@@ -5935,12 +5935,9 @@
5935
5935
  }
5936
5936
  function reset() {
5937
5937
  items.value.forEach(item => item.reset());
5938
- model.value = null;
5939
5938
  }
5940
5939
  function resetValidation() {
5941
5940
  items.value.forEach(item => item.resetValidation());
5942
- errors.value = [];
5943
- model.value = null;
5944
5941
  }
5945
5942
  vue.watch(items, () => {
5946
5943
  let valid = 0;
@@ -5994,6 +5991,7 @@
5994
5991
  isDisabled,
5995
5992
  isReadonly,
5996
5993
  isValidating,
5994
+ isValid: model,
5997
5995
  items,
5998
5996
  validateOn: vue.toRef(props, 'validateOn')
5999
5997
  });
@@ -6002,6 +6000,7 @@
6002
6000
  isDisabled,
6003
6001
  isReadonly,
6004
6002
  isValidating,
6003
+ isValid: model,
6005
6004
  items,
6006
6005
  validate,
6007
6006
  reset,
@@ -6053,10 +6052,25 @@
6053
6052
  const errorMessages = vue.computed(() => {
6054
6053
  return props.errorMessages.length ? wrapInArray(props.errorMessages).slice(0, Math.max(0, +props.maxErrors)) : internalErrorMessages.value;
6055
6054
  });
6055
+ const validateOn = vue.computed(() => {
6056
+ let value = (props.validateOn ?? form?.validateOn.value) || 'input';
6057
+ if (value === 'lazy') value = 'input lazy';
6058
+ const set = new Set(value?.split(' ') ?? []);
6059
+ return {
6060
+ blur: set.has('blur') || set.has('input'),
6061
+ input: set.has('input'),
6062
+ submit: set.has('submit'),
6063
+ lazy: set.has('lazy')
6064
+ };
6065
+ });
6056
6066
  const isValid = vue.computed(() => {
6057
- if (props.error || errorMessages.value.length) return false;
6067
+ if (props.error || props.errorMessages.length) return false;
6058
6068
  if (!props.rules.length) return true;
6059
- return isPristine.value ? null : true;
6069
+ if (isPristine.value) {
6070
+ return internalErrorMessages.value.length || validateOn.value.lazy ? null : true;
6071
+ } else {
6072
+ return !internalErrorMessages.value.length;
6073
+ }
6060
6074
  });
6061
6075
  const isValidating = vue.shallowRef(false);
6062
6076
  const validationClasses = vue.computed(() => {
@@ -6079,11 +6093,13 @@
6079
6093
  vue.onBeforeUnmount(() => {
6080
6094
  form?.unregister(uid.value);
6081
6095
  });
6082
- const validateOn = vue.computed(() => props.validateOn || form?.validateOn.value || 'input');
6083
-
6084
- // Set initial valid state, for inputs that might not have rules
6085
- vue.onMounted(() => form?.update(uid.value, isValid.value, errorMessages.value));
6086
- useToggleScope(() => validateOn.value === 'input', () => {
6096
+ vue.onMounted(async () => {
6097
+ if (!validateOn.value.lazy) {
6098
+ await validate(true);
6099
+ }
6100
+ form?.update(uid.value, isValid.value, errorMessages.value);
6101
+ });
6102
+ useToggleScope(() => validateOn.value.input, () => {
6087
6103
  vue.watch(validationModel, () => {
6088
6104
  if (validationModel.value != null) {
6089
6105
  validate();
@@ -6095,7 +6111,7 @@
6095
6111
  }
6096
6112
  });
6097
6113
  });
6098
- useToggleScope(() => validateOn.value === 'blur', () => {
6114
+ useToggleScope(() => validateOn.value.blur, () => {
6099
6115
  vue.watch(() => props.focused, val => {
6100
6116
  if (!val) validate();
6101
6117
  });
@@ -6104,14 +6120,19 @@
6104
6120
  form?.update(uid.value, isValid.value, errorMessages.value);
6105
6121
  });
6106
6122
  function reset() {
6107
- resetValidation();
6108
6123
  model.value = null;
6124
+ vue.nextTick(resetValidation);
6109
6125
  }
6110
6126
  function resetValidation() {
6111
6127
  isPristine.value = true;
6112
- internalErrorMessages.value = [];
6128
+ if (!validateOn.value.lazy) {
6129
+ validate(true);
6130
+ } else {
6131
+ internalErrorMessages.value = [];
6132
+ }
6113
6133
  }
6114
6134
  async function validate() {
6135
+ let silent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
6115
6136
  const results = [];
6116
6137
  isValidating.value = true;
6117
6138
  for (const rule of props.rules) {
@@ -6130,7 +6151,7 @@
6130
6151
  }
6131
6152
  internalErrorMessages.value = results;
6132
6153
  isValidating.value = false;
6133
- isPristine.value = false;
6154
+ isPristine.value = silent;
6134
6155
  return internalErrorMessages.value;
6135
6156
  }
6136
6157
  return {
@@ -6220,7 +6241,7 @@
6220
6241
  validate
6221
6242
  }));
6222
6243
  const messages = vue.computed(() => {
6223
- if (errorMessages.value.length > 0) {
6244
+ if (!isPristine.value && errorMessages.value.length > 0) {
6224
6245
  return errorMessages.value;
6225
6246
  } else if (props.hint && (props.persistentHint || props.focused)) {
6226
6247
  return props.hint;
@@ -6873,10 +6894,10 @@
6873
6894
  }
6874
6895
  }
6875
6896
  const falseIcon = vue.computed(() => {
6876
- return props.indeterminate ? props.indeterminateIcon : props.falseIcon;
6897
+ return indeterminate.value ? props.indeterminateIcon : props.falseIcon;
6877
6898
  });
6878
6899
  const trueIcon = vue.computed(() => {
6879
- return props.indeterminate ? props.indeterminateIcon : props.trueIcon;
6900
+ return indeterminate.value ? props.indeterminateIcon : props.trueIcon;
6880
6901
  });
6881
6902
  useRender(() => vue.createVNode(VSelectionControl, vue.mergeProps(props, {
6882
6903
  "modelValue": model.value,
@@ -6886,7 +6907,7 @@
6886
6907
  "type": "checkbox",
6887
6908
  "falseIcon": falseIcon.value,
6888
6909
  "trueIcon": trueIcon.value,
6889
- "aria-checked": props.indeterminate ? 'mixed' : undefined
6910
+ "aria-checked": indeterminate.value ? 'mixed' : undefined
6890
6911
  }), slots));
6891
6912
  return {};
6892
6913
  }
@@ -21715,7 +21736,7 @@
21715
21736
  date
21716
21737
  };
21717
21738
  }
21718
- const version$1 = "4.0.0-dev-20230515.0";
21739
+ const version$1 = "4.0.0-dev-20230516.0";
21719
21740
  createVuetify$1.version = version$1;
21720
21741
 
21721
21742
  // Vue's inject() can only be used in setup
@@ -21727,7 +21748,7 @@
21727
21748
  }
21728
21749
  }
21729
21750
 
21730
- const version = "4.0.0-dev-20230515.0";
21751
+ const version = "4.0.0-dev-20230516.0";
21731
21752
 
21732
21753
  const createVuetify = function () {
21733
21754
  let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};