@vuetify/nightly 3.9.0-master.2025-07-11 → 3.9.0-master.2025-07-13

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 (56) hide show
  1. package/CHANGELOG.md +8 -3
  2. package/dist/json/attributes.json +2382 -2338
  3. package/dist/json/importMap-labs.json +14 -14
  4. package/dist/json/importMap.json +158 -158
  5. package/dist/json/tags.json +11 -0
  6. package/dist/json/web-types.json +4453 -4131
  7. package/dist/vuetify-labs.cjs +49 -28
  8. package/dist/vuetify-labs.css +5886 -5886
  9. package/dist/vuetify-labs.d.ts +831 -283
  10. package/dist/vuetify-labs.esm.js +49 -28
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +49 -28
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +28 -20
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +3262 -3262
  17. package/dist/vuetify.d.ts +577 -206
  18. package/dist/vuetify.esm.js +28 -20
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +28 -20
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +14 -14
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VAutocomplete/VAutocomplete.d.ts +121 -36
  26. package/lib/components/VCombobox/VCombobox.d.ts +121 -36
  27. package/lib/components/VField/VField.d.ts +13 -0
  28. package/lib/components/VField/VField.js +2 -1
  29. package/lib/components/VField/VField.js.map +1 -1
  30. package/lib/components/VFileInput/VFileInput.d.ts +13 -0
  31. package/lib/components/VFileInput/VFileInput.js +3 -1
  32. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  33. package/lib/components/VInput/VInput.d.ts +2 -1
  34. package/lib/components/VInput/VInput.js +15 -14
  35. package/lib/components/VInput/VInput.js.map +1 -1
  36. package/lib/components/VNumberInput/VNumberInput.d.ts +116 -36
  37. package/lib/components/VSelect/VSelect.d.ts +121 -36
  38. package/lib/components/VTextField/VTextField.d.ts +40 -9
  39. package/lib/components/VTextField/VTextField.js +2 -0
  40. package/lib/components/VTextField/VTextField.js.map +1 -1
  41. package/lib/components/VTextarea/VTextarea.d.ts +13 -0
  42. package/lib/components/VTextarea/VTextarea.js +3 -1
  43. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  44. package/lib/entry-bundler.js +1 -1
  45. package/lib/framework.d.ts +52 -52
  46. package/lib/framework.js +1 -1
  47. package/lib/labs/VColorInput/VColorInput.d.ts +13 -0
  48. package/lib/labs/VColorInput/VColorInput.js +14 -6
  49. package/lib/labs/VColorInput/VColorInput.js.map +1 -1
  50. package/lib/labs/VDateInput/VDateInput.d.ts +145 -44
  51. package/lib/labs/VDateInput/VDateInput.js +4 -1
  52. package/lib/labs/VDateInput/VDateInput.js.map +1 -1
  53. package/lib/labs/VMaskInput/VMaskInput.d.ts +121 -36
  54. package/lib/labs/VMaskInput/VMaskInput.js +4 -2
  55. package/lib/labs/VMaskInput/VMaskInput.js.map +1 -1
  56. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.9.0-master.2025-07-11
2
+ * Vuetify v3.9.0-master.2025-07-13
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -7523,7 +7523,6 @@ const VInput = genericComponent()({
7523
7523
  } = useInputIcon(props);
7524
7524
  const uid = useId();
7525
7525
  const id = computed(() => props.id || `input-${uid}`);
7526
- const messagesId = computed(() => `${id.value}-messages`);
7527
7526
  const {
7528
7527
  errorMessages,
7529
7528
  isDirty,
@@ -7537,6 +7536,18 @@ const VInput = genericComponent()({
7537
7536
  validate,
7538
7537
  validationClasses
7539
7538
  } = useValidation(props, 'v-input', id);
7539
+ const messages = computed(() => {
7540
+ if (props.errorMessages?.length || !isPristine.value && errorMessages.value.length) {
7541
+ return errorMessages.value;
7542
+ } else if (props.hint && (props.persistentHint || props.focused)) {
7543
+ return props.hint;
7544
+ } else {
7545
+ return props.messages;
7546
+ }
7547
+ });
7548
+ const hasMessages = toRef(() => messages.value.length > 0);
7549
+ const hasDetails = toRef(() => !props.hideDetails || props.hideDetails === 'auto' && (hasMessages.value || !!slots.details));
7550
+ const messagesId = computed(() => hasDetails.value ? `${id.value}-messages` : undefined);
7540
7551
  const slotProps = computed(() => ({
7541
7552
  id,
7542
7553
  messagesId,
@@ -7546,6 +7557,7 @@ const VInput = genericComponent()({
7546
7557
  isPristine,
7547
7558
  isValid,
7548
7559
  isValidating,
7560
+ hasDetails,
7549
7561
  reset,
7550
7562
  resetValidation,
7551
7563
  validate
@@ -7557,20 +7569,9 @@ const VInput = genericComponent()({
7557
7569
  if (!props.iconColor) return undefined;
7558
7570
  return props.iconColor === true ? color.value : props.iconColor;
7559
7571
  });
7560
- const messages = computed(() => {
7561
- if (props.errorMessages?.length || !isPristine.value && errorMessages.value.length) {
7562
- return errorMessages.value;
7563
- } else if (props.hint && (props.persistentHint || props.focused)) {
7564
- return props.hint;
7565
- } else {
7566
- return props.messages;
7567
- }
7568
- });
7569
7572
  useRender(() => {
7570
7573
  const hasPrepend = !!(slots.prepend || props.prependIcon);
7571
7574
  const hasAppend = !!(slots.append || props.appendIcon);
7572
- const hasMessages = messages.value.length > 0;
7573
- const hasDetails = !props.hideDetails || props.hideDetails === 'auto' && (hasMessages || !!slots.details);
7574
7575
  return createElementVNode("div", {
7575
7576
  "class": normalizeClass(['v-input', `v-input--${props.direction}`, {
7576
7577
  'v-input--center-affix': props.centerAffix,
@@ -7595,13 +7596,13 @@ const VInput = genericComponent()({
7595
7596
  "key": "append-icon",
7596
7597
  "name": "append",
7597
7598
  "color": iconColor.value
7598
- }, null), slots.append?.(slotProps.value)]), hasDetails && createElementVNode("div", {
7599
+ }, null), slots.append?.(slotProps.value)]), hasDetails.value && createElementVNode("div", {
7599
7600
  "id": messagesId.value,
7600
7601
  "class": "v-input__details",
7601
7602
  "role": "alert",
7602
7603
  "aria-live": "polite"
7603
7604
  }, [createVNode(VMessages, {
7604
- "active": hasMessages,
7605
+ "active": hasMessages.value,
7605
7606
  "messages": messages.value
7606
7607
  }, {
7607
7608
  message: slots.message
@@ -12289,6 +12290,7 @@ const makeVFieldProps = propsFactory({
12289
12290
  },
12290
12291
  color: String,
12291
12292
  baseColor: String,
12293
+ details: Boolean,
12292
12294
  dirty: Boolean,
12293
12295
  disabled: {
12294
12296
  type: Boolean,
@@ -12360,7 +12362,7 @@ const VField = genericComponent()({
12360
12362
  const hasFloatingLabel = toRef(() => !props.singleLine && hasLabel.value);
12361
12363
  const uid = useId();
12362
12364
  const id = computed(() => props.id || `input-${uid}`);
12363
- const messagesId = toRef(() => `${id.value}-messages`);
12365
+ const messagesId = toRef(() => !props.details ? undefined : `${id.value}-messages`);
12364
12366
  const labelRef = ref();
12365
12367
  const floatingLabelRef = ref();
12366
12368
  const controlRef = ref();
@@ -12718,6 +12720,7 @@ const VTextField = genericComponent()({
12718
12720
  isDirty,
12719
12721
  isReadonly,
12720
12722
  isValid,
12723
+ hasDetails,
12721
12724
  reset
12722
12725
  } = _ref2;
12723
12726
  return createVNode(VField, mergeProps({
@@ -12734,6 +12737,7 @@ const VTextField = genericComponent()({
12734
12737
  "dirty": isDirty.value || props.dirty,
12735
12738
  "disabled": isDisabled.value,
12736
12739
  "focused": isFocused.value,
12740
+ "details": hasDetails.value,
12737
12741
  "error": isValid.value === false
12738
12742
  }), {
12739
12743
  ...slots,
@@ -24555,7 +24559,8 @@ const VFileInput = genericComponent()({
24555
24559
  isDisabled,
24556
24560
  isDirty,
24557
24561
  isReadonly,
24558
- isValid
24562
+ isValid,
24563
+ hasDetails
24559
24564
  } = _ref3;
24560
24565
  return createVNode(VField, mergeProps({
24561
24566
  "ref": vFieldRef,
@@ -24571,6 +24576,7 @@ const VFileInput = genericComponent()({
24571
24576
  "dirty": isDirty.value || props.dirty,
24572
24577
  "disabled": isDisabled.value,
24573
24578
  "focused": isFocused.value,
24579
+ "details": hasDetails.value,
24574
24580
  "error": isValid.value === false,
24575
24581
  "onDragover": onDragover,
24576
24582
  "onDrop": onDrop
@@ -29328,7 +29334,8 @@ const VTextarea = genericComponent()({
29328
29334
  isDisabled,
29329
29335
  isDirty,
29330
29336
  isReadonly,
29331
- isValid
29337
+ isValid,
29338
+ hasDetails
29332
29339
  } = _ref2;
29333
29340
  return createVNode(VField, mergeProps({
29334
29341
  "ref": vFieldRef,
@@ -29347,6 +29354,7 @@ const VTextarea = genericComponent()({
29347
29354
  "dirty": isDirty.value || props.dirty,
29348
29355
  "disabled": isDisabled.value,
29349
29356
  "focused": isFocused.value,
29357
+ "details": hasDetails.value,
29350
29358
  "error": isValid.value === false
29351
29359
  }), {
29352
29360
  ...slots,
@@ -31394,7 +31402,7 @@ function createVuetify$1() {
31394
31402
  };
31395
31403
  });
31396
31404
  }
31397
- const version$1 = "3.9.0-master.2025-07-11";
31405
+ const version$1 = "3.9.0-master.2025-07-13";
31398
31406
  createVuetify$1.version = version$1;
31399
31407
 
31400
31408
  // Vue's inject() can only be used in setup
@@ -31419,7 +31427,7 @@ const createVuetify = function () {
31419
31427
  ...options
31420
31428
  });
31421
31429
  };
31422
- const version = "3.9.0-master.2025-07-11";
31430
+ const version = "3.9.0-master.2025-07-13";
31423
31431
  createVuetify.version = version;
31424
31432
 
31425
31433
  export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useHotkey, useLayout, useLocale, useRtl, useTheme, version };