@vuetify/nightly 3.8.7-dev.2025-05-27 → 3.8.7-dev.2025-05-30
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 +8 -3
- package/dist/json/attributes.json +1893 -1885
- package/dist/json/importMap-labs.json +34 -34
- package/dist/json/importMap.json +140 -140
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +3286 -3266
- package/dist/vuetify-labs.cjs +36 -15
- package/dist/vuetify-labs.css +5222 -5222
- package/dist/vuetify-labs.d.ts +401 -213
- package/dist/vuetify-labs.esm.js +36 -15
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +36 -15
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +36 -15
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +5419 -5419
- package/dist/vuetify.d.ts +345 -189
- package/dist/vuetify.esm.js +36 -15
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +36 -15
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +24 -19
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.d.ts +20 -10
- package/lib/components/VAutocomplete/VAutocomplete.d.ts +21 -7
- package/lib/components/VAutocomplete/VAutocomplete.js +2 -1
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VBtn/VBtn.d.ts +20 -10
- package/lib/components/VCard/VCard.d.ts +20 -10
- package/lib/components/VCheckbox/VCheckbox.d.ts +20 -10
- package/lib/components/VCheckbox/VCheckboxBtn.d.ts +20 -10
- package/lib/components/VChip/VChip.d.ts +20 -10
- package/lib/components/VCombobox/VCombobox.d.ts +21 -7
- package/lib/components/VCombobox/VCombobox.js +2 -1
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.d.ts +20 -10
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.d.ts +20 -10
- package/lib/components/VExpansionPanel/VExpansionPanels.d.ts +20 -10
- package/lib/components/VFab/VFab.d.ts +20 -10
- package/lib/components/VList/VList.d.ts +13 -0
- package/lib/components/VList/VList.js +4 -1
- package/lib/components/VList/VList.js.map +1 -1
- package/lib/components/VList/VListItem.d.ts +23 -10
- package/lib/components/VList/VListItem.js +7 -3
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VList/list.d.ts +9 -2
- package/lib/components/VList/list.js +7 -0
- package/lib/components/VList/list.js.map +1 -1
- package/lib/components/VRadio/VRadio.d.ts +20 -10
- package/lib/components/VRadioGroup/VRadioGroup.d.ts +20 -10
- package/lib/components/VSelect/VSelect.d.ts +33 -11
- package/lib/components/VSelectionControl/VSelectionControl.d.ts +20 -10
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.d.ts +28 -14
- package/lib/components/VSlider/VSliderThumb.d.ts +20 -10
- package/lib/components/VStepper/VStepperItem.d.ts +28 -14
- package/lib/components/VSwitch/VSwitch.d.ts +20 -10
- package/lib/components/VTabs/VTab.d.ts +56 -28
- package/lib/directives/ripple/index.d.ts +2 -1
- package/lib/directives/ripple/index.js +12 -7
- package/lib/directives/ripple/index.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +53 -53
- package/lib/framework.js +1 -1
- package/lib/labs/VFileUpload/VFileUploadItem.d.ts +20 -10
- package/lib/labs/VStepperVertical/VStepperVertical.d.ts +20 -10
- package/lib/labs/VStepperVertical/VStepperVerticalItem.d.ts +20 -10
- package/lib/labs/VTreeview/VTreeview.d.ts +13 -0
- package/lib/labs/VTreeview/VTreeviewItem.d.ts +20 -10
- package/package.json +1 -1
package/dist/vuetify.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.7-dev.2025-05-
|
2
|
+
* Vuetify v3.8.7-dev.2025-05-30
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -5908,8 +5908,8 @@
|
|
5908
5908
|
window.clearTimeout(element._ripple.showTimer);
|
5909
5909
|
}
|
5910
5910
|
let keyboardRipple = false;
|
5911
|
-
function keyboardRippleShow(e) {
|
5912
|
-
if (!keyboardRipple && (e.keyCode
|
5911
|
+
function keyboardRippleShow(e, keys) {
|
5912
|
+
if (!keyboardRipple && keys.includes(e.keyCode)) {
|
5913
5913
|
keyboardRipple = true;
|
5914
5914
|
rippleShow(e);
|
5915
5915
|
}
|
@@ -5937,9 +5937,12 @@
|
|
5937
5937
|
el._ripple.enabled = enabled;
|
5938
5938
|
el._ripple.centered = modifiers.center;
|
5939
5939
|
el._ripple.circle = modifiers.circle;
|
5940
|
-
|
5941
|
-
|
5940
|
+
const bindingValue = isObject(value) ? value : {};
|
5941
|
+
if (bindingValue.class) {
|
5942
|
+
el._ripple.class = bindingValue.class;
|
5942
5943
|
}
|
5944
|
+
const allowedKeys = bindingValue.keys ?? [keyCodes.enter, keyCodes.space];
|
5945
|
+
el._ripple.keyDownHandler = e => keyboardRippleShow(e, allowedKeys);
|
5943
5946
|
if (enabled && !wasEnabled) {
|
5944
5947
|
if (modifiers.stop) {
|
5945
5948
|
el.addEventListener('touchstart', rippleStop, {
|
@@ -5961,7 +5964,7 @@
|
|
5961
5964
|
el.addEventListener('mousedown', rippleShow);
|
5962
5965
|
el.addEventListener('mouseup', rippleHide);
|
5963
5966
|
el.addEventListener('mouseleave', rippleHide);
|
5964
|
-
el.addEventListener('keydown', keyboardRippleShow);
|
5967
|
+
el.addEventListener('keydown', e => keyboardRippleShow(e, allowedKeys));
|
5965
5968
|
el.addEventListener('keyup', keyboardRippleHide);
|
5966
5969
|
el.addEventListener('blur', focusRippleHide);
|
5967
5970
|
|
@@ -5981,7 +5984,9 @@
|
|
5981
5984
|
el.removeEventListener('touchcancel', rippleHide);
|
5982
5985
|
el.removeEventListener('mouseup', rippleHide);
|
5983
5986
|
el.removeEventListener('mouseleave', rippleHide);
|
5984
|
-
el.
|
5987
|
+
if (el._ripple?.keyDownHandler) {
|
5988
|
+
el.removeEventListener('keydown', el._ripple.keyDownHandler);
|
5989
|
+
}
|
5985
5990
|
el.removeEventListener('keyup', keyboardRippleHide);
|
5986
5991
|
el.removeEventListener('dragstart', rippleHide);
|
5987
5992
|
el.removeEventListener('blur', focusRippleHide);
|
@@ -5990,8 +5995,8 @@
|
|
5990
5995
|
updateRipple(el, binding, false);
|
5991
5996
|
}
|
5992
5997
|
function unmounted$4(el) {
|
5993
|
-
delete el._ripple;
|
5994
5998
|
removeListeners(el);
|
5999
|
+
delete el._ripple;
|
5995
6000
|
}
|
5996
6001
|
function updated$1(el, binding) {
|
5997
6002
|
if (binding.value === binding.oldValue) {
|
@@ -8702,11 +8707,18 @@
|
|
8702
8707
|
// List
|
8703
8708
|
const ListKey = Symbol.for('vuetify:list');
|
8704
8709
|
function createList() {
|
8710
|
+
let {
|
8711
|
+
filterable
|
8712
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
|
8713
|
+
filterable: false
|
8714
|
+
};
|
8705
8715
|
const parent = vue.inject(ListKey, {
|
8716
|
+
filterable: false,
|
8706
8717
|
hasPrepend: vue.shallowRef(false),
|
8707
8718
|
updateHasPrepend: () => null
|
8708
8719
|
});
|
8709
8720
|
const data = {
|
8721
|
+
filterable: parent.filterable || filterable,
|
8710
8722
|
hasPrepend: vue.shallowRef(false),
|
8711
8723
|
updateHasPrepend: value => {
|
8712
8724
|
if (value) data.hasPrepend.value = value;
|
@@ -9658,6 +9670,9 @@
|
|
9658
9670
|
roundedClasses
|
9659
9671
|
} = useRounded(roundedProps);
|
9660
9672
|
const lineClasses = vue.toRef(() => props.lines ? `v-list-item--${props.lines}-line` : undefined);
|
9673
|
+
const rippleOptions = vue.toRef(() => props.ripple !== undefined && !!props.ripple && list?.filterable ? {
|
9674
|
+
keys: [keyCodes.enter]
|
9675
|
+
} : props.ripple);
|
9661
9676
|
const slotProps = vue.computed(() => ({
|
9662
9677
|
isActive: isActive.value,
|
9663
9678
|
select,
|
@@ -9682,8 +9697,9 @@
|
|
9682
9697
|
function onKeyDown(e) {
|
9683
9698
|
const target = e.target;
|
9684
9699
|
if (['INPUT', 'TEXTAREA'].includes(target.tagName)) return;
|
9685
|
-
if (e.key === 'Enter' || e.key === ' ') {
|
9700
|
+
if (e.key === 'Enter' || e.key === ' ' && !list?.filterable) {
|
9686
9701
|
e.preventDefault();
|
9702
|
+
e.stopPropagation();
|
9687
9703
|
e.target.dispatchEvent(new MouseEvent('click', e));
|
9688
9704
|
}
|
9689
9705
|
}
|
@@ -9793,7 +9809,7 @@
|
|
9793
9809
|
}), vue.createElementVNode("div", {
|
9794
9810
|
"class": "v-list-item__spacer"
|
9795
9811
|
}, null)])]
|
9796
|
-
}), [[Ripple, isClickable.value &&
|
9812
|
+
}), [[Ripple, isClickable.value && rippleOptions.value]]);
|
9797
9813
|
});
|
9798
9814
|
return {
|
9799
9815
|
activate,
|
@@ -10116,6 +10132,7 @@
|
|
10116
10132
|
activeClass: String,
|
10117
10133
|
bgColor: String,
|
10118
10134
|
disabled: Boolean,
|
10135
|
+
filterable: Boolean,
|
10119
10136
|
expandIcon: IconValue,
|
10120
10137
|
collapseIcon: IconValue,
|
10121
10138
|
lines: {
|
@@ -10199,7 +10216,9 @@
|
|
10199
10216
|
const activeColor = vue.toRef(() => props.activeColor);
|
10200
10217
|
const baseColor = vue.toRef(() => props.baseColor);
|
10201
10218
|
const color = vue.toRef(() => props.color);
|
10202
|
-
createList(
|
10219
|
+
createList({
|
10220
|
+
filterable: props.filterable
|
10221
|
+
});
|
10203
10222
|
provideDefaults({
|
10204
10223
|
VListGroup: {
|
10205
10224
|
activeColor,
|
@@ -13822,7 +13841,7 @@
|
|
13822
13841
|
menu.value = !menu.value;
|
13823
13842
|
}
|
13824
13843
|
function onListKeydown(e) {
|
13825
|
-
if (e.key
|
13844
|
+
if (checkPrintable(e) || e.key === 'Backspace') {
|
13826
13845
|
vTextFieldRef.value?.focus();
|
13827
13846
|
}
|
13828
13847
|
}
|
@@ -14027,6 +14046,7 @@
|
|
14027
14046
|
}, props.menuProps), {
|
14028
14047
|
default: () => [hasList && vue.createVNode(VList, vue.mergeProps({
|
14029
14048
|
"ref": listRef,
|
14049
|
+
"filterable": true,
|
14030
14050
|
"selected": selectedValues.value,
|
14031
14051
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
14032
14052
|
"onMousedown": e => e.preventDefault(),
|
@@ -18565,7 +18585,7 @@
|
|
18565
18585
|
menu.value = !menu.value;
|
18566
18586
|
}
|
18567
18587
|
function onListKeydown(e) {
|
18568
|
-
if (e.key
|
18588
|
+
if (checkPrintable(e) || e.key === 'Backspace') {
|
18569
18589
|
vTextFieldRef.value?.focus();
|
18570
18590
|
}
|
18571
18591
|
}
|
@@ -18770,6 +18790,7 @@
|
|
18770
18790
|
}, props.menuProps), {
|
18771
18791
|
default: () => [hasList && vue.createVNode(VList, vue.mergeProps({
|
18772
18792
|
"ref": listRef,
|
18793
|
+
"filterable": true,
|
18773
18794
|
"selected": selectedValues.value,
|
18774
18795
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
18775
18796
|
"onMousedown": e => e.preventDefault(),
|
@@ -29502,7 +29523,7 @@
|
|
29502
29523
|
};
|
29503
29524
|
});
|
29504
29525
|
}
|
29505
|
-
const version$1 = "3.8.7-dev.2025-05-
|
29526
|
+
const version$1 = "3.8.7-dev.2025-05-30";
|
29506
29527
|
createVuetify$1.version = version$1;
|
29507
29528
|
|
29508
29529
|
// Vue's inject() can only be used in setup
|
@@ -29527,7 +29548,7 @@
|
|
29527
29548
|
...options
|
29528
29549
|
});
|
29529
29550
|
};
|
29530
|
-
const version = "3.8.7-dev.2025-05-
|
29551
|
+
const version = "3.8.7-dev.2025-05-30";
|
29531
29552
|
createVuetify.version = version;
|
29532
29553
|
|
29533
29554
|
exports.blueprints = index;
|