@vuetify/nightly 3.8.7-dev.2025-05-27 → 3.8.7-dev.2025-06-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 +12 -3
- package/dist/json/attributes.json +3213 -3189
- package/dist/json/importMap-labs.json +20 -20
- package/dist/json/importMap.json +176 -176
- package/dist/json/tags.json +6 -0
- package/dist/json/web-types.json +5962 -5902
- package/dist/vuetify-labs.cjs +52 -19
- package/dist/vuetify-labs.css +5727 -5721
- package/dist/vuetify-labs.d.ts +677 -402
- package/dist/vuetify-labs.esm.js +52 -19
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +52 -19
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +52 -19
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +4233 -4227
- package/dist/vuetify.d.ts +621 -378
- package/dist/vuetify.esm.js +52 -19
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +52 -19
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +29 -24
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAppBar/VAppBar.d.ts +15 -3
- 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/VDataTable/VDataTable.d.ts +42 -0
- package/lib/components/VDataTable/VDataTableServer.d.ts +29 -0
- package/lib/components/VDataTable/VDataTableVirtual.d.ts +29 -0
- 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/VTable/VTable.css +6 -0
- package/lib/components/VTable/VTable.d.ts +55 -24
- package/lib/components/VTable/VTable.js +9 -2
- package/lib/components/VTable/VTable.js.map +1 -1
- package/lib/components/VTable/VTable.sass +14 -0
- package/lib/components/VTable/_variables.scss +1 -0
- package/lib/components/VTabs/VTab.d.ts +56 -28
- package/lib/components/VToolbar/VToolbar.d.ts +15 -3
- package/lib/components/VToolbar/VToolbar.js +6 -3
- package/lib/components/VToolbar/VToolbar.js.map +1 -1
- package/lib/composables/date/DateAdapter.d.ts +2 -2
- package/lib/composables/date/DateAdapter.js.map +1 -1
- package/lib/composables/date/adapters/string.d.ts +54 -0
- package/lib/composables/date/adapters/string.js +153 -0
- package/lib/composables/date/adapters/string.js.map +1 -0
- package/lib/composables/date/date.d.ts +2 -2
- 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.d.ts +2 -2
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +75 -65
- 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/lib/labs/entry-bundler.d.ts +2 -2
- package/package.json +1 -1
package/dist/vuetify-labs.esm.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.7-dev.2025-
|
2
|
+
* Vuetify v3.8.7-dev.2025-06-03
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -3799,7 +3799,10 @@ const makeVToolbarProps = propsFactory({
|
|
3799
3799
|
default: 'default',
|
3800
3800
|
validator: v => allowedDensities$1.includes(v)
|
3801
3801
|
},
|
3802
|
-
extended:
|
3802
|
+
extended: {
|
3803
|
+
type: Boolean,
|
3804
|
+
default: null
|
3805
|
+
},
|
3803
3806
|
extensionHeight: {
|
3804
3807
|
type: [Number, String],
|
3805
3808
|
default: 48
|
@@ -3847,7 +3850,7 @@ const VToolbar = genericComponent()({
|
|
3847
3850
|
const {
|
3848
3851
|
rtlClasses
|
3849
3852
|
} = useRtl();
|
3850
|
-
const isExtended = shallowRef(
|
3853
|
+
const isExtended = shallowRef(props.extended === null ? !!slots.extension?.() : props.extended);
|
3851
3854
|
const contentHeight = computed(() => parseInt(Number(props.height) + (props.density === 'prominent' ? Number(props.height) : 0) - (props.density === 'comfortable' ? 8 : 0) - (props.density === 'compact' ? 16 : 0), 10));
|
3852
3855
|
const extensionHeight = computed(() => isExtended.value ? parseInt(Number(props.extensionHeight) + (props.density === 'prominent' ? Number(props.extensionHeight) : 0) - (props.density === 'comfortable' ? 4 : 0) - (props.density === 'compact' ? 8 : 0), 10) : 0);
|
3853
3856
|
provideDefaults({
|
@@ -3859,7 +3862,7 @@ const VToolbar = genericComponent()({
|
|
3859
3862
|
const hasTitle = !!(props.title || slots.title);
|
3860
3863
|
const hasImage = !!(slots.image || props.image);
|
3861
3864
|
const extension = slots.extension?.();
|
3862
|
-
isExtended.value =
|
3865
|
+
isExtended.value = props.extended === null ? !!extension : props.extended;
|
3863
3866
|
return createVNode(props.tag, {
|
3864
3867
|
"class": normalizeClass(['v-toolbar', {
|
3865
3868
|
'v-toolbar--absolute': props.absolute,
|
@@ -5626,8 +5629,8 @@ function rippleCancelShow(e) {
|
|
5626
5629
|
window.clearTimeout(element._ripple.showTimer);
|
5627
5630
|
}
|
5628
5631
|
let keyboardRipple = false;
|
5629
|
-
function keyboardRippleShow(e) {
|
5630
|
-
if (!keyboardRipple && (e.keyCode
|
5632
|
+
function keyboardRippleShow(e, keys) {
|
5633
|
+
if (!keyboardRipple && keys.includes(e.keyCode)) {
|
5631
5634
|
keyboardRipple = true;
|
5632
5635
|
rippleShow(e);
|
5633
5636
|
}
|
@@ -5655,9 +5658,12 @@ function updateRipple(el, binding, wasEnabled) {
|
|
5655
5658
|
el._ripple.enabled = enabled;
|
5656
5659
|
el._ripple.centered = modifiers.center;
|
5657
5660
|
el._ripple.circle = modifiers.circle;
|
5658
|
-
|
5659
|
-
|
5661
|
+
const bindingValue = isObject(value) ? value : {};
|
5662
|
+
if (bindingValue.class) {
|
5663
|
+
el._ripple.class = bindingValue.class;
|
5660
5664
|
}
|
5665
|
+
const allowedKeys = bindingValue.keys ?? [keyCodes.enter, keyCodes.space];
|
5666
|
+
el._ripple.keyDownHandler = e => keyboardRippleShow(e, allowedKeys);
|
5661
5667
|
if (enabled && !wasEnabled) {
|
5662
5668
|
if (modifiers.stop) {
|
5663
5669
|
el.addEventListener('touchstart', rippleStop, {
|
@@ -5679,7 +5685,7 @@ function updateRipple(el, binding, wasEnabled) {
|
|
5679
5685
|
el.addEventListener('mousedown', rippleShow);
|
5680
5686
|
el.addEventListener('mouseup', rippleHide);
|
5681
5687
|
el.addEventListener('mouseleave', rippleHide);
|
5682
|
-
el.addEventListener('keydown', keyboardRippleShow);
|
5688
|
+
el.addEventListener('keydown', e => keyboardRippleShow(e, allowedKeys));
|
5683
5689
|
el.addEventListener('keyup', keyboardRippleHide);
|
5684
5690
|
el.addEventListener('blur', focusRippleHide);
|
5685
5691
|
|
@@ -5699,7 +5705,9 @@ function removeListeners(el) {
|
|
5699
5705
|
el.removeEventListener('touchcancel', rippleHide);
|
5700
5706
|
el.removeEventListener('mouseup', rippleHide);
|
5701
5707
|
el.removeEventListener('mouseleave', rippleHide);
|
5702
|
-
el.
|
5708
|
+
if (el._ripple?.keyDownHandler) {
|
5709
|
+
el.removeEventListener('keydown', el._ripple.keyDownHandler);
|
5710
|
+
}
|
5703
5711
|
el.removeEventListener('keyup', keyboardRippleHide);
|
5704
5712
|
el.removeEventListener('dragstart', rippleHide);
|
5705
5713
|
el.removeEventListener('blur', focusRippleHide);
|
@@ -5708,8 +5716,8 @@ function mounted$4(el, binding) {
|
|
5708
5716
|
updateRipple(el, binding, false);
|
5709
5717
|
}
|
5710
5718
|
function unmounted$4(el) {
|
5711
|
-
delete el._ripple;
|
5712
5719
|
removeListeners(el);
|
5720
|
+
delete el._ripple;
|
5713
5721
|
}
|
5714
5722
|
function updated$1(el, binding) {
|
5715
5723
|
if (binding.value === binding.oldValue) {
|
@@ -8420,11 +8428,18 @@ const VDivider = genericComponent()({
|
|
8420
8428
|
// List
|
8421
8429
|
const ListKey = Symbol.for('vuetify:list');
|
8422
8430
|
function createList() {
|
8431
|
+
let {
|
8432
|
+
filterable
|
8433
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
|
8434
|
+
filterable: false
|
8435
|
+
};
|
8423
8436
|
const parent = inject$1(ListKey, {
|
8437
|
+
filterable: false,
|
8424
8438
|
hasPrepend: shallowRef(false),
|
8425
8439
|
updateHasPrepend: () => null
|
8426
8440
|
});
|
8427
8441
|
const data = {
|
8442
|
+
filterable: parent.filterable || filterable,
|
8428
8443
|
hasPrepend: shallowRef(false),
|
8429
8444
|
updateHasPrepend: value => {
|
8430
8445
|
if (value) data.hasPrepend.value = value;
|
@@ -9376,6 +9391,9 @@ const VListItem = genericComponent()({
|
|
9376
9391
|
roundedClasses
|
9377
9392
|
} = useRounded(roundedProps);
|
9378
9393
|
const lineClasses = toRef(() => props.lines ? `v-list-item--${props.lines}-line` : undefined);
|
9394
|
+
const rippleOptions = toRef(() => props.ripple !== undefined && !!props.ripple && list?.filterable ? {
|
9395
|
+
keys: [keyCodes.enter]
|
9396
|
+
} : props.ripple);
|
9379
9397
|
const slotProps = computed(() => ({
|
9380
9398
|
isActive: isActive.value,
|
9381
9399
|
select,
|
@@ -9400,8 +9418,9 @@ const VListItem = genericComponent()({
|
|
9400
9418
|
function onKeyDown(e) {
|
9401
9419
|
const target = e.target;
|
9402
9420
|
if (['INPUT', 'TEXTAREA'].includes(target.tagName)) return;
|
9403
|
-
if (e.key === 'Enter' || e.key === ' ') {
|
9421
|
+
if (e.key === 'Enter' || e.key === ' ' && !list?.filterable) {
|
9404
9422
|
e.preventDefault();
|
9423
|
+
e.stopPropagation();
|
9405
9424
|
e.target.dispatchEvent(new MouseEvent('click', e));
|
9406
9425
|
}
|
9407
9426
|
}
|
@@ -9511,7 +9530,7 @@ const VListItem = genericComponent()({
|
|
9511
9530
|
}), createElementVNode("div", {
|
9512
9531
|
"class": "v-list-item__spacer"
|
9513
9532
|
}, null)])]
|
9514
|
-
}), [[Ripple, isClickable.value &&
|
9533
|
+
}), [[Ripple, isClickable.value && rippleOptions.value]]);
|
9515
9534
|
});
|
9516
9535
|
return {
|
9517
9536
|
activate,
|
@@ -9834,6 +9853,7 @@ const makeVListProps = propsFactory({
|
|
9834
9853
|
activeClass: String,
|
9835
9854
|
bgColor: String,
|
9836
9855
|
disabled: Boolean,
|
9856
|
+
filterable: Boolean,
|
9837
9857
|
expandIcon: IconValue,
|
9838
9858
|
collapseIcon: IconValue,
|
9839
9859
|
lines: {
|
@@ -9917,7 +9937,9 @@ const VList = genericComponent()({
|
|
9917
9937
|
const activeColor = toRef(() => props.activeColor);
|
9918
9938
|
const baseColor = toRef(() => props.baseColor);
|
9919
9939
|
const color = toRef(() => props.color);
|
9920
|
-
createList(
|
9940
|
+
createList({
|
9941
|
+
filterable: props.filterable
|
9942
|
+
});
|
9921
9943
|
provideDefaults({
|
9922
9944
|
VListGroup: {
|
9923
9945
|
activeColor,
|
@@ -13540,7 +13562,7 @@ const VAutocomplete = genericComponent()({
|
|
13540
13562
|
menu.value = !menu.value;
|
13541
13563
|
}
|
13542
13564
|
function onListKeydown(e) {
|
13543
|
-
if (e.key
|
13565
|
+
if (checkPrintable(e) || e.key === 'Backspace') {
|
13544
13566
|
vTextFieldRef.value?.focus();
|
13545
13567
|
}
|
13546
13568
|
}
|
@@ -13745,6 +13767,7 @@ const VAutocomplete = genericComponent()({
|
|
13745
13767
|
}, props.menuProps), {
|
13746
13768
|
default: () => [hasList && createVNode(VList, mergeProps({
|
13747
13769
|
"ref": listRef,
|
13770
|
+
"filterable": true,
|
13748
13771
|
"selected": selectedValues.value,
|
13749
13772
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
13750
13773
|
"onMousedown": e => e.preventDefault(),
|
@@ -18283,7 +18306,7 @@ const VCombobox = genericComponent()({
|
|
18283
18306
|
menu.value = !menu.value;
|
18284
18307
|
}
|
18285
18308
|
function onListKeydown(e) {
|
18286
|
-
if (e.key
|
18309
|
+
if (checkPrintable(e) || e.key === 'Backspace') {
|
18287
18310
|
vTextFieldRef.value?.focus();
|
18288
18311
|
}
|
18289
18312
|
}
|
@@ -18488,6 +18511,7 @@ const VCombobox = genericComponent()({
|
|
18488
18511
|
}, props.menuProps), {
|
18489
18512
|
default: () => [hasList && createVNode(VList, mergeProps({
|
18490
18513
|
"ref": listRef,
|
18514
|
+
"filterable": true,
|
18491
18515
|
"selected": selectedValues.value,
|
18492
18516
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
18493
18517
|
"onMousedown": e => e.preventDefault(),
|
@@ -20974,11 +20998,18 @@ const VDataTableRows = genericComponent()({
|
|
20974
20998
|
}
|
20975
20999
|
});
|
20976
21000
|
|
21001
|
+
// Types
|
21002
|
+
|
20977
21003
|
const makeVTableProps = propsFactory({
|
20978
21004
|
fixedHeader: Boolean,
|
20979
21005
|
fixedFooter: Boolean,
|
20980
21006
|
height: [Number, String],
|
20981
21007
|
hover: Boolean,
|
21008
|
+
striped: {
|
21009
|
+
type: String,
|
21010
|
+
default: null,
|
21011
|
+
validator: v => ['even', 'odd'].includes(v)
|
21012
|
+
},
|
20982
21013
|
...makeComponentProps(),
|
20983
21014
|
...makeDensityProps(),
|
20984
21015
|
...makeTagProps(),
|
@@ -21005,7 +21036,9 @@ const VTable = genericComponent()({
|
|
21005
21036
|
'v-table--fixed-footer': props.fixedFooter,
|
21006
21037
|
'v-table--has-top': !!slots.top,
|
21007
21038
|
'v-table--has-bottom': !!slots.bottom,
|
21008
|
-
'v-table--hover': props.hover
|
21039
|
+
'v-table--hover': props.hover,
|
21040
|
+
'v-table--striped-even': props.striped === 'even',
|
21041
|
+
'v-table--striped-odd': props.striped === 'odd'
|
21009
21042
|
}, themeClasses.value, densityClasses.value, props.class]),
|
21010
21043
|
"style": normalizeStyle(props.style)
|
21011
21044
|
}, {
|
@@ -32188,7 +32221,7 @@ function createVuetify$1() {
|
|
32188
32221
|
};
|
32189
32222
|
});
|
32190
32223
|
}
|
32191
|
-
const version$1 = "3.8.7-dev.2025-
|
32224
|
+
const version$1 = "3.8.7-dev.2025-06-03";
|
32192
32225
|
createVuetify$1.version = version$1;
|
32193
32226
|
|
32194
32227
|
// Vue's inject() can only be used in setup
|
@@ -32486,7 +32519,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
32486
32519
|
|
32487
32520
|
/* eslint-disable local-rules/sort-imports */
|
32488
32521
|
|
32489
|
-
const version = "3.8.7-dev.2025-
|
32522
|
+
const version = "3.8.7-dev.2025-06-03";
|
32490
32523
|
|
32491
32524
|
/* eslint-disable local-rules/sort-imports */
|
32492
32525
|
|