@vuetify/nightly 3.6.13-3.7.0-beta.0.0-dev.2024-07-12 → 3.6.13-3.7.0-beta.0.0-dev.2024-07-25
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 +0 -13
- package/dist/json/attributes.json +30 -22
- package/dist/json/importMap-labs.json +18 -18
- package/dist/json/importMap.json +152 -152
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +53 -42
- package/dist/vuetify-labs.css +1255 -1257
- package/dist/vuetify-labs.d.ts +12304 -12192
- package/dist/vuetify-labs.esm.js +118 -68
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +118 -68
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +1293 -1295
- package/dist/vuetify.d.ts +10496 -10404
- package/dist/vuetify.esm.js +110 -64
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +110 -64
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1078 -1080
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/index.d.mts +55 -55
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.mts +169 -169
- package/lib/components/VAutocomplete/VAutocomplete.mjs +15 -8
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +615 -609
- package/lib/components/VAvatar/index.d.mts +36 -36
- package/lib/components/VBadge/index.d.mts +58 -58
- package/lib/components/VBanner/index.d.mts +59 -59
- package/lib/components/VBottomNavigation/index.d.mts +58 -58
- package/lib/components/VBottomSheet/index.d.mts +118 -118
- package/lib/components/VBreadcrumbs/index.d.mts +34 -34
- package/lib/components/VBtn/VBtn.css +3 -0
- package/lib/components/VBtn/VBtn.sass +3 -0
- package/lib/components/VBtn/index.d.mts +107 -107
- package/lib/components/VBtnGroup/index.d.mts +23 -23
- package/lib/components/VBtnToggle/index.d.mts +40 -40
- package/lib/components/VCard/index.d.mts +93 -93
- package/lib/components/VCarousel/index.d.mts +128 -128
- package/lib/components/VCheckbox/index.d.mts +174 -168
- package/lib/components/VChip/index.d.mts +86 -86
- package/lib/components/VChipGroup/index.d.mts +46 -46
- package/lib/components/VColorPicker/index.d.mts +96 -96
- package/lib/components/VCombobox/VCombobox.mjs +15 -8
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +615 -609
- package/lib/components/VConfirmEdit/index.d.mts +2 -2
- package/lib/components/VCounter/index.d.mts +27 -27
- package/lib/components/VDataIterator/index.d.mts +51 -50
- package/lib/components/VDataTable/VDataTable.mjs +10 -3
- package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.mjs +6 -2
- package/lib/components/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.mjs +10 -3
- package/lib/components/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/components/VDataTable/composables/group.mjs +2 -1
- package/lib/components/VDataTable/composables/group.mjs.map +1 -1
- package/lib/components/VDataTable/composables/sort.mjs +4 -4
- package/lib/components/VDataTable/composables/sort.mjs.map +1 -1
- package/lib/components/VDataTable/index.d.mts +275 -274
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +3 -0
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VDatePicker/index.d.mts +134 -134
- package/lib/components/VDialog/index.d.mts +353 -353
- package/lib/components/VDivider/index.d.mts +15 -15
- package/lib/components/VEmptyState/index.d.mts +47 -47
- package/lib/components/VExpansionPanel/index.d.mts +134 -134
- package/lib/components/VFab/index.d.mts +227 -227
- package/lib/components/VField/VField.css +6 -11
- package/lib/components/VField/VField.mjs +7 -5
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +2 -6
- package/lib/components/VField/index.d.mts +58 -52
- package/lib/components/VFileInput/index.d.mts +255 -249
- package/lib/components/VFooter/index.d.mts +50 -50
- package/lib/components/VForm/index.d.mts +9 -9
- package/lib/components/VGrid/index.d.mts +150 -150
- package/lib/components/VIcon/index.d.mts +24 -24
- package/lib/components/VImg/index.d.mts +85 -85
- package/lib/components/VInfiniteScroll/index.d.mts +22 -22
- package/lib/components/VInput/VInput.css +5 -5
- package/lib/components/VInput/VInput.mjs +4 -1
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/VInput.sass +1 -1
- package/lib/components/VInput/index.d.mts +61 -55
- package/lib/components/VItemGroup/index.d.mts +17 -17
- package/lib/components/VLabel/index.d.mts +8 -8
- package/lib/components/VLayout/index.d.mts +36 -36
- package/lib/components/VLazy/index.d.mts +31 -31
- package/lib/components/VList/index.d.mts +178 -178
- package/lib/components/VLocaleProvider/index.d.mts +7 -7
- package/lib/components/VMain/index.d.mts +10 -10
- package/lib/components/VMenu/VMenu.mjs +7 -5
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +396 -396
- package/lib/components/VMessages/index.d.mts +20 -20
- package/lib/components/VNavigationDrawer/index.d.mts +72 -72
- package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.mjs +1 -1
- package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
- package/lib/components/VOtpInput/index.d.mts +88 -88
- package/lib/components/VOverlay/index.d.mts +97 -97
- package/lib/components/VOverlay/locationStrategies.mjs +0 -6
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VPagination/index.d.mts +55 -55
- package/lib/components/VParallax/index.d.mts +7 -7
- package/lib/components/VProgressCircular/index.d.mts +24 -24
- package/lib/components/VProgressLinear/index.d.mts +52 -52
- package/lib/components/VRadio/index.d.mts +41 -41
- package/lib/components/VRadioGroup/index.d.mts +105 -99
- package/lib/components/VRangeSlider/index.d.mts +102 -96
- package/lib/components/VRating/index.d.mts +22 -22
- package/lib/components/VResponsive/index.d.mts +23 -23
- package/lib/components/VSelect/VSelect.mjs +15 -13
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +615 -609
- package/lib/components/VSelect/useScrolling.mjs +3 -3
- package/lib/components/VSelect/useScrolling.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.mts +43 -43
- package/lib/components/VSelectionControlGroup/index.d.mts +39 -39
- package/lib/components/VSheet/index.d.mts +34 -34
- package/lib/components/VSkeletonLoader/index.d.mts +17 -17
- package/lib/components/VSlideGroup/index.d.mts +33 -33
- package/lib/components/VSlider/index.d.mts +95 -89
- package/lib/components/VSnackbar/index.d.mts +411 -411
- package/lib/components/VSparkline/index.d.mts +38 -38
- package/lib/components/VSpeedDial/index.d.mts +176 -176
- package/lib/components/VStepper/index.d.mts +119 -119
- package/lib/components/VSwitch/index.d.mts +108 -102
- package/lib/components/VSystemBar/index.d.mts +39 -39
- package/lib/components/VTable/index.d.mts +4 -4
- package/lib/components/VTabs/index.d.mts +512 -512
- package/lib/components/VTextField/VTextField.mjs +1 -1
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.mts +421 -415
- package/lib/components/VTextarea/VTextarea.mjs +5 -5
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.mts +359 -344
- package/lib/components/VTimeline/index.d.mts +26 -26
- package/lib/components/VToolbar/index.d.mts +53 -53
- package/lib/components/VTooltip/index.d.mts +424 -424
- package/lib/components/VValidation/index.d.mts +19 -19
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +2 -0
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +13 -10
- package/lib/components/VWindow/index.d.mts +31 -31
- package/lib/components/index.d.mts +10657 -10566
- package/lib/components/transitions/index.d.mts +200 -200
- package/lib/composables/nested/nested.mjs +0 -1
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/virtual.mjs +1 -0
- package/lib/composables/virtual.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +81 -80
- package/lib/labs/VCalendar/index.d.mts +52 -52
- package/lib/labs/VDateInput/VDateInput.mjs +6 -3
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VDateInput/index.d.mts +256 -250
- package/lib/labs/VNumberInput/index.d.mts +247 -241
- package/lib/labs/VPicker/index.d.mts +45 -45
- package/lib/labs/VSnackbarQueue/index.d.mts +611 -611
- package/lib/labs/VStepperVertical/index.d.mts +212 -212
- package/lib/labs/VTimePicker/VTimePickerClock.mjs +0 -1
- package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs +2 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
- package/lib/labs/VTimePicker/index.d.mts +131 -122
- package/lib/labs/VTreeview/index.d.mts +199 -199
- package/lib/labs/components.d.mts +1754 -1733
- package/lib/util/helpers.mjs +5 -0
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +9 -4
package/dist/vuetify.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.6.13-3.7.0-beta.0.0-dev.2024-07-
|
2
|
+
* Vuetify v3.6.13-3.7.0-beta.0.0-dev.2024-07-25
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -502,6 +502,11 @@
|
|
502
502
|
});
|
503
503
|
return fn;
|
504
504
|
}
|
505
|
+
function checkPrintable(e) {
|
506
|
+
const isPrintableChar = e.key.length === 1;
|
507
|
+
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
508
|
+
return isPrintableChar && noModifier;
|
509
|
+
}
|
505
510
|
|
506
511
|
// Utilities
|
507
512
|
const block = ['top', 'bottom'];
|
@@ -7054,7 +7059,10 @@
|
|
7054
7059
|
const makeVInputProps = propsFactory({
|
7055
7060
|
id: String,
|
7056
7061
|
appendIcon: IconValue,
|
7057
|
-
centerAffix:
|
7062
|
+
centerAffix: {
|
7063
|
+
type: Boolean,
|
7064
|
+
default: true
|
7065
|
+
},
|
7058
7066
|
prependIcon: IconValue,
|
7059
7067
|
hideDetails: [Boolean, String],
|
7060
7068
|
hideSpinButtons: Boolean,
|
@@ -8804,7 +8812,6 @@
|
|
8804
8812
|
children.value.set(parent, list.filter(child => child !== id));
|
8805
8813
|
}
|
8806
8814
|
parents.value.delete(id);
|
8807
|
-
opened.value.delete(id);
|
8808
8815
|
},
|
8809
8816
|
open: (id, value, event) => {
|
8810
8817
|
vm.emit('click:open', {
|
@@ -9978,12 +9985,6 @@
|
|
9978
9985
|
// el.style.removeProperty('max-width')
|
9979
9986
|
// el.style.removeProperty('max-height')
|
9980
9987
|
|
9981
|
-
if (isRtl) {
|
9982
|
-
el.style.removeProperty('left');
|
9983
|
-
} else {
|
9984
|
-
el.style.removeProperty('right');
|
9985
|
-
}
|
9986
|
-
|
9987
9988
|
/* eslint-disable-next-line sonarjs/prefer-immediate-return */
|
9988
9989
|
const contentBox = nullifyTransforms(el);
|
9989
9990
|
if (isRtl) {
|
@@ -11375,23 +11376,25 @@
|
|
11375
11376
|
const id = vue.computed(() => props.id || `v-menu-${uid}`);
|
11376
11377
|
const overlay = vue.ref();
|
11377
11378
|
const parent = vue.inject(VMenuSymbol, null);
|
11378
|
-
const openChildren = vue.shallowRef(
|
11379
|
+
const openChildren = vue.shallowRef(new Set());
|
11379
11380
|
vue.provide(VMenuSymbol, {
|
11380
11381
|
register() {
|
11381
|
-
|
11382
|
+
openChildren.value.add(uid);
|
11382
11383
|
},
|
11383
11384
|
unregister() {
|
11384
|
-
|
11385
|
+
openChildren.value.delete(uid);
|
11385
11386
|
},
|
11386
11387
|
closeParents(e) {
|
11387
11388
|
setTimeout(() => {
|
11388
|
-
if (!openChildren.value && !props.persistent && (e == null || e && !isClickInsideElement(e, overlay.value.contentEl))) {
|
11389
|
+
if (!openChildren.value.size && !props.persistent && (e == null || e && !isClickInsideElement(e, overlay.value.contentEl))) {
|
11389
11390
|
isActive.value = false;
|
11390
11391
|
parent?.closeParents();
|
11391
11392
|
}
|
11392
11393
|
}, 40);
|
11393
11394
|
}
|
11394
11395
|
});
|
11396
|
+
vue.onBeforeUnmount(() => parent?.unregister());
|
11397
|
+
vue.onDeactivated(() => isActive.value = false);
|
11395
11398
|
async function onFocusIn(e) {
|
11396
11399
|
const before = e.relatedTarget;
|
11397
11400
|
const after = e.target;
|
@@ -11574,7 +11577,10 @@
|
|
11574
11577
|
default: '$clear'
|
11575
11578
|
},
|
11576
11579
|
active: Boolean,
|
11577
|
-
centerAffix:
|
11580
|
+
centerAffix: {
|
11581
|
+
type: Boolean,
|
11582
|
+
default: undefined
|
11583
|
+
},
|
11578
11584
|
color: String,
|
11579
11585
|
baseColor: String,
|
11580
11586
|
dirty: Boolean,
|
@@ -11641,9 +11647,8 @@
|
|
11641
11647
|
const {
|
11642
11648
|
rtlClasses
|
11643
11649
|
} = useRtl();
|
11644
|
-
const isSingleLine = vue.computed(() => props.singleLine || props.centerAffix);
|
11645
11650
|
const isActive = vue.computed(() => props.dirty || props.active);
|
11646
|
-
const hasLabel = vue.computed(() => !
|
11651
|
+
const hasLabel = vue.computed(() => !props.singleLine && !!(props.label || slots.label));
|
11647
11652
|
const uid = getUid();
|
11648
11653
|
const id = vue.computed(() => props.id || `input-${uid}`);
|
11649
11654
|
const messagesId = vue.computed(() => `${id.value}-messages`);
|
@@ -11732,7 +11737,7 @@
|
|
11732
11737
|
"class": ['v-field', {
|
11733
11738
|
'v-field--active': isActive.value,
|
11734
11739
|
'v-field--appended': hasAppend,
|
11735
|
-
'v-field--center-affix': props.centerAffix,
|
11740
|
+
'v-field--center-affix': props.centerAffix ?? !isPlainOrUnderlined.value,
|
11736
11741
|
'v-field--disabled': props.disabled,
|
11737
11742
|
'v-field--dirty': props.dirty,
|
11738
11743
|
'v-field--error': props.error,
|
@@ -11741,7 +11746,7 @@
|
|
11741
11746
|
'v-field--persistent-clear': props.persistentClear,
|
11742
11747
|
'v-field--prepended': hasPrepend,
|
11743
11748
|
'v-field--reverse': props.reverse,
|
11744
|
-
'v-field--single-line':
|
11749
|
+
'v-field--single-line': props.singleLine,
|
11745
11750
|
'v-field--no-label': !label(),
|
11746
11751
|
[`v-field--variant-${props.variant}`]: true
|
11747
11752
|
}, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value, roundedClasses.value, rtlClasses.value, props.class],
|
@@ -11976,6 +11981,7 @@
|
|
11976
11981
|
}, props.class],
|
11977
11982
|
"style": props.style
|
11978
11983
|
}, rootAttrs, inputProps, {
|
11984
|
+
"centerAffix": !isPlainOrUnderlined.value,
|
11979
11985
|
"focused": isFocused.value
|
11980
11986
|
}), {
|
11981
11987
|
...slots,
|
@@ -12001,7 +12007,6 @@
|
|
12001
12007
|
"dirty": isDirty.value || props.dirty,
|
12002
12008
|
"disabled": isDisabled.value,
|
12003
12009
|
"focused": isFocused.value,
|
12004
|
-
"centerAffix": props.centerAffix,
|
12005
12010
|
"error": isValid.value === false
|
12006
12011
|
}), {
|
12007
12012
|
...slots,
|
@@ -12301,6 +12306,7 @@
|
|
12301
12306
|
deep: true
|
12302
12307
|
});
|
12303
12308
|
return {
|
12309
|
+
calculateVisibleItems,
|
12304
12310
|
containerRef,
|
12305
12311
|
markerRef,
|
12306
12312
|
computedItems,
|
@@ -12364,6 +12370,7 @@
|
|
12364
12370
|
dimensionStyles
|
12365
12371
|
} = useDimension(props);
|
12366
12372
|
const {
|
12373
|
+
calculateVisibleItems,
|
12367
12374
|
containerRef,
|
12368
12375
|
markerRef,
|
12369
12376
|
handleScroll,
|
@@ -12435,6 +12442,7 @@
|
|
12435
12442
|
}, [children])]);
|
12436
12443
|
});
|
12437
12444
|
return {
|
12445
|
+
calculateVisibleItems,
|
12438
12446
|
scrollToIndex
|
12439
12447
|
};
|
12440
12448
|
}
|
@@ -12503,9 +12511,9 @@
|
|
12503
12511
|
}
|
12504
12512
|
}
|
12505
12513
|
return {
|
12506
|
-
onListScroll,
|
12507
|
-
onListKeydown
|
12508
|
-
};
|
12514
|
+
onScrollPassive: onListScroll,
|
12515
|
+
onKeydown: onListKeydown
|
12516
|
+
}; // typescript doesn't know about vue's event merging
|
12509
12517
|
}
|
12510
12518
|
|
12511
12519
|
// Types
|
@@ -12580,7 +12588,7 @@
|
|
12580
12588
|
const menu = vue.computed({
|
12581
12589
|
get: () => _menu.value,
|
12582
12590
|
set: v => {
|
12583
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
12591
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
12584
12592
|
_menu.value = v;
|
12585
12593
|
}
|
12586
12594
|
});
|
@@ -12619,10 +12627,7 @@
|
|
12619
12627
|
};
|
12620
12628
|
});
|
12621
12629
|
const listRef = vue.ref();
|
12622
|
-
const
|
12623
|
-
onListScroll,
|
12624
|
-
onListKeydown
|
12625
|
-
} = useScrolling(listRef, vTextFieldRef);
|
12630
|
+
const listEvents = useScrolling(listRef, vTextFieldRef);
|
12626
12631
|
function onClear(e) {
|
12627
12632
|
if (props.openOnClear) {
|
12628
12633
|
menu.value = true;
|
@@ -12632,6 +12637,11 @@
|
|
12632
12637
|
if (menuDisabled.value) return;
|
12633
12638
|
menu.value = !menu.value;
|
12634
12639
|
}
|
12640
|
+
function onListKeydown(e) {
|
12641
|
+
if (checkPrintable(e)) {
|
12642
|
+
onKeydown(e);
|
12643
|
+
}
|
12644
|
+
}
|
12635
12645
|
function onKeydown(e) {
|
12636
12646
|
if (!e.key || props.readonly || form?.isReadonly.value) return;
|
12637
12647
|
if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {
|
@@ -12652,11 +12662,6 @@
|
|
12652
12662
|
// html select hotkeys
|
12653
12663
|
const KEYBOARD_LOOKUP_THRESHOLD = 1000; // milliseconds
|
12654
12664
|
|
12655
|
-
function checkPrintable(e) {
|
12656
|
-
const isPrintableChar = e.key.length === 1;
|
12657
|
-
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
12658
|
-
return isPrintableChar && noModifier;
|
12659
|
-
}
|
12660
12665
|
if (props.multiple || !checkPrintable(e)) return;
|
12661
12666
|
const now = performance.now();
|
12662
12667
|
if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {
|
@@ -12701,6 +12706,11 @@
|
|
12701
12706
|
menu.value = false;
|
12702
12707
|
}
|
12703
12708
|
}
|
12709
|
+
function onAfterEnter() {
|
12710
|
+
if (props.eager) {
|
12711
|
+
vVirtualScrollRef.value?.calculateVisibleItems();
|
12712
|
+
}
|
12713
|
+
}
|
12704
12714
|
function onAfterLeave() {
|
12705
12715
|
if (isFocused.value) {
|
12706
12716
|
vTextFieldRef.value?.focus();
|
@@ -12779,6 +12789,7 @@
|
|
12779
12789
|
"openOnClick": false,
|
12780
12790
|
"closeOnContentClick": false,
|
12781
12791
|
"transition": props.transition,
|
12792
|
+
"onAfterEnter": onAfterEnter,
|
12782
12793
|
"onAfterLeave": onAfterLeave
|
12783
12794
|
}, computedMenuProps.value), {
|
12784
12795
|
default: () => [hasList && vue.createVNode(VList, vue.mergeProps({
|
@@ -12788,11 +12799,10 @@
|
|
12788
12799
|
"onMousedown": e => e.preventDefault(),
|
12789
12800
|
"onKeydown": onListKeydown,
|
12790
12801
|
"onFocusin": onFocusin,
|
12791
|
-
"onScrollPassive": onListScroll,
|
12792
12802
|
"tabindex": "-1",
|
12793
12803
|
"aria-live": "polite",
|
12794
12804
|
"color": props.itemColor ?? props.color
|
12795
|
-
}, props.listProps), {
|
12805
|
+
}, listEvents, props.listProps), {
|
12796
12806
|
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? vue.createVNode(VListItem, {
|
12797
12807
|
"title": t(props.noDataText)
|
12798
12808
|
}, null)), vue.createVNode(VVirtualScroll, {
|
@@ -13087,7 +13097,7 @@
|
|
13087
13097
|
const menu = vue.computed({
|
13088
13098
|
get: () => _menu.value,
|
13089
13099
|
set: v => {
|
13090
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
13100
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
13091
13101
|
_menu.value = v;
|
13092
13102
|
}
|
13093
13103
|
});
|
@@ -13131,10 +13141,7 @@
|
|
13131
13141
|
});
|
13132
13142
|
const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
|
13133
13143
|
const listRef = vue.ref();
|
13134
|
-
const
|
13135
|
-
onListScroll,
|
13136
|
-
onListKeydown
|
13137
|
-
} = useScrolling(listRef, vTextFieldRef);
|
13144
|
+
const listEvents = useScrolling(listRef, vTextFieldRef);
|
13138
13145
|
function onClear(e) {
|
13139
13146
|
if (props.openOnClear) {
|
13140
13147
|
menu.value = true;
|
@@ -13153,6 +13160,11 @@
|
|
13153
13160
|
}
|
13154
13161
|
menu.value = !menu.value;
|
13155
13162
|
}
|
13163
|
+
function onListKeydown(e) {
|
13164
|
+
if (checkPrintable(e)) {
|
13165
|
+
vTextFieldRef.value?.focus();
|
13166
|
+
}
|
13167
|
+
}
|
13156
13168
|
function onKeydown(e) {
|
13157
13169
|
if (props.readonly || form?.isReadonly.value) return;
|
13158
13170
|
const selectionStart = vTextFieldRef.value.selectionStart;
|
@@ -13217,6 +13229,11 @@
|
|
13217
13229
|
}
|
13218
13230
|
}
|
13219
13231
|
}
|
13232
|
+
function onAfterEnter() {
|
13233
|
+
if (props.eager) {
|
13234
|
+
vVirtualScrollRef.value?.calculateVisibleItems();
|
13235
|
+
}
|
13236
|
+
}
|
13220
13237
|
function onAfterLeave() {
|
13221
13238
|
if (isFocused.value) {
|
13222
13239
|
isPristine.value = true;
|
@@ -13345,6 +13362,7 @@
|
|
13345
13362
|
"openOnClick": false,
|
13346
13363
|
"closeOnContentClick": false,
|
13347
13364
|
"transition": props.transition,
|
13365
|
+
"onAfterEnter": onAfterEnter,
|
13348
13366
|
"onAfterLeave": onAfterLeave
|
13349
13367
|
}, props.menuProps), {
|
13350
13368
|
default: () => [hasList && vue.createVNode(VList, vue.mergeProps({
|
@@ -13355,11 +13373,10 @@
|
|
13355
13373
|
"onKeydown": onListKeydown,
|
13356
13374
|
"onFocusin": onFocusin,
|
13357
13375
|
"onFocusout": onFocusout,
|
13358
|
-
"onScrollPassive": onListScroll,
|
13359
13376
|
"tabindex": "-1",
|
13360
13377
|
"aria-live": "polite",
|
13361
13378
|
"color": props.itemColor ?? props.color
|
13362
|
-
}, props.listProps), {
|
13379
|
+
}, listEvents, props.listProps), {
|
13363
13380
|
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? vue.createVNode(VListItem, {
|
13364
13381
|
"title": t(props.noDataText)
|
13365
13382
|
}, null)), vue.createVNode(VVirtualScroll, {
|
@@ -16920,7 +16937,7 @@
|
|
16920
16937
|
const menu = vue.computed({
|
16921
16938
|
get: () => _menu.value,
|
16922
16939
|
set: v => {
|
16923
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
16940
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return;
|
16924
16941
|
_menu.value = v;
|
16925
16942
|
}
|
16926
16943
|
});
|
@@ -17003,10 +17020,7 @@
|
|
17003
17020
|
});
|
17004
17021
|
const menuDisabled = vue.computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
|
17005
17022
|
const listRef = vue.ref();
|
17006
|
-
const
|
17007
|
-
onListScroll,
|
17008
|
-
onListKeydown
|
17009
|
-
} = useScrolling(listRef, vTextFieldRef);
|
17023
|
+
const listEvents = useScrolling(listRef, vTextFieldRef);
|
17010
17024
|
function onClear(e) {
|
17011
17025
|
cleared = true;
|
17012
17026
|
if (props.openOnClear) {
|
@@ -17025,6 +17039,11 @@
|
|
17025
17039
|
}
|
17026
17040
|
menu.value = !menu.value;
|
17027
17041
|
}
|
17042
|
+
function onListKeydown(e) {
|
17043
|
+
if (checkPrintable(e)) {
|
17044
|
+
vTextFieldRef.value?.focus();
|
17045
|
+
}
|
17046
|
+
}
|
17028
17047
|
// eslint-disable-next-line complexity
|
17029
17048
|
function onKeydown(e) {
|
17030
17049
|
if (isComposingIgnoreKey(e) || props.readonly || form?.isReadonly.value) return;
|
@@ -17089,6 +17108,11 @@
|
|
17089
17108
|
}
|
17090
17109
|
}
|
17091
17110
|
}
|
17111
|
+
function onAfterEnter() {
|
17112
|
+
if (props.eager) {
|
17113
|
+
vVirtualScrollRef.value?.calculateVisibleItems();
|
17114
|
+
}
|
17115
|
+
}
|
17092
17116
|
function onAfterLeave() {
|
17093
17117
|
if (isFocused.value) {
|
17094
17118
|
isPristine.value = true;
|
@@ -17213,6 +17237,7 @@
|
|
17213
17237
|
"openOnClick": false,
|
17214
17238
|
"closeOnContentClick": false,
|
17215
17239
|
"transition": props.transition,
|
17240
|
+
"onAfterEnter": onAfterEnter,
|
17216
17241
|
"onAfterLeave": onAfterLeave
|
17217
17242
|
}, props.menuProps), {
|
17218
17243
|
default: () => [hasList && vue.createVNode(VList, vue.mergeProps({
|
@@ -17223,11 +17248,10 @@
|
|
17223
17248
|
"onKeydown": onListKeydown,
|
17224
17249
|
"onFocusin": onFocusin,
|
17225
17250
|
"onFocusout": onFocusout,
|
17226
|
-
"onScrollPassive": onListScroll,
|
17227
17251
|
"tabindex": "-1",
|
17228
17252
|
"aria-live": "polite",
|
17229
17253
|
"color": props.itemColor ?? props.color
|
17230
|
-
}, props.listProps), {
|
17254
|
+
}, listEvents, props.listProps), {
|
17231
17255
|
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? vue.createVNode(VListItem, {
|
17232
17256
|
"title": t(props.noDataText)
|
17233
17257
|
}, null)), vue.createVNode(VVirtualScroll, {
|
@@ -18342,6 +18366,7 @@
|
|
18342
18366
|
}
|
18343
18367
|
function provideGroupBy(options) {
|
18344
18368
|
const {
|
18369
|
+
disableSort,
|
18345
18370
|
groupBy,
|
18346
18371
|
sortBy
|
18347
18372
|
} = options;
|
@@ -18350,7 +18375,7 @@
|
|
18350
18375
|
return groupBy.value.map(val => ({
|
18351
18376
|
...val,
|
18352
18377
|
order: val.order ?? false
|
18353
|
-
})).concat(sortBy.value);
|
18378
|
+
})).concat(disableSort?.value ? [] : sortBy.value);
|
18354
18379
|
});
|
18355
18380
|
function isGroupOpen(group) {
|
18356
18381
|
return opened.value.has(group.id);
|
@@ -18859,7 +18884,7 @@
|
|
18859
18884
|
function useSortedItems(props, items, sortBy, options) {
|
18860
18885
|
const locale = useLocale();
|
18861
18886
|
const sortedItems = vue.computed(() => {
|
18862
|
-
if (!sortBy.value.length
|
18887
|
+
if (!sortBy.value.length) return items.value;
|
18863
18888
|
return sortItems(items.value, sortBy.value, locale.current.value, {
|
18864
18889
|
transform: options?.transform,
|
18865
18890
|
sortFunctions: {
|
@@ -18885,8 +18910,8 @@
|
|
18885
18910
|
const sortKey = sortByItems[i].key;
|
18886
18911
|
const sortOrder = sortByItems[i].order ?? 'asc';
|
18887
18912
|
if (sortOrder === false) continue;
|
18888
|
-
let sortA = a[1]
|
18889
|
-
let sortB = b[1]
|
18913
|
+
let sortA = getObjectValueByPath(a[1], sortKey);
|
18914
|
+
let sortB = getObjectValueByPath(b[1], sortKey);
|
18890
18915
|
let sortARaw = a[0].raw;
|
18891
18916
|
let sortBRaw = b[0].raw;
|
18892
18917
|
if (sortOrder === 'desc') {
|
@@ -20611,6 +20636,9 @@
|
|
20611
20636
|
page,
|
20612
20637
|
itemsPerPage
|
20613
20638
|
} = createPagination(props);
|
20639
|
+
const {
|
20640
|
+
disableSort
|
20641
|
+
} = vue.toRefs(props);
|
20614
20642
|
const {
|
20615
20643
|
columns,
|
20616
20644
|
headers,
|
@@ -20648,12 +20676,16 @@
|
|
20648
20676
|
toggleGroup
|
20649
20677
|
} = provideGroupBy({
|
20650
20678
|
groupBy,
|
20651
|
-
sortBy
|
20679
|
+
sortBy,
|
20680
|
+
disableSort
|
20652
20681
|
});
|
20653
20682
|
const {
|
20654
20683
|
sortedItems
|
20655
20684
|
} = useSortedItems(props, filteredItems, sortByWithGroups, {
|
20656
|
-
transform: item =>
|
20685
|
+
transform: item => ({
|
20686
|
+
...item.raw,
|
20687
|
+
...item.columns
|
20688
|
+
}),
|
20657
20689
|
sortFunctions,
|
20658
20690
|
sortRawFunctions
|
20659
20691
|
});
|
@@ -20791,6 +20823,9 @@
|
|
20791
20823
|
multiSort,
|
20792
20824
|
mustSort
|
20793
20825
|
} = createSort(props);
|
20826
|
+
const {
|
20827
|
+
disableSort
|
20828
|
+
} = vue.toRefs(props);
|
20794
20829
|
const {
|
20795
20830
|
columns,
|
20796
20831
|
headers,
|
@@ -20827,12 +20862,16 @@
|
|
20827
20862
|
toggleGroup
|
20828
20863
|
} = provideGroupBy({
|
20829
20864
|
groupBy,
|
20830
|
-
sortBy
|
20865
|
+
sortBy,
|
20866
|
+
disableSort
|
20831
20867
|
});
|
20832
20868
|
const {
|
20833
20869
|
sortedItems
|
20834
20870
|
} = useSortedItems(props, filteredItems, sortByWithGroups, {
|
20835
|
-
transform: item =>
|
20871
|
+
transform: item => ({
|
20872
|
+
...item.raw,
|
20873
|
+
...item.columns
|
20874
|
+
}),
|
20836
20875
|
sortFunctions,
|
20837
20876
|
sortRawFunctions
|
20838
20877
|
});
|
@@ -21016,6 +21055,9 @@
|
|
21016
21055
|
page,
|
21017
21056
|
itemsPerPage
|
21018
21057
|
} = createPagination(props);
|
21058
|
+
const {
|
21059
|
+
disableSort
|
21060
|
+
} = vue.toRefs(props);
|
21019
21061
|
const itemsLength = vue.computed(() => parseInt(props.itemsLength, 10));
|
21020
21062
|
const {
|
21021
21063
|
columns,
|
@@ -21043,7 +21085,8 @@
|
|
21043
21085
|
extractRows
|
21044
21086
|
} = provideGroupBy({
|
21045
21087
|
groupBy,
|
21046
|
-
sortBy
|
21088
|
+
sortBy,
|
21089
|
+
disableSort
|
21047
21090
|
});
|
21048
21091
|
const {
|
21049
21092
|
pageCount,
|
@@ -21807,6 +21850,9 @@
|
|
21807
21850
|
const _value = adapter.startOfDay(value);
|
21808
21851
|
if (model.value.length === 0) {
|
21809
21852
|
rangeStart.value = undefined;
|
21853
|
+
} else if (model.value.length === 1) {
|
21854
|
+
rangeStart.value = model.value[0];
|
21855
|
+
rangeStop.value = undefined;
|
21810
21856
|
}
|
21811
21857
|
if (!rangeStart.value) {
|
21812
21858
|
rangeStart.value = _value;
|
@@ -24491,7 +24537,7 @@
|
|
24491
24537
|
function onPaste(index, e) {
|
24492
24538
|
e.preventDefault();
|
24493
24539
|
e.stopPropagation();
|
24494
|
-
const clipboardText = e?.clipboardData?.getData('Text') ?? '';
|
24540
|
+
const clipboardText = e?.clipboardData?.getData('Text').slice(0, length.value) ?? '';
|
24495
24541
|
if (isValidNumber(clipboardText)) return;
|
24496
24542
|
model.value = clipboardText.split('');
|
24497
24543
|
inputRef.value?.[index].blur();
|
@@ -27036,8 +27082,8 @@
|
|
27036
27082
|
},
|
27037
27083
|
suffix: String,
|
27038
27084
|
modelModifiers: Object,
|
27039
|
-
...
|
27040
|
-
...
|
27085
|
+
...makeVInputProps(),
|
27086
|
+
...makeVFieldProps()
|
27041
27087
|
}, 'VTextarea');
|
27042
27088
|
const VTextarea = genericComponent()({
|
27043
27089
|
name: 'VTextarea',
|
@@ -27176,7 +27222,7 @@
|
|
27176
27222
|
}, props.class],
|
27177
27223
|
"style": props.style
|
27178
27224
|
}, rootAttrs, inputProps, {
|
27179
|
-
"centerAffix":
|
27225
|
+
"centerAffix": rows.value === 1 && !isPlainOrUnderlined.value,
|
27180
27226
|
"focused": isFocused.value
|
27181
27227
|
}), {
|
27182
27228
|
...slots,
|
@@ -27201,7 +27247,7 @@
|
|
27201
27247
|
}, fieldProps, {
|
27202
27248
|
"id": id.value,
|
27203
27249
|
"active": isActive.value || isDirty.value,
|
27204
|
-
"centerAffix":
|
27250
|
+
"centerAffix": rows.value === 1 && !isPlainOrUnderlined.value,
|
27205
27251
|
"dirty": isDirty.value || props.dirty,
|
27206
27252
|
"disabled": isDisabled.value,
|
27207
27253
|
"focused": isFocused.value,
|
@@ -28133,7 +28179,7 @@
|
|
28133
28179
|
goTo
|
28134
28180
|
};
|
28135
28181
|
}
|
28136
|
-
const version$1 = "3.6.13-3.7.0-beta.0.0-dev.2024-07-
|
28182
|
+
const version$1 = "3.6.13-3.7.0-beta.0.0-dev.2024-07-25";
|
28137
28183
|
createVuetify$1.version = version$1;
|
28138
28184
|
|
28139
28185
|
// Vue's inject() can only be used in setup
|
@@ -28158,7 +28204,7 @@
|
|
28158
28204
|
...options
|
28159
28205
|
});
|
28160
28206
|
};
|
28161
|
-
const version = "3.6.13-3.7.0-beta.0.0-dev.2024-07-
|
28207
|
+
const version = "3.6.13-3.7.0-beta.0.0-dev.2024-07-25";
|
28162
28208
|
createVuetify.version = version;
|
28163
28209
|
|
28164
28210
|
exports.blueprints = index;
|