@vuetify/nightly 3.8.0-master.2025-04-01 → 3.8.0-master.2025-04-03
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 +13 -3
- package/dist/json/attributes.json +1509 -1509
- package/dist/json/importMap-labs.json +38 -38
- package/dist/json/importMap.json +168 -168
- package/dist/json/web-types.json +3070 -3070
- package/dist/vuetify-labs.cjs +51 -44
- package/dist/vuetify-labs.css +4644 -4630
- package/dist/vuetify-labs.d.ts +119 -80
- package/dist/vuetify-labs.esm.js +51 -44
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +51 -44
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +51 -44
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +2263 -2249
- package/dist/vuetify.d.ts +119 -80
- package/dist/vuetify.esm.js +51 -44
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +51 -44
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +83 -83
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.css +0 -1
- package/lib/components/VAutocomplete/VAutocomplete.js +11 -9
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +0 -1
- package/lib/components/VCombobox/VCombobox.css +0 -1
- package/lib/components/VCombobox/VCombobox.js +22 -20
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +0 -1
- package/lib/components/VField/VField.d.ts +3 -0
- package/lib/components/VField/VField.js +3 -2
- package/lib/components/VField/VField.js.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js +2 -2
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/lib/components/VNumberInput/VNumberInput.d.ts +39 -12
- package/lib/components/VSelect/VSelect.css +0 -1
- package/lib/components/VSelect/VSelect.js +11 -9
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelect/VSelect.sass +0 -1
- package/lib/components/VTextField/VTextField.css +21 -4
- package/lib/components/VTextField/VTextField.d.ts +12 -3
- package/lib/components/VTextField/VTextField.sass +22 -7
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +65 -65
- package/lib/framework.js +1 -1
- package/package.json +1 -1
package/dist/vuetify.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.0-master.2025-04-
|
2
|
+
* Vuetify v3.8.0-master.2025-04-03
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -12001,7 +12001,7 @@
|
|
12001
12001
|
return props.error || props.disabled ? undefined : isActive.value && isFocused.value ? props.color : props.baseColor;
|
12002
12002
|
});
|
12003
12003
|
const iconColor = vue.computed(() => {
|
12004
|
-
if (!props.iconColor) return undefined;
|
12004
|
+
if (!props.iconColor || props.glow && !isFocused.value) return undefined;
|
12005
12005
|
return props.iconColor === true ? color.value : props.iconColor;
|
12006
12006
|
});
|
12007
12007
|
const {
|
@@ -12199,7 +12199,8 @@
|
|
12199
12199
|
})])]);
|
12200
12200
|
});
|
12201
12201
|
return {
|
12202
|
-
controlRef
|
12202
|
+
controlRef,
|
12203
|
+
fieldIconColor: iconColor
|
12203
12204
|
};
|
12204
12205
|
}
|
12205
12206
|
});
|
@@ -12937,14 +12938,6 @@
|
|
12937
12938
|
const vTextFieldRef = vue.ref();
|
12938
12939
|
const vMenuRef = vue.ref();
|
12939
12940
|
const vVirtualScrollRef = vue.ref();
|
12940
|
-
const _menu = useProxiedModel(props, 'menu');
|
12941
|
-
const menu = vue.computed({
|
12942
|
-
get: () => _menu.value,
|
12943
|
-
set: v => {
|
12944
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
12945
|
-
_menu.value = v;
|
12946
|
-
}
|
12947
|
-
});
|
12948
12941
|
const {
|
12949
12942
|
items,
|
12950
12943
|
transformIn,
|
@@ -12960,7 +12953,6 @@
|
|
12960
12953
|
const form = useForm(props);
|
12961
12954
|
const selectedValues = vue.computed(() => model.value.map(selection => selection.value));
|
12962
12955
|
const isFocused = vue.shallowRef(false);
|
12963
|
-
const label = vue.computed(() => menu.value ? props.closeText : props.openText);
|
12964
12956
|
let keyboardLookupPrefix = '';
|
12965
12957
|
let keyboardLookupLastTime;
|
12966
12958
|
const displayItems = vue.computed(() => {
|
@@ -12970,6 +12962,16 @@
|
|
12970
12962
|
return items.value;
|
12971
12963
|
});
|
12972
12964
|
const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
12965
|
+
const _menu = useProxiedModel(props, 'menu');
|
12966
|
+
const menu = vue.computed({
|
12967
|
+
get: () => _menu.value,
|
12968
|
+
set: v => {
|
12969
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
12970
|
+
if (v && menuDisabled.value) return;
|
12971
|
+
_menu.value = v;
|
12972
|
+
}
|
12973
|
+
});
|
12974
|
+
const label = vue.computed(() => menu.value ? props.closeText : props.openText);
|
12973
12975
|
const computedMenuProps = vue.computed(() => {
|
12974
12976
|
return {
|
12975
12977
|
...props.menuProps,
|
@@ -13265,6 +13267,7 @@
|
|
13265
13267
|
}
|
13266
13268
|
return vue.createVNode(vue.Fragment, null, [slots['append-inner']?.(...args), props.menuIcon ? vue.createVNode(VIcon, {
|
13267
13269
|
"class": "v-select__menu-icon",
|
13270
|
+
"color": vTextFieldRef.value?.fieldIconColor,
|
13268
13271
|
"icon": props.menuIcon
|
13269
13272
|
}, null) : undefined]);
|
13270
13273
|
}
|
@@ -13468,17 +13471,8 @@
|
|
13468
13471
|
const listHasFocus = vue.shallowRef(false);
|
13469
13472
|
const vMenuRef = vue.ref();
|
13470
13473
|
const vVirtualScrollRef = vue.ref();
|
13471
|
-
const _menu = useProxiedModel(props, 'menu');
|
13472
|
-
const menu = vue.computed({
|
13473
|
-
get: () => _menu.value,
|
13474
|
-
set: v => {
|
13475
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
13476
|
-
_menu.value = v;
|
13477
|
-
}
|
13478
|
-
});
|
13479
13474
|
const selectionIndex = vue.shallowRef(-1);
|
13480
13475
|
const color = vue.computed(() => vTextFieldRef.value?.color);
|
13481
|
-
const label = vue.computed(() => menu.value ? props.closeText : props.openText);
|
13482
13476
|
const {
|
13483
13477
|
items,
|
13484
13478
|
transformIn,
|
@@ -13515,6 +13509,16 @@
|
|
13515
13509
|
return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
|
13516
13510
|
});
|
13517
13511
|
const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
13512
|
+
const _menu = useProxiedModel(props, 'menu');
|
13513
|
+
const menu = vue.computed({
|
13514
|
+
get: () => _menu.value,
|
13515
|
+
set: v => {
|
13516
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
13517
|
+
if (v && menuDisabled.value) return;
|
13518
|
+
_menu.value = v;
|
13519
|
+
}
|
13520
|
+
});
|
13521
|
+
const label = vue.computed(() => menu.value ? props.closeText : props.openText);
|
13518
13522
|
const listRef = vue.ref();
|
13519
13523
|
const listEvents = useScrolling(listRef, vTextFieldRef);
|
13520
13524
|
function onClear(e) {
|
@@ -13864,6 +13868,7 @@
|
|
13864
13868
|
}
|
13865
13869
|
return vue.createVNode(vue.Fragment, null, [slots['append-inner']?.(...args), props.menuIcon ? vue.createVNode(VIcon, {
|
13866
13870
|
"class": "v-autocomplete__menu-icon",
|
13871
|
+
"color": vTextFieldRef.value?.fieldIconColor,
|
13867
13872
|
"icon": props.menuIcon,
|
13868
13873
|
"onMousedown": onMousedownMenuIcon,
|
13869
13874
|
"onClick": noop,
|
@@ -18233,18 +18238,9 @@
|
|
18233
18238
|
const listHasFocus = vue.shallowRef(false);
|
18234
18239
|
const vMenuRef = vue.ref();
|
18235
18240
|
const vVirtualScrollRef = vue.ref();
|
18236
|
-
const _menu = useProxiedModel(props, 'menu');
|
18237
|
-
const menu = vue.computed({
|
18238
|
-
get: () => _menu.value,
|
18239
|
-
set: v => {
|
18240
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
18241
|
-
_menu.value = v;
|
18242
|
-
}
|
18243
|
-
});
|
18244
18241
|
const selectionIndex = vue.shallowRef(-1);
|
18245
18242
|
let cleared = false;
|
18246
18243
|
const color = vue.computed(() => vTextFieldRef.value?.color);
|
18247
|
-
const label = vue.computed(() => menu.value ? props.closeText : props.openText);
|
18248
18244
|
const {
|
18249
18245
|
items,
|
18250
18246
|
transformIn,
|
@@ -18288,6 +18284,27 @@
|
|
18288
18284
|
const counterValue = vue.computed(() => {
|
18289
18285
|
return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : props.multiple ? model.value.length : search.value.length;
|
18290
18286
|
});
|
18287
|
+
const {
|
18288
|
+
filteredItems,
|
18289
|
+
getMatches
|
18290
|
+
} = useFilter(props, items, () => isPristine.value ? '' : search.value);
|
18291
|
+
const displayItems = vue.computed(() => {
|
18292
|
+
if (props.hideSelected) {
|
18293
|
+
return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value));
|
18294
|
+
}
|
18295
|
+
return filteredItems.value;
|
18296
|
+
});
|
18297
|
+
const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
18298
|
+
const _menu = useProxiedModel(props, 'menu');
|
18299
|
+
const menu = vue.computed({
|
18300
|
+
get: () => _menu.value,
|
18301
|
+
set: v => {
|
18302
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
18303
|
+
if (v && menuDisabled.value) return;
|
18304
|
+
_menu.value = v;
|
18305
|
+
}
|
18306
|
+
});
|
18307
|
+
const label = vue.computed(() => menu.value ? props.closeText : props.openText);
|
18291
18308
|
vue.watch(_search, value => {
|
18292
18309
|
if (cleared) {
|
18293
18310
|
// wait for clear to finish, VTextField sets _search to null
|
@@ -18303,22 +18320,11 @@
|
|
18303
18320
|
_search.value = value[0]?.title ?? '';
|
18304
18321
|
}
|
18305
18322
|
});
|
18306
|
-
const {
|
18307
|
-
filteredItems,
|
18308
|
-
getMatches
|
18309
|
-
} = useFilter(props, items, () => isPristine.value ? '' : search.value);
|
18310
|
-
const displayItems = vue.computed(() => {
|
18311
|
-
if (props.hideSelected) {
|
18312
|
-
return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value));
|
18313
|
-
}
|
18314
|
-
return filteredItems.value;
|
18315
|
-
});
|
18316
18323
|
const selectedValues = vue.computed(() => model.value.map(selection => selection.value));
|
18317
18324
|
const highlightFirst = vue.computed(() => {
|
18318
18325
|
const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title;
|
18319
18326
|
return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
|
18320
18327
|
});
|
18321
|
-
const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
18322
18328
|
const listRef = vue.ref();
|
18323
18329
|
const listEvents = useScrolling(listRef, vTextFieldRef);
|
18324
18330
|
function onClear(e) {
|
@@ -18669,6 +18675,7 @@
|
|
18669
18675
|
}
|
18670
18676
|
return vue.createVNode(vue.Fragment, null, [slots['append-inner']?.(...args), (!props.hideNoData || props.items.length) && props.menuIcon ? vue.createVNode(VIcon, {
|
18671
18677
|
"class": "v-combobox__menu-icon",
|
18678
|
+
"color": vTextFieldRef.value?.fieldIconColor,
|
18672
18679
|
"icon": props.menuIcon,
|
18673
18680
|
"onMousedown": onMousedownMenuIcon,
|
18674
18681
|
"onClick": noop,
|
@@ -24818,7 +24825,7 @@
|
|
24818
24825
|
position: location,
|
24819
24826
|
layoutSize,
|
24820
24827
|
elementSize: width,
|
24821
|
-
active: vue.
|
24828
|
+
active: vue.readonly(isActive),
|
24822
24829
|
disableTransitions: vue.computed(() => isDragging.value),
|
24823
24830
|
absolute: vue.computed(() =>
|
24824
24831
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
@@ -29210,7 +29217,7 @@
|
|
29210
29217
|
};
|
29211
29218
|
});
|
29212
29219
|
}
|
29213
|
-
const version$1 = "3.8.0-master.2025-04-
|
29220
|
+
const version$1 = "3.8.0-master.2025-04-03";
|
29214
29221
|
createVuetify$1.version = version$1;
|
29215
29222
|
|
29216
29223
|
// Vue's inject() can only be used in setup
|
@@ -29235,7 +29242,7 @@
|
|
29235
29242
|
...options
|
29236
29243
|
});
|
29237
29244
|
};
|
29238
|
-
const version = "3.8.0-master.2025-04-
|
29245
|
+
const version = "3.8.0-master.2025-04-03";
|
29239
29246
|
createVuetify.version = version;
|
29240
29247
|
|
29241
29248
|
exports.blueprints = index;
|