@vuetify/nightly 3.9.0-master.2025-07-10 → 3.9.0-master.2025-07-12
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.
- package/CHANGELOG.md +9 -3
- package/dist/json/attributes.json +1672 -1628
- package/dist/json/importMap-labs.json +18 -18
- package/dist/json/importMap.json +180 -180
- package/dist/json/tags.json +11 -0
- package/dist/json/web-types.json +3410 -3088
- package/dist/vuetify-labs.cjs +42 -27
- package/dist/vuetify-labs.css +3015 -3015
- package/dist/vuetify-labs.d.ts +845 -297
- package/dist/vuetify-labs.esm.js +42 -27
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +42 -27
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +34 -24
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3254 -3254
- package/dist/vuetify.d.ts +591 -220
- package/dist/vuetify.esm.js +34 -24
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +34 -24
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +15 -15
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.d.ts +121 -36
- package/lib/components/VCombobox/VCombobox.d.ts +121 -36
- package/lib/components/VField/VField.d.ts +13 -0
- package/lib/components/VField/VField.js +7 -3
- package/lib/components/VField/VField.js.map +1 -1
- package/lib/components/VField/VFieldLabel.js +1 -2
- package/lib/components/VField/VFieldLabel.js.map +1 -1
- package/lib/components/VFileInput/VFileInput.d.ts +13 -0
- package/lib/components/VFileInput/VFileInput.js +3 -1
- package/lib/components/VFileInput/VFileInput.js.map +1 -1
- package/lib/components/VInput/VInput.d.ts +2 -1
- package/lib/components/VInput/VInput.js +15 -14
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VNumberInput/VNumberInput.d.ts +116 -36
- package/lib/components/VSelect/VSelect.d.ts +121 -36
- package/lib/components/VTextField/VTextField.d.ts +40 -9
- package/lib/components/VTextField/VTextField.js +2 -0
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.d.ts +13 -0
- package/lib/components/VTextarea/VTextarea.js +3 -1
- package/lib/components/VTextarea/VTextarea.js.map +1 -1
- package/lib/composables/dateFormat.js +1 -1
- package/lib/composables/dateFormat.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +66 -66
- package/lib/framework.js +1 -1
- package/lib/labs/VColorInput/VColorInput.d.ts +13 -0
- package/lib/labs/VDateInput/VDateInput.d.ts +145 -44
- package/lib/labs/VDateInput/VDateInput.js +4 -1
- package/lib/labs/VDateInput/VDateInput.js.map +1 -1
- package/lib/labs/VMaskInput/VMaskInput.d.ts +121 -36
- package/lib/labs/VMaskInput/VMaskInput.js +4 -2
- package/lib/labs/VMaskInput/VMaskInput.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.9.0-master.2025-07-
|
2
|
+
* Vuetify v3.9.0-master.2025-07-12
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -7249,7 +7249,6 @@
|
|
7249
7249
|
} = useInputIcon(props);
|
7250
7250
|
const uid = vue.useId();
|
7251
7251
|
const id = vue.computed(() => props.id || `input-${uid}`);
|
7252
|
-
const messagesId = vue.computed(() => `${id.value}-messages`);
|
7253
7252
|
const {
|
7254
7253
|
errorMessages,
|
7255
7254
|
isDirty,
|
@@ -7263,6 +7262,18 @@
|
|
7263
7262
|
validate,
|
7264
7263
|
validationClasses
|
7265
7264
|
} = useValidation(props, 'v-input', id);
|
7265
|
+
const messages = vue.computed(() => {
|
7266
|
+
if (props.errorMessages?.length || !isPristine.value && errorMessages.value.length) {
|
7267
|
+
return errorMessages.value;
|
7268
|
+
} else if (props.hint && (props.persistentHint || props.focused)) {
|
7269
|
+
return props.hint;
|
7270
|
+
} else {
|
7271
|
+
return props.messages;
|
7272
|
+
}
|
7273
|
+
});
|
7274
|
+
const hasMessages = vue.toRef(() => messages.value.length > 0);
|
7275
|
+
const hasDetails = vue.toRef(() => !props.hideDetails || props.hideDetails === 'auto' && (hasMessages.value || !!slots.details));
|
7276
|
+
const messagesId = vue.computed(() => hasDetails.value ? `${id.value}-messages` : undefined);
|
7266
7277
|
const slotProps = vue.computed(() => ({
|
7267
7278
|
id,
|
7268
7279
|
messagesId,
|
@@ -7272,6 +7283,7 @@
|
|
7272
7283
|
isPristine,
|
7273
7284
|
isValid,
|
7274
7285
|
isValidating,
|
7286
|
+
hasDetails,
|
7275
7287
|
reset,
|
7276
7288
|
resetValidation,
|
7277
7289
|
validate
|
@@ -7283,20 +7295,9 @@
|
|
7283
7295
|
if (!props.iconColor) return undefined;
|
7284
7296
|
return props.iconColor === true ? color.value : props.iconColor;
|
7285
7297
|
});
|
7286
|
-
const messages = vue.computed(() => {
|
7287
|
-
if (props.errorMessages?.length || !isPristine.value && errorMessages.value.length) {
|
7288
|
-
return errorMessages.value;
|
7289
|
-
} else if (props.hint && (props.persistentHint || props.focused)) {
|
7290
|
-
return props.hint;
|
7291
|
-
} else {
|
7292
|
-
return props.messages;
|
7293
|
-
}
|
7294
|
-
});
|
7295
7298
|
useRender(() => {
|
7296
7299
|
const hasPrepend = !!(slots.prepend || props.prependIcon);
|
7297
7300
|
const hasAppend = !!(slots.append || props.appendIcon);
|
7298
|
-
const hasMessages = messages.value.length > 0;
|
7299
|
-
const hasDetails = !props.hideDetails || props.hideDetails === 'auto' && (hasMessages || !!slots.details);
|
7300
7301
|
return vue.createElementVNode("div", {
|
7301
7302
|
"class": vue.normalizeClass(['v-input', `v-input--${props.direction}`, {
|
7302
7303
|
'v-input--center-affix': props.centerAffix,
|
@@ -7321,13 +7322,13 @@
|
|
7321
7322
|
"key": "append-icon",
|
7322
7323
|
"name": "append",
|
7323
7324
|
"color": iconColor.value
|
7324
|
-
}, null), slots.append?.(slotProps.value)]), hasDetails && vue.createElementVNode("div", {
|
7325
|
+
}, null), slots.append?.(slotProps.value)]), hasDetails.value && vue.createElementVNode("div", {
|
7325
7326
|
"id": messagesId.value,
|
7326
7327
|
"class": "v-input__details",
|
7327
7328
|
"role": "alert",
|
7328
7329
|
"aria-live": "polite"
|
7329
7330
|
}, [vue.createVNode(VMessages, {
|
7330
|
-
"active": hasMessages,
|
7331
|
+
"active": hasMessages.value,
|
7331
7332
|
"messages": messages.value
|
7332
7333
|
}, {
|
7333
7334
|
message: slots.message
|
@@ -11991,8 +11992,7 @@
|
|
11991
11992
|
"class": vue.normalizeClass(['v-field-label', {
|
11992
11993
|
'v-field-label--floating': props.floating
|
11993
11994
|
}, props.class]),
|
11994
|
-
"style": vue.normalizeStyle(props.style)
|
11995
|
-
"aria-hidden": props.floating || undefined
|
11995
|
+
"style": vue.normalizeStyle(props.style)
|
11996
11996
|
}, slots));
|
11997
11997
|
return {};
|
11998
11998
|
}
|
@@ -12016,6 +12016,7 @@
|
|
12016
12016
|
},
|
12017
12017
|
color: String,
|
12018
12018
|
baseColor: String,
|
12019
|
+
details: Boolean,
|
12019
12020
|
dirty: Boolean,
|
12020
12021
|
disabled: {
|
12021
12022
|
type: Boolean,
|
@@ -12087,7 +12088,7 @@
|
|
12087
12088
|
const hasFloatingLabel = vue.toRef(() => !props.singleLine && hasLabel.value);
|
12088
12089
|
const uid = vue.useId();
|
12089
12090
|
const id = vue.computed(() => props.id || `input-${uid}`);
|
12090
|
-
const messagesId = vue.toRef(() => `${id.value}-messages`);
|
12091
|
+
const messagesId = vue.toRef(() => !props.details ? undefined : `${id.value}-messages`);
|
12091
12092
|
const labelRef = vue.ref();
|
12092
12093
|
const floatingLabelRef = vue.ref();
|
12093
12094
|
const controlRef = vue.ref();
|
@@ -12212,6 +12213,7 @@
|
|
12212
12213
|
"class": vue.normalizeClass([textColorClasses.value]),
|
12213
12214
|
"floating": true,
|
12214
12215
|
"for": id.value,
|
12216
|
+
"aria-hidden": !isActive.value,
|
12215
12217
|
"style": vue.normalizeStyle(textColorStyles.value)
|
12216
12218
|
}, {
|
12217
12219
|
default: () => [label()]
|
@@ -12282,7 +12284,8 @@
|
|
12282
12284
|
}, [vue.createVNode(VFieldLabel, {
|
12283
12285
|
"ref": floatingLabelRef,
|
12284
12286
|
"floating": true,
|
12285
|
-
"for": id.value
|
12287
|
+
"for": id.value,
|
12288
|
+
"aria-hidden": !isActive.value
|
12286
12289
|
}, {
|
12287
12290
|
default: () => [label()]
|
12288
12291
|
})]), vue.createElementVNode("div", {
|
@@ -12290,7 +12293,8 @@
|
|
12290
12293
|
}, null)]), isPlainOrUnderlined.value && hasFloatingLabel.value && vue.createVNode(VFieldLabel, {
|
12291
12294
|
"ref": floatingLabelRef,
|
12292
12295
|
"floating": true,
|
12293
|
-
"for": id.value
|
12296
|
+
"for": id.value,
|
12297
|
+
"aria-hidden": !isActive.value
|
12294
12298
|
}, {
|
12295
12299
|
default: () => [label()]
|
12296
12300
|
})])]);
|
@@ -12442,6 +12446,7 @@
|
|
12442
12446
|
isDirty,
|
12443
12447
|
isReadonly,
|
12444
12448
|
isValid,
|
12449
|
+
hasDetails,
|
12445
12450
|
reset
|
12446
12451
|
} = _ref2;
|
12447
12452
|
return vue.createVNode(VField, vue.mergeProps({
|
@@ -12458,6 +12463,7 @@
|
|
12458
12463
|
"dirty": isDirty.value || props.dirty,
|
12459
12464
|
"disabled": isDisabled.value,
|
12460
12465
|
"focused": isFocused.value,
|
12466
|
+
"details": hasDetails.value,
|
12461
12467
|
"error": isValid.value === false
|
12462
12468
|
}), {
|
12463
12469
|
...slots,
|
@@ -24279,7 +24285,8 @@
|
|
24279
24285
|
isDisabled,
|
24280
24286
|
isDirty,
|
24281
24287
|
isReadonly,
|
24282
|
-
isValid
|
24288
|
+
isValid,
|
24289
|
+
hasDetails
|
24283
24290
|
} = _ref3;
|
24284
24291
|
return vue.createVNode(VField, vue.mergeProps({
|
24285
24292
|
"ref": vFieldRef,
|
@@ -24295,6 +24302,7 @@
|
|
24295
24302
|
"dirty": isDirty.value || props.dirty,
|
24296
24303
|
"disabled": isDisabled.value,
|
24297
24304
|
"focused": isFocused.value,
|
24305
|
+
"details": hasDetails.value,
|
24298
24306
|
"error": isValid.value === false,
|
24299
24307
|
"onDragover": onDragover,
|
24300
24308
|
"onDrop": onDrop
|
@@ -29052,7 +29060,8 @@
|
|
29052
29060
|
isDisabled,
|
29053
29061
|
isDirty,
|
29054
29062
|
isReadonly,
|
29055
|
-
isValid
|
29063
|
+
isValid,
|
29064
|
+
hasDetails
|
29056
29065
|
} = _ref2;
|
29057
29066
|
return vue.createVNode(VField, vue.mergeProps({
|
29058
29067
|
"ref": vFieldRef,
|
@@ -29071,6 +29080,7 @@
|
|
29071
29080
|
"dirty": isDirty.value || props.dirty,
|
29072
29081
|
"disabled": isDisabled.value,
|
29073
29082
|
"focused": isFocused.value,
|
29083
|
+
"details": hasDetails.value,
|
29074
29084
|
"error": isValid.value === false
|
29075
29085
|
}), {
|
29076
29086
|
...slots,
|
@@ -31441,7 +31451,7 @@
|
|
31441
31451
|
return !!parseDate(text);
|
31442
31452
|
}
|
31443
31453
|
function formatDate(value) {
|
31444
|
-
const parts = adapter.toISO(value).split('-');
|
31454
|
+
const parts = adapter.toISO(value).split('T')[0].split('-');
|
31445
31455
|
return currentFormat.value.order.split('').map(sign => parts['ymd'.indexOf(sign)]).join(currentFormat.value.separator);
|
31446
31456
|
}
|
31447
31457
|
return {
|
@@ -31457,7 +31467,10 @@
|
|
31457
31467
|
// Types
|
31458
31468
|
|
31459
31469
|
const makeVDateInputProps = propsFactory({
|
31460
|
-
displayFormat:
|
31470
|
+
displayFormat: {
|
31471
|
+
type: [Function, String],
|
31472
|
+
default: undefined
|
31473
|
+
},
|
31461
31474
|
location: {
|
31462
31475
|
type: String,
|
31463
31476
|
default: 'bottom start'
|
@@ -32396,6 +32409,7 @@
|
|
32396
32409
|
}
|
32397
32410
|
return val;
|
32398
32411
|
});
|
32412
|
+
const validationValue = vue.toRef(() => returnMaskedValue.value ? maskText(model.value) : unmaskText(model.value));
|
32399
32413
|
vue.onBeforeMount(() => {
|
32400
32414
|
if (props.returnMaskedValue) {
|
32401
32415
|
emit('update:modelValue', model.value);
|
@@ -32406,7 +32420,8 @@
|
|
32406
32420
|
return vue.createVNode(VTextField, vue.mergeProps(textFieldProps, {
|
32407
32421
|
"modelValue": model.value,
|
32408
32422
|
"onUpdate:modelValue": $event => model.value = $event,
|
32409
|
-
"ref": vTextFieldRef
|
32423
|
+
"ref": vTextFieldRef,
|
32424
|
+
"validationValue": validationValue.value
|
32410
32425
|
}), {
|
32411
32426
|
...slots
|
32412
32427
|
});
|
@@ -33686,7 +33701,7 @@
|
|
33686
33701
|
};
|
33687
33702
|
});
|
33688
33703
|
}
|
33689
|
-
const version$1 = "3.9.0-master.2025-07-
|
33704
|
+
const version$1 = "3.9.0-master.2025-07-12";
|
33690
33705
|
createVuetify$1.version = version$1;
|
33691
33706
|
|
33692
33707
|
// Vue's inject() can only be used in setup
|
@@ -33984,7 +33999,7 @@
|
|
33984
33999
|
|
33985
34000
|
/* eslint-disable local-rules/sort-imports */
|
33986
34001
|
|
33987
|
-
const version = "3.9.0-master.2025-07-
|
34002
|
+
const version = "3.9.0-master.2025-07-12";
|
33988
34003
|
|
33989
34004
|
/* eslint-disable local-rules/sort-imports */
|
33990
34005
|
|