@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.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
|
*/
|
@@ -4286,7 +4286,10 @@ const makeVToolbarProps = propsFactory({
|
|
4286
4286
|
default: 'default',
|
4287
4287
|
validator: v => allowedDensities$1.includes(v)
|
4288
4288
|
},
|
4289
|
-
extended:
|
4289
|
+
extended: {
|
4290
|
+
type: Boolean,
|
4291
|
+
default: null
|
4292
|
+
},
|
4290
4293
|
extensionHeight: {
|
4291
4294
|
type: [Number, String],
|
4292
4295
|
default: 48
|
@@ -4334,7 +4337,7 @@ const VToolbar = genericComponent()({
|
|
4334
4337
|
const {
|
4335
4338
|
rtlClasses
|
4336
4339
|
} = useRtl();
|
4337
|
-
const isExtended = shallowRef(
|
4340
|
+
const isExtended = shallowRef(props.extended === null ? !!slots.extension?.() : props.extended);
|
4338
4341
|
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));
|
4339
4342
|
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);
|
4340
4343
|
provideDefaults({
|
@@ -4346,7 +4349,7 @@ const VToolbar = genericComponent()({
|
|
4346
4349
|
const hasTitle = !!(props.title || slots.title);
|
4347
4350
|
const hasImage = !!(slots.image || props.image);
|
4348
4351
|
const extension = slots.extension?.();
|
4349
|
-
isExtended.value =
|
4352
|
+
isExtended.value = props.extended === null ? !!extension : props.extended;
|
4350
4353
|
return createVNode(props.tag, {
|
4351
4354
|
"class": normalizeClass(['v-toolbar', {
|
4352
4355
|
'v-toolbar--absolute': props.absolute,
|
@@ -5904,8 +5907,8 @@ function rippleCancelShow(e) {
|
|
5904
5907
|
window.clearTimeout(element._ripple.showTimer);
|
5905
5908
|
}
|
5906
5909
|
let keyboardRipple = false;
|
5907
|
-
function keyboardRippleShow(e) {
|
5908
|
-
if (!keyboardRipple && (e.keyCode
|
5910
|
+
function keyboardRippleShow(e, keys) {
|
5911
|
+
if (!keyboardRipple && keys.includes(e.keyCode)) {
|
5909
5912
|
keyboardRipple = true;
|
5910
5913
|
rippleShow(e);
|
5911
5914
|
}
|
@@ -5933,9 +5936,12 @@ function updateRipple(el, binding, wasEnabled) {
|
|
5933
5936
|
el._ripple.enabled = enabled;
|
5934
5937
|
el._ripple.centered = modifiers.center;
|
5935
5938
|
el._ripple.circle = modifiers.circle;
|
5936
|
-
|
5937
|
-
|
5939
|
+
const bindingValue = isObject(value) ? value : {};
|
5940
|
+
if (bindingValue.class) {
|
5941
|
+
el._ripple.class = bindingValue.class;
|
5938
5942
|
}
|
5943
|
+
const allowedKeys = bindingValue.keys ?? [keyCodes.enter, keyCodes.space];
|
5944
|
+
el._ripple.keyDownHandler = e => keyboardRippleShow(e, allowedKeys);
|
5939
5945
|
if (enabled && !wasEnabled) {
|
5940
5946
|
if (modifiers.stop) {
|
5941
5947
|
el.addEventListener('touchstart', rippleStop, {
|
@@ -5957,7 +5963,7 @@ function updateRipple(el, binding, wasEnabled) {
|
|
5957
5963
|
el.addEventListener('mousedown', rippleShow);
|
5958
5964
|
el.addEventListener('mouseup', rippleHide);
|
5959
5965
|
el.addEventListener('mouseleave', rippleHide);
|
5960
|
-
el.addEventListener('keydown', keyboardRippleShow);
|
5966
|
+
el.addEventListener('keydown', e => keyboardRippleShow(e, allowedKeys));
|
5961
5967
|
el.addEventListener('keyup', keyboardRippleHide);
|
5962
5968
|
el.addEventListener('blur', focusRippleHide);
|
5963
5969
|
|
@@ -5977,7 +5983,9 @@ function removeListeners(el) {
|
|
5977
5983
|
el.removeEventListener('touchcancel', rippleHide);
|
5978
5984
|
el.removeEventListener('mouseup', rippleHide);
|
5979
5985
|
el.removeEventListener('mouseleave', rippleHide);
|
5980
|
-
el.
|
5986
|
+
if (el._ripple?.keyDownHandler) {
|
5987
|
+
el.removeEventListener('keydown', el._ripple.keyDownHandler);
|
5988
|
+
}
|
5981
5989
|
el.removeEventListener('keyup', keyboardRippleHide);
|
5982
5990
|
el.removeEventListener('dragstart', rippleHide);
|
5983
5991
|
el.removeEventListener('blur', focusRippleHide);
|
@@ -5986,8 +5994,8 @@ function mounted$4(el, binding) {
|
|
5986
5994
|
updateRipple(el, binding, false);
|
5987
5995
|
}
|
5988
5996
|
function unmounted$4(el) {
|
5989
|
-
delete el._ripple;
|
5990
5997
|
removeListeners(el);
|
5998
|
+
delete el._ripple;
|
5991
5999
|
}
|
5992
6000
|
function updated$1(el, binding) {
|
5993
6001
|
if (binding.value === binding.oldValue) {
|
@@ -8698,11 +8706,18 @@ const VDivider = genericComponent()({
|
|
8698
8706
|
// List
|
8699
8707
|
const ListKey = Symbol.for('vuetify:list');
|
8700
8708
|
function createList() {
|
8709
|
+
let {
|
8710
|
+
filterable
|
8711
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
|
8712
|
+
filterable: false
|
8713
|
+
};
|
8701
8714
|
const parent = inject$1(ListKey, {
|
8715
|
+
filterable: false,
|
8702
8716
|
hasPrepend: shallowRef(false),
|
8703
8717
|
updateHasPrepend: () => null
|
8704
8718
|
});
|
8705
8719
|
const data = {
|
8720
|
+
filterable: parent.filterable || filterable,
|
8706
8721
|
hasPrepend: shallowRef(false),
|
8707
8722
|
updateHasPrepend: value => {
|
8708
8723
|
if (value) data.hasPrepend.value = value;
|
@@ -9654,6 +9669,9 @@ const VListItem = genericComponent()({
|
|
9654
9669
|
roundedClasses
|
9655
9670
|
} = useRounded(roundedProps);
|
9656
9671
|
const lineClasses = toRef(() => props.lines ? `v-list-item--${props.lines}-line` : undefined);
|
9672
|
+
const rippleOptions = toRef(() => props.ripple !== undefined && !!props.ripple && list?.filterable ? {
|
9673
|
+
keys: [keyCodes.enter]
|
9674
|
+
} : props.ripple);
|
9657
9675
|
const slotProps = computed(() => ({
|
9658
9676
|
isActive: isActive.value,
|
9659
9677
|
select,
|
@@ -9678,8 +9696,9 @@ const VListItem = genericComponent()({
|
|
9678
9696
|
function onKeyDown(e) {
|
9679
9697
|
const target = e.target;
|
9680
9698
|
if (['INPUT', 'TEXTAREA'].includes(target.tagName)) return;
|
9681
|
-
if (e.key === 'Enter' || e.key === ' ') {
|
9699
|
+
if (e.key === 'Enter' || e.key === ' ' && !list?.filterable) {
|
9682
9700
|
e.preventDefault();
|
9701
|
+
e.stopPropagation();
|
9683
9702
|
e.target.dispatchEvent(new MouseEvent('click', e));
|
9684
9703
|
}
|
9685
9704
|
}
|
@@ -9789,7 +9808,7 @@ const VListItem = genericComponent()({
|
|
9789
9808
|
}), createElementVNode("div", {
|
9790
9809
|
"class": "v-list-item__spacer"
|
9791
9810
|
}, null)])]
|
9792
|
-
}), [[Ripple, isClickable.value &&
|
9811
|
+
}), [[Ripple, isClickable.value && rippleOptions.value]]);
|
9793
9812
|
});
|
9794
9813
|
return {
|
9795
9814
|
activate,
|
@@ -10112,6 +10131,7 @@ const makeVListProps = propsFactory({
|
|
10112
10131
|
activeClass: String,
|
10113
10132
|
bgColor: String,
|
10114
10133
|
disabled: Boolean,
|
10134
|
+
filterable: Boolean,
|
10115
10135
|
expandIcon: IconValue,
|
10116
10136
|
collapseIcon: IconValue,
|
10117
10137
|
lines: {
|
@@ -10195,7 +10215,9 @@ const VList = genericComponent()({
|
|
10195
10215
|
const activeColor = toRef(() => props.activeColor);
|
10196
10216
|
const baseColor = toRef(() => props.baseColor);
|
10197
10217
|
const color = toRef(() => props.color);
|
10198
|
-
createList(
|
10218
|
+
createList({
|
10219
|
+
filterable: props.filterable
|
10220
|
+
});
|
10199
10221
|
provideDefaults({
|
10200
10222
|
VListGroup: {
|
10201
10223
|
activeColor,
|
@@ -13818,7 +13840,7 @@ const VAutocomplete = genericComponent()({
|
|
13818
13840
|
menu.value = !menu.value;
|
13819
13841
|
}
|
13820
13842
|
function onListKeydown(e) {
|
13821
|
-
if (e.key
|
13843
|
+
if (checkPrintable(e) || e.key === 'Backspace') {
|
13822
13844
|
vTextFieldRef.value?.focus();
|
13823
13845
|
}
|
13824
13846
|
}
|
@@ -14023,6 +14045,7 @@ const VAutocomplete = genericComponent()({
|
|
14023
14045
|
}, props.menuProps), {
|
14024
14046
|
default: () => [hasList && createVNode(VList, mergeProps({
|
14025
14047
|
"ref": listRef,
|
14048
|
+
"filterable": true,
|
14026
14049
|
"selected": selectedValues.value,
|
14027
14050
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
14028
14051
|
"onMousedown": e => e.preventDefault(),
|
@@ -18561,7 +18584,7 @@ const VCombobox = genericComponent()({
|
|
18561
18584
|
menu.value = !menu.value;
|
18562
18585
|
}
|
18563
18586
|
function onListKeydown(e) {
|
18564
|
-
if (e.key
|
18587
|
+
if (checkPrintable(e) || e.key === 'Backspace') {
|
18565
18588
|
vTextFieldRef.value?.focus();
|
18566
18589
|
}
|
18567
18590
|
}
|
@@ -18766,6 +18789,7 @@ const VCombobox = genericComponent()({
|
|
18766
18789
|
}, props.menuProps), {
|
18767
18790
|
default: () => [hasList && createVNode(VList, mergeProps({
|
18768
18791
|
"ref": listRef,
|
18792
|
+
"filterable": true,
|
18769
18793
|
"selected": selectedValues.value,
|
18770
18794
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
18771
18795
|
"onMousedown": e => e.preventDefault(),
|
@@ -21252,11 +21276,18 @@ const VDataTableRows = genericComponent()({
|
|
21252
21276
|
}
|
21253
21277
|
});
|
21254
21278
|
|
21279
|
+
// Types
|
21280
|
+
|
21255
21281
|
const makeVTableProps = propsFactory({
|
21256
21282
|
fixedHeader: Boolean,
|
21257
21283
|
fixedFooter: Boolean,
|
21258
21284
|
height: [Number, String],
|
21259
21285
|
hover: Boolean,
|
21286
|
+
striped: {
|
21287
|
+
type: String,
|
21288
|
+
default: null,
|
21289
|
+
validator: v => ['even', 'odd'].includes(v)
|
21290
|
+
},
|
21260
21291
|
...makeComponentProps(),
|
21261
21292
|
...makeDensityProps(),
|
21262
21293
|
...makeTagProps(),
|
@@ -21283,7 +21314,9 @@ const VTable = genericComponent()({
|
|
21283
21314
|
'v-table--fixed-footer': props.fixedFooter,
|
21284
21315
|
'v-table--has-top': !!slots.top,
|
21285
21316
|
'v-table--has-bottom': !!slots.bottom,
|
21286
|
-
'v-table--hover': props.hover
|
21317
|
+
'v-table--hover': props.hover,
|
21318
|
+
'v-table--striped-even': props.striped === 'even',
|
21319
|
+
'v-table--striped-odd': props.striped === 'odd'
|
21287
21320
|
}, themeClasses.value, densityClasses.value, props.class]),
|
21288
21321
|
"style": normalizeStyle(props.style)
|
21289
21322
|
}, {
|
@@ -29498,7 +29531,7 @@ function createVuetify$1() {
|
|
29498
29531
|
};
|
29499
29532
|
});
|
29500
29533
|
}
|
29501
|
-
const version$1 = "3.8.7-dev.2025-
|
29534
|
+
const version$1 = "3.8.7-dev.2025-06-03";
|
29502
29535
|
createVuetify$1.version = version$1;
|
29503
29536
|
|
29504
29537
|
// Vue's inject() can only be used in setup
|
@@ -29523,7 +29556,7 @@ const createVuetify = function () {
|
|
29523
29556
|
...options
|
29524
29557
|
});
|
29525
29558
|
};
|
29526
|
-
const version = "3.8.7-dev.2025-
|
29559
|
+
const version = "3.8.7-dev.2025-06-03";
|
29527
29560
|
createVuetify.version = version;
|
29528
29561
|
|
29529
29562
|
export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useLayout, useLocale, useRtl, useTheme, version };
|