@vuetify/nightly 3.6.13-3.7.0-beta.0.0-pr-20092.a834b18 → 3.6.14-master.2024-08-01
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/dist/json/attributes.json +127 -275
- package/dist/json/importMap-labs.json +20 -20
- package/dist/json/importMap.json +130 -130
- package/dist/json/tags.json +5 -42
- package/dist/json/web-types.json +241 -612
- package/dist/vuetify-labs.css +3861 -3156
- package/dist/vuetify-labs.d.ts +368 -697
- package/dist/vuetify-labs.esm.js +238 -240
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +238 -240
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +1162 -457
- package/dist/vuetify.d.ts +348 -611
- package/dist/vuetify.esm.js +99 -159
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +99 -159
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1038 -1037
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +5 -1
- package/lib/components/VAppBar/index.d.mts +0 -6
- package/lib/components/VAutocomplete/VAutocomplete.css +4 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +8 -15
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +42 -61
- package/lib/components/VAvatar/VAvatar.css +2 -7
- package/lib/components/VAvatar/VAvatar.mjs +2 -7
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.sass +0 -1
- package/lib/components/VAvatar/_variables.scss +0 -13
- package/lib/components/VAvatar/index.d.mts +0 -6
- package/lib/components/VBadge/VBadge.css +2 -0
- package/lib/components/VBanner/VBanner.css +12 -4
- package/lib/components/VBottomNavigation/VBottomNavigation.css +11 -3
- package/lib/components/VBottomSheet/VBottomSheet.css +2 -0
- package/lib/components/VBreadcrumbs/index.d.mts +8 -8
- package/lib/components/VBtn/VBtn.css +16 -9
- package/lib/components/VBtn/VBtn.mjs +2 -4
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +4 -4
- package/lib/components/VBtn/index.d.mts +0 -6
- package/lib/components/VBtnGroup/VBtnGroup.css +12 -4
- package/lib/components/VCard/VCard.css +9 -1
- package/lib/components/VCarousel/VCarousel.css +2 -0
- package/lib/components/VCarousel/index.d.mts +0 -9
- package/lib/components/VCheckbox/index.d.mts +6 -6
- package/lib/components/VChip/VChip.css +15 -9
- package/lib/components/VChip/VChip.sass +1 -1
- package/lib/components/VColorPicker/VColorPicker.css +2 -0
- package/lib/components/VColorPicker/VColorPicker.sass +4 -4
- package/lib/components/VColorPicker/VColorPickerPreview.sass +4 -4
- package/lib/components/VCombobox/VCombobox.css +4 -0
- package/lib/components/VCombobox/VCombobox.mjs +8 -15
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +42 -61
- package/lib/components/VDialog/VDialog.css +5 -0
- package/lib/components/VDialog/index.d.mts +3 -3
- package/lib/components/VDivider/VDivider.css +2 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.css +11 -5
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +3 -3
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +2 -7
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +0 -72
- package/lib/components/VFab/index.d.mts +0 -6
- package/lib/components/VField/VField.css +13 -1
- package/lib/components/VField/VField.sass +5 -8
- package/lib/components/VFileInput/index.d.mts +18 -18
- package/lib/components/VFooter/VFooter.css +12 -4
- package/lib/components/VFooter/VFooter.mjs +20 -14
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/index.d.mts +3 -3
- package/lib/components/VForm/index.d.mts +9 -9
- package/lib/components/VGrid/VContainer.mjs +1 -6
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VGrid.sass +1 -1
- package/lib/components/VGrid/_mixins.sass +4 -4
- package/lib/components/VGrid/index.d.mts +0 -36
- package/lib/components/VImg/VImg.css +6 -9
- package/lib/components/VImg/VImg.mjs +0 -2
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/VImg.sass +0 -9
- package/lib/components/VImg/index.d.mts +0 -9
- package/lib/components/VInput/index.d.mts +6 -6
- package/lib/components/VKbd/VKbd.css +2 -0
- package/lib/components/VList/VList.css +12 -4
- package/lib/components/VList/VListItem.css +23 -13
- package/lib/components/VList/VListItem.mjs +1 -3
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +2 -2
- package/lib/components/VList/index.d.mts +18 -19
- package/lib/components/VMain/VMain.css +2 -0
- package/lib/components/VMenu/VMenu.css +6 -0
- package/lib/components/VMenu/VMenu.mjs +8 -26
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +15 -30
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +9 -3
- package/lib/components/VOtpInput/VOtpInput.css +3 -1
- package/lib/components/VOtpInput/VOtpInput.sass +1 -2
- package/lib/components/VOverflowBtn/VOverflowBtn.sass +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +4 -5
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +2 -3
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.mts +6 -6
- package/lib/components/VRangeSlider/index.d.mts +6 -6
- package/lib/components/VSelect/VSelect.css +4 -0
- package/lib/components/VSelect/VSelect.mjs +13 -15
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +42 -61
- package/lib/components/VSelect/useScrolling.mjs +3 -3
- package/lib/components/VSelect/useScrolling.mjs.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.css +6 -4
- package/lib/components/VSelectionControl/VSelectionControl.sass +1 -1
- package/lib/components/VSheet/VSheet.css +12 -4
- package/lib/components/VSkeletonLoader/VSkeletonLoader.css +6 -4
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +9 -8
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.sass +1 -2
- package/lib/components/VSlideGroup/VSlideGroup.mjs +1 -3
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.mts +0 -6
- package/lib/components/VSlider/VSliderThumb.sass +2 -2
- package/lib/components/VSlider/index.d.mts +6 -6
- package/lib/components/VSnackbar/VSnackbar.css +2 -0
- package/lib/components/VSnackbar/VSnackbar.mjs +4 -4
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.mts +3 -3
- package/lib/components/VSpeedDial/index.d.mts +13 -28
- package/lib/components/VStepper/VStepper.css +8 -2
- package/lib/components/VStepper/VStepper.sass +2 -4
- package/lib/components/VStepper/VStepperItem.css +4 -1
- package/lib/components/VStepper/VStepperItem.sass +1 -1
- package/lib/components/VSwitch/VSwitch.css +2 -0
- package/lib/components/VSwitch/VSwitch.sass +10 -10
- package/lib/components/VSwitch/index.d.mts +6 -6
- package/lib/components/VSystemBar/VSystemBar.css +14 -8
- package/lib/components/VTable/VTable.css +8 -4
- package/lib/components/VTable/VTable.sass +2 -3
- package/lib/components/VTabs/index.d.mts +3 -21
- package/lib/components/VTextField/index.d.mts +18 -18
- package/lib/components/VTextarea/index.d.mts +18 -18
- package/lib/components/VTimeline/VTimeline.css +2 -0
- package/lib/components/VToolbar/VToolbar.css +21 -7
- package/lib/components/VToolbar/VToolbar.sass +1 -2
- package/lib/components/VTooltip/index.d.mts +3 -3
- package/lib/components/VTreeview/VTreeview.sass +9 -9
- package/lib/components/VValidation/index.d.mts +8 -9
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +0 -2
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +0 -3
- package/lib/components/index.d.mts +302 -565
- package/lib/composables/nested/nested.mjs +3 -3
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/openStrategies.mjs +2 -4
- package/lib/composables/nested/openStrategies.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +5 -5
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/validation.mjs +6 -8
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/virtual.mjs +0 -1
- package/lib/composables/virtual.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.mts +46 -46
- package/lib/labs/VDateInput/index.d.mts +6 -6
- package/lib/labs/VNumberInput/VNumberInput.mjs +60 -36
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VNumberInput/index.d.mts +23 -14
- package/lib/labs/VPicker/VPicker.css +6 -2
- package/lib/labs/VPicker/VPicker.sass +2 -3
- package/lib/labs/VSnackbarQueue/index.d.mts +3 -3
- package/lib/labs/VStepperVertical/index.d.mts +0 -36
- package/lib/labs/VTreeview/VTreeview.mjs +5 -7
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewChildren.mjs +10 -33
- package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.css +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.mjs +74 -14
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.sass +5 -2
- package/lib/labs/VTreeview/index.d.mts +60 -77
- package/lib/labs/components.d.mts +92 -136
- package/lib/styles/generic/_colors.scss +9 -3
- package/lib/styles/main.css +520 -0
- package/lib/styles/tools/_absolute.sass +8 -7
- package/lib/styles/tools/_border.sass +4 -3
- package/lib/styles/tools/_display.sass +8 -7
- package/lib/styles/tools/_elevation.sass +4 -2
- package/lib/styles/tools/_index.sass +0 -1
- package/lib/styles/tools/_radius.sass +6 -5
- package/lib/styles/tools/_rounded.sass +2 -1
- package/lib/styles/tools/_theme.sass +3 -2
- package/lib/styles/tools/_typography.sass +6 -5
- package/lib/styles/tools/_utilities.sass +5 -5
- package/lib/styles/utilities/_index.sass +7 -7
- package/lib/util/helpers.mjs +0 -5
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +1 -1
- package/lib/styles/tools/_sheet.sass +0 -14
package/dist/vuetify-labs.esm.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.6.
|
2
|
+
* Vuetify v3.6.14-master.2024-08-01
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -575,11 +575,6 @@ function templateRef() {
|
|
575
575
|
});
|
576
576
|
return fn;
|
577
577
|
}
|
578
|
-
function checkPrintable(e) {
|
579
|
-
const isPrintableChar = e.key.length === 1;
|
580
|
-
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
581
|
-
return isPrintableChar && noModifier;
|
582
|
-
}
|
583
578
|
|
584
579
|
// Utilities
|
585
580
|
const block = ['top', 'bottom'];
|
@@ -3253,7 +3248,6 @@ const Intersect = {
|
|
3253
3248
|
// not intended for public use, this is passed in by vuetify-loader
|
3254
3249
|
|
3255
3250
|
const makeVImgProps = propsFactory({
|
3256
|
-
absolute: Boolean,
|
3257
3251
|
alt: String,
|
3258
3252
|
cover: Boolean,
|
3259
3253
|
color: String,
|
@@ -3510,7 +3504,6 @@ const VImg = genericComponent()({
|
|
3510
3504
|
const responsiveProps = VResponsive.filterProps(props);
|
3511
3505
|
return withDirectives(createVNode(VResponsive, mergeProps({
|
3512
3506
|
"class": ['v-img', {
|
3513
|
-
'v-img--absolute': props.absolute,
|
3514
3507
|
'v-img--booting': !isBooted.value
|
3515
3508
|
}, backgroundColorClasses.value, roundedClasses.value, props.class],
|
3516
3509
|
"style": [{
|
@@ -5518,7 +5511,6 @@ const makeVBtnProps = propsFactory({
|
|
5518
5511
|
type: Boolean,
|
5519
5512
|
default: undefined
|
5520
5513
|
},
|
5521
|
-
activeColor: String,
|
5522
5514
|
baseColor: String,
|
5523
5515
|
symbol: {
|
5524
5516
|
type: null,
|
@@ -5610,11 +5602,10 @@ const VBtn = genericComponent()({
|
|
5610
5602
|
}
|
5611
5603
|
return group?.isSelected.value;
|
5612
5604
|
});
|
5613
|
-
const color = computed(() => isActive.value ? props.activeColor ?? props.color : props.color);
|
5614
5605
|
const variantProps = computed(() => {
|
5615
5606
|
const showColor = group?.isSelected.value && (!link.isLink.value || link.isActive?.value) || !group || link.isActive?.value;
|
5616
5607
|
return {
|
5617
|
-
color: showColor ? color
|
5608
|
+
color: showColor ? props.color ?? props.baseColor : props.baseColor,
|
5618
5609
|
variant: props.variant
|
5619
5610
|
};
|
5620
5611
|
});
|
@@ -5716,7 +5707,7 @@ const VBtn = genericComponent()({
|
|
5716
5707
|
"indeterminate": true,
|
5717
5708
|
"width": "2"
|
5718
5709
|
}, null)])]
|
5719
|
-
}), [[Ripple, !isDisabled.value &&
|
5710
|
+
}), [[Ripple, !isDisabled.value && props.ripple, '', {
|
5720
5711
|
center: !!props.icon
|
5721
5712
|
}]]);
|
5722
5713
|
});
|
@@ -5955,7 +5946,6 @@ const makeVAvatarProps = propsFactory({
|
|
5955
5946
|
icon: IconValue,
|
5956
5947
|
image: String,
|
5957
5948
|
text: String,
|
5958
|
-
...makeBorderProps(),
|
5959
5949
|
...makeComponentProps(),
|
5960
5950
|
...makeDensityProps(),
|
5961
5951
|
...makeRoundedProps(),
|
@@ -5976,9 +5966,6 @@ const VAvatar = genericComponent()({
|
|
5976
5966
|
const {
|
5977
5967
|
themeClasses
|
5978
5968
|
} = provideTheme(props);
|
5979
|
-
const {
|
5980
|
-
borderClasses
|
5981
|
-
} = useBorder(props);
|
5982
5969
|
const {
|
5983
5970
|
colorClasses,
|
5984
5971
|
colorStyles,
|
@@ -5998,7 +5985,7 @@ const VAvatar = genericComponent()({
|
|
5998
5985
|
"class": ['v-avatar', {
|
5999
5986
|
'v-avatar--start': props.start,
|
6000
5987
|
'v-avatar--end': props.end
|
6001
|
-
}, themeClasses.value,
|
5988
|
+
}, themeClasses.value, colorClasses.value, densityClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, props.class],
|
6002
5989
|
"style": [colorStyles.value, sizeStyles.value, props.style]
|
6003
5990
|
}, {
|
6004
5991
|
default: () => [!slots.default ? props.image ? createVNode(VImg, {
|
@@ -6014,7 +6001,7 @@ const VAvatar = genericComponent()({
|
|
6014
6001
|
"defaults": {
|
6015
6002
|
VImg: {
|
6016
6003
|
cover: true,
|
6017
|
-
|
6004
|
+
src: props.image
|
6018
6005
|
},
|
6019
6006
|
VIcon: {
|
6020
6007
|
icon: props.icon
|
@@ -6698,14 +6685,12 @@ function useValidation(props) {
|
|
6698
6685
|
const validateOn = computed(() => {
|
6699
6686
|
let value = (props.validateOn ?? form?.validateOn.value) || 'input';
|
6700
6687
|
if (value === 'lazy') value = 'input lazy';
|
6701
|
-
if (value === 'eager') value = 'input eager';
|
6702
6688
|
const set = new Set(value?.split(' ') ?? []);
|
6703
6689
|
return {
|
6690
|
+
blur: set.has('blur') || set.has('input'),
|
6704
6691
|
input: set.has('input'),
|
6705
|
-
|
6706
|
-
|
6707
|
-
lazy: set.has('lazy'),
|
6708
|
-
eager: set.has('eager')
|
6692
|
+
submit: set.has('submit'),
|
6693
|
+
lazy: set.has('lazy')
|
6709
6694
|
};
|
6710
6695
|
});
|
6711
6696
|
const isValid = computed(() => {
|
@@ -6742,11 +6727,11 @@ function useValidation(props) {
|
|
6742
6727
|
});
|
6743
6728
|
onMounted(async () => {
|
6744
6729
|
if (!validateOn.value.lazy) {
|
6745
|
-
await validate(
|
6730
|
+
await validate(true);
|
6746
6731
|
}
|
6747
6732
|
form?.update(uid.value, isValid.value, errorMessages.value);
|
6748
6733
|
});
|
6749
|
-
useToggleScope(() => validateOn.value.input
|
6734
|
+
useToggleScope(() => validateOn.value.input, () => {
|
6750
6735
|
watch(validationModel, () => {
|
6751
6736
|
if (validationModel.value != null) {
|
6752
6737
|
validate();
|
@@ -6774,7 +6759,7 @@ function useValidation(props) {
|
|
6774
6759
|
async function resetValidation() {
|
6775
6760
|
isPristine.value = true;
|
6776
6761
|
if (!validateOn.value.lazy) {
|
6777
|
-
await validate(
|
6762
|
+
await validate(true);
|
6778
6763
|
} else {
|
6779
6764
|
internalErrorMessages.value = [];
|
6780
6765
|
}
|
@@ -7714,9 +7699,7 @@ const VSlideGroup = genericComponent()({
|
|
7714
7699
|
selected: group.selected,
|
7715
7700
|
scrollTo,
|
7716
7701
|
scrollOffset,
|
7717
|
-
focus
|
7718
|
-
hasPrev,
|
7719
|
-
hasNext
|
7702
|
+
focus
|
7720
7703
|
};
|
7721
7704
|
}
|
7722
7705
|
});
|
@@ -8186,7 +8169,6 @@ const leafSingleActiveStrategy = mandatory => {
|
|
8186
8169
|
return strategy;
|
8187
8170
|
};
|
8188
8171
|
|
8189
|
-
// Utilities
|
8190
8172
|
const singleOpenStrategy = {
|
8191
8173
|
open: _ref => {
|
8192
8174
|
let {
|
@@ -8220,11 +8202,11 @@ const multipleOpenStrategy = {
|
|
8220
8202
|
parents
|
8221
8203
|
} = _ref2;
|
8222
8204
|
if (value) {
|
8223
|
-
let parent =
|
8205
|
+
let parent = parents.get(id);
|
8224
8206
|
opened.add(id);
|
8225
8207
|
while (parent != null && parent !== id) {
|
8226
8208
|
opened.add(parent);
|
8227
|
-
parent =
|
8209
|
+
parent = parents.get(parent);
|
8228
8210
|
}
|
8229
8211
|
return opened;
|
8230
8212
|
} else {
|
@@ -8395,18 +8377,18 @@ const classicSelectStrategy = mandatory => {
|
|
8395
8377
|
const items = [id];
|
8396
8378
|
while (items.length) {
|
8397
8379
|
const item = items.shift();
|
8398
|
-
selected.set(
|
8380
|
+
selected.set(item, value ? 'on' : 'off');
|
8399
8381
|
if (children.has(item)) {
|
8400
8382
|
items.push(...children.get(item));
|
8401
8383
|
}
|
8402
8384
|
}
|
8403
|
-
let parent =
|
8385
|
+
let parent = parents.get(id);
|
8404
8386
|
while (parent) {
|
8405
8387
|
const childrenIds = children.get(parent);
|
8406
|
-
const everySelected = childrenIds.every(cid => selected.get(
|
8407
|
-
const noneSelected = childrenIds.every(cid => !selected.has(
|
8388
|
+
const everySelected = childrenIds.every(cid => selected.get(cid) === 'on');
|
8389
|
+
const noneSelected = childrenIds.every(cid => !selected.has(cid) || selected.get(cid) === 'off');
|
8408
8390
|
selected.set(parent, everySelected ? 'on' : noneSelected ? 'off' : 'indeterminate');
|
8409
|
-
parent =
|
8391
|
+
parent = parents.get(parent);
|
8410
8392
|
}
|
8411
8393
|
|
8412
8394
|
// If mandatory and planned deselect results in no selected
|
@@ -8484,7 +8466,7 @@ const useNested = props => {
|
|
8484
8466
|
let isUnmounted = false;
|
8485
8467
|
const children = ref(new Map());
|
8486
8468
|
const parents = ref(new Map());
|
8487
|
-
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(
|
8469
|
+
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(v), v => [...v.values()]);
|
8488
8470
|
const activeStrategy = computed(() => {
|
8489
8471
|
if (typeof props.activeStrategy === 'object') return props.activeStrategy;
|
8490
8472
|
if (typeof props.activeStrategy === 'function') return props.activeStrategy(props.mandatory);
|
@@ -8657,9 +8639,9 @@ const useNestedItem = (id, isGroup) => {
|
|
8657
8639
|
const item = {
|
8658
8640
|
...parent,
|
8659
8641
|
id: computedId,
|
8660
|
-
open: (open, e) => parent.root.open(
|
8642
|
+
open: (open, e) => parent.root.open(computedId.value, open, e),
|
8661
8643
|
openOnSelect: (open, e) => parent.root.openOnSelect(computedId.value, open, e),
|
8662
|
-
isOpen: computed(() => parent.root.opened.value.has(
|
8644
|
+
isOpen: computed(() => parent.root.opened.value.has(computedId.value)),
|
8663
8645
|
parent: computed(() => parent.root.parents.value.get(computedId.value)),
|
8664
8646
|
activate: (activated, e) => parent.root.activate(computedId.value, activated, e),
|
8665
8647
|
isActivated: computed(() => parent.root.activated.value.has(toRaw(computedId.value))),
|
@@ -8883,7 +8865,6 @@ const VListItem = genericComponent()({
|
|
8883
8865
|
activate,
|
8884
8866
|
isActivated,
|
8885
8867
|
select,
|
8886
|
-
isOpen,
|
8887
8868
|
isSelected,
|
8888
8869
|
isIndeterminate,
|
8889
8870
|
isGroupActivator,
|
@@ -8938,7 +8919,6 @@ const VListItem = genericComponent()({
|
|
8938
8919
|
const slotProps = computed(() => ({
|
8939
8920
|
isActive: isActive.value,
|
8940
8921
|
select,
|
8941
|
-
isOpen: isOpen.value,
|
8942
8922
|
isSelected: isSelected.value,
|
8943
8923
|
isIndeterminate: isIndeterminate.value
|
8944
8924
|
}));
|
@@ -8958,7 +8938,7 @@ const VListItem = genericComponent()({
|
|
8958
8938
|
function onKeyDown(e) {
|
8959
8939
|
if (e.key === 'Enter' || e.key === ' ') {
|
8960
8940
|
e.preventDefault();
|
8961
|
-
|
8941
|
+
onClick(e);
|
8962
8942
|
}
|
8963
8943
|
}
|
8964
8944
|
useRender(() => {
|
@@ -10281,8 +10261,7 @@ const makeActivatorProps = propsFactory({
|
|
10281
10261
|
function useActivator(props, _ref) {
|
10282
10262
|
let {
|
10283
10263
|
isActive,
|
10284
|
-
isTop
|
10285
|
-
contentEl
|
10264
|
+
isTop
|
10286
10265
|
} = _ref;
|
10287
10266
|
const vm = getCurrentInstance('useActivator');
|
10288
10267
|
const activatorEl = ref();
|
@@ -10399,7 +10378,7 @@ function useActivator(props, _ref) {
|
|
10399
10378
|
return events;
|
10400
10379
|
});
|
10401
10380
|
watch(isTop, val => {
|
10402
|
-
if (val && (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused) || openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered))
|
10381
|
+
if (val && (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused) || openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered))) {
|
10403
10382
|
isActive.value = false;
|
10404
10383
|
}
|
10405
10384
|
});
|
@@ -10805,9 +10784,6 @@ const VOverlay = genericComponent()({
|
|
10805
10784
|
attrs,
|
10806
10785
|
emit
|
10807
10786
|
} = _ref;
|
10808
|
-
const root = ref();
|
10809
|
-
const scrimEl = ref();
|
10810
|
-
const contentEl = ref();
|
10811
10787
|
const model = useProxiedModel(props, 'modelValue');
|
10812
10788
|
const isActive = computed({
|
10813
10789
|
get: () => model.value,
|
@@ -10845,8 +10821,7 @@ const VOverlay = genericComponent()({
|
|
10845
10821
|
scrimEvents
|
10846
10822
|
} = useActivator(props, {
|
10847
10823
|
isActive,
|
10848
|
-
isTop: localTop
|
10849
|
-
contentEl
|
10824
|
+
isTop: localTop
|
10850
10825
|
});
|
10851
10826
|
const {
|
10852
10827
|
teleportTarget
|
@@ -10867,6 +10842,9 @@ const VOverlay = genericComponent()({
|
|
10867
10842
|
watch(() => props.disabled, v => {
|
10868
10843
|
if (v) isActive.value = false;
|
10869
10844
|
});
|
10845
|
+
const root = ref();
|
10846
|
+
const scrimEl = ref();
|
10847
|
+
const contentEl = ref();
|
10870
10848
|
const {
|
10871
10849
|
contentStyles,
|
10872
10850
|
updateLocation
|
@@ -11117,12 +11095,10 @@ const makeVMenuProps = propsFactory({
|
|
11117
11095
|
// TODO
|
11118
11096
|
// disableKeys: Boolean,
|
11119
11097
|
id: String,
|
11120
|
-
submenu: Boolean,
|
11121
11098
|
...omit(makeVOverlayProps({
|
11122
11099
|
closeDelay: 250,
|
11123
11100
|
closeOnContentClick: true,
|
11124
11101
|
locationStrategy: 'connected',
|
11125
|
-
location: undefined,
|
11126
11102
|
openDelay: 300,
|
11127
11103
|
scrim: false,
|
11128
11104
|
scrollStrategy: 'reposition',
|
@@ -11145,32 +11121,27 @@ const VMenu = genericComponent()({
|
|
11145
11121
|
const {
|
11146
11122
|
scopeId
|
11147
11123
|
} = useScopeId();
|
11148
|
-
const {
|
11149
|
-
isRtl
|
11150
|
-
} = useRtl();
|
11151
11124
|
const uid = getUid();
|
11152
11125
|
const id = computed(() => props.id || `v-menu-${uid}`);
|
11153
11126
|
const overlay = ref();
|
11154
11127
|
const parent = inject$1(VMenuSymbol, null);
|
11155
|
-
const openChildren = shallowRef(
|
11128
|
+
const openChildren = shallowRef(0);
|
11156
11129
|
provide(VMenuSymbol, {
|
11157
11130
|
register() {
|
11158
|
-
openChildren.value
|
11131
|
+
++openChildren.value;
|
11159
11132
|
},
|
11160
11133
|
unregister() {
|
11161
|
-
openChildren.value
|
11134
|
+
--openChildren.value;
|
11162
11135
|
},
|
11163
11136
|
closeParents(e) {
|
11164
11137
|
setTimeout(() => {
|
11165
|
-
if (!openChildren.value
|
11138
|
+
if (!openChildren.value && !props.persistent && (e == null || overlay.value?.contentEl && !isClickInsideElement(e, overlay.value.contentEl))) {
|
11166
11139
|
isActive.value = false;
|
11167
11140
|
parent?.closeParents();
|
11168
11141
|
}
|
11169
11142
|
}, 40);
|
11170
11143
|
}
|
11171
11144
|
});
|
11172
|
-
onBeforeUnmount(() => parent?.unregister());
|
11173
|
-
onDeactivated(() => isActive.value = false);
|
11174
11145
|
async function onFocusIn(e) {
|
11175
11146
|
const before = e.relatedTarget;
|
11176
11147
|
const after = e.target;
|
@@ -11210,9 +11181,9 @@ const VMenu = genericComponent()({
|
|
11210
11181
|
isActive.value = false;
|
11211
11182
|
overlay.value?.activatorEl?.focus();
|
11212
11183
|
}
|
11213
|
-
} else if (
|
11184
|
+
} else if (['Enter', ' '].includes(e.key) && props.closeOnContentClick) {
|
11214
11185
|
isActive.value = false;
|
11215
|
-
|
11186
|
+
parent?.closeParents();
|
11216
11187
|
}
|
11217
11188
|
}
|
11218
11189
|
function onActivatorKeydown(e) {
|
@@ -11221,21 +11192,12 @@ const VMenu = genericComponent()({
|
|
11221
11192
|
if (el && isActive.value) {
|
11222
11193
|
if (e.key === 'ArrowDown') {
|
11223
11194
|
e.preventDefault();
|
11224
|
-
e.stopImmediatePropagation();
|
11225
11195
|
focusChild(el, 'next');
|
11226
11196
|
} else if (e.key === 'ArrowUp') {
|
11227
11197
|
e.preventDefault();
|
11228
|
-
e.stopImmediatePropagation();
|
11229
11198
|
focusChild(el, 'prev');
|
11230
|
-
} else if (props.submenu) {
|
11231
|
-
if (e.key === (isRtl.value ? 'ArrowRight' : 'ArrowLeft')) {
|
11232
|
-
isActive.value = false;
|
11233
|
-
} else if (e.key === (isRtl.value ? 'ArrowLeft' : 'ArrowRight')) {
|
11234
|
-
e.preventDefault();
|
11235
|
-
focusChild(el, 'first');
|
11236
|
-
}
|
11237
11199
|
}
|
11238
|
-
} else if (
|
11200
|
+
} else if (['ArrowDown', 'ArrowUp'].includes(e.key)) {
|
11239
11201
|
isActive.value = true;
|
11240
11202
|
e.preventDefault();
|
11241
11203
|
setTimeout(() => setTimeout(() => onActivatorKeydown(e)));
|
@@ -11259,7 +11221,6 @@ const VMenu = genericComponent()({
|
|
11259
11221
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
11260
11222
|
"absolute": true,
|
11261
11223
|
"activatorProps": activatorProps.value,
|
11262
|
-
"location": props.location ?? (props.submenu ? 'end' : 'bottom'),
|
11263
11224
|
"onClick:outside": onClickOutside,
|
11264
11225
|
"onKeydown": onKeydown
|
11265
11226
|
}, scopeId), {
|
@@ -12092,7 +12053,6 @@ function useVirtual(props, items) {
|
|
12092
12053
|
deep: true
|
12093
12054
|
});
|
12094
12055
|
return {
|
12095
|
-
calculateVisibleItems,
|
12096
12056
|
containerRef,
|
12097
12057
|
markerRef,
|
12098
12058
|
computedItems,
|
@@ -12156,7 +12116,6 @@ const VVirtualScroll = genericComponent()({
|
|
12156
12116
|
dimensionStyles
|
12157
12117
|
} = useDimension(props);
|
12158
12118
|
const {
|
12159
|
-
calculateVisibleItems,
|
12160
12119
|
containerRef,
|
12161
12120
|
markerRef,
|
12162
12121
|
handleScroll,
|
@@ -12228,7 +12187,6 @@ const VVirtualScroll = genericComponent()({
|
|
12228
12187
|
}, [children])]);
|
12229
12188
|
});
|
12230
12189
|
return {
|
12231
|
-
calculateVisibleItems,
|
12232
12190
|
scrollToIndex
|
12233
12191
|
};
|
12234
12192
|
}
|
@@ -12297,9 +12255,9 @@ function useScrolling(listRef, textFieldRef) {
|
|
12297
12255
|
}
|
12298
12256
|
}
|
12299
12257
|
return {
|
12300
|
-
|
12301
|
-
|
12302
|
-
};
|
12258
|
+
onListScroll,
|
12259
|
+
onListKeydown
|
12260
|
+
};
|
12303
12261
|
}
|
12304
12262
|
|
12305
12263
|
// Types
|
@@ -12374,7 +12332,7 @@ const VSelect = genericComponent()({
|
|
12374
12332
|
const menu = computed({
|
12375
12333
|
get: () => _menu.value,
|
12376
12334
|
set: v => {
|
12377
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren
|
12335
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
12378
12336
|
_menu.value = v;
|
12379
12337
|
}
|
12380
12338
|
});
|
@@ -12413,7 +12371,10 @@ const VSelect = genericComponent()({
|
|
12413
12371
|
};
|
12414
12372
|
});
|
12415
12373
|
const listRef = ref();
|
12416
|
-
const
|
12374
|
+
const {
|
12375
|
+
onListScroll,
|
12376
|
+
onListKeydown
|
12377
|
+
} = useScrolling(listRef, vTextFieldRef);
|
12417
12378
|
function onClear(e) {
|
12418
12379
|
if (props.openOnClear) {
|
12419
12380
|
menu.value = true;
|
@@ -12423,11 +12384,6 @@ const VSelect = genericComponent()({
|
|
12423
12384
|
if (menuDisabled.value) return;
|
12424
12385
|
menu.value = !menu.value;
|
12425
12386
|
}
|
12426
|
-
function onListKeydown(e) {
|
12427
|
-
if (checkPrintable(e)) {
|
12428
|
-
onKeydown(e);
|
12429
|
-
}
|
12430
|
-
}
|
12431
12387
|
function onKeydown(e) {
|
12432
12388
|
if (!e.key || props.readonly || form?.isReadonly.value) return;
|
12433
12389
|
if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {
|
@@ -12448,6 +12404,11 @@ const VSelect = genericComponent()({
|
|
12448
12404
|
// html select hotkeys
|
12449
12405
|
const KEYBOARD_LOOKUP_THRESHOLD = 1000; // milliseconds
|
12450
12406
|
|
12407
|
+
function checkPrintable(e) {
|
12408
|
+
const isPrintableChar = e.key.length === 1;
|
12409
|
+
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
12410
|
+
return isPrintableChar && noModifier;
|
12411
|
+
}
|
12451
12412
|
if (props.multiple || !checkPrintable(e)) return;
|
12452
12413
|
const now = performance.now();
|
12453
12414
|
if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {
|
@@ -12492,11 +12453,6 @@ const VSelect = genericComponent()({
|
|
12492
12453
|
menu.value = false;
|
12493
12454
|
}
|
12494
12455
|
}
|
12495
|
-
function onAfterEnter() {
|
12496
|
-
if (props.eager) {
|
12497
|
-
vVirtualScrollRef.value?.calculateVisibleItems();
|
12498
|
-
}
|
12499
|
-
}
|
12500
12456
|
function onAfterLeave() {
|
12501
12457
|
if (isFocused.value) {
|
12502
12458
|
vTextFieldRef.value?.focus();
|
@@ -12575,7 +12531,6 @@ const VSelect = genericComponent()({
|
|
12575
12531
|
"openOnClick": false,
|
12576
12532
|
"closeOnContentClick": false,
|
12577
12533
|
"transition": props.transition,
|
12578
|
-
"onAfterEnter": onAfterEnter,
|
12579
12534
|
"onAfterLeave": onAfterLeave
|
12580
12535
|
}, computedMenuProps.value), {
|
12581
12536
|
default: () => [hasList && createVNode(VList, mergeProps({
|
@@ -12585,10 +12540,11 @@ const VSelect = genericComponent()({
|
|
12585
12540
|
"onMousedown": e => e.preventDefault(),
|
12586
12541
|
"onKeydown": onListKeydown,
|
12587
12542
|
"onFocusin": onFocusin,
|
12543
|
+
"onScrollPassive": onListScroll,
|
12588
12544
|
"tabindex": "-1",
|
12589
12545
|
"aria-live": "polite",
|
12590
12546
|
"color": props.itemColor ?? props.color
|
12591
|
-
},
|
12547
|
+
}, props.listProps), {
|
12592
12548
|
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
|
12593
12549
|
"title": t(props.noDataText)
|
12594
12550
|
}, null)), createVNode(VVirtualScroll, {
|
@@ -12883,7 +12839,7 @@ const VAutocomplete = genericComponent()({
|
|
12883
12839
|
const menu = computed({
|
12884
12840
|
get: () => _menu.value,
|
12885
12841
|
set: v => {
|
12886
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren
|
12842
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
12887
12843
|
_menu.value = v;
|
12888
12844
|
}
|
12889
12845
|
});
|
@@ -12927,7 +12883,10 @@ const VAutocomplete = genericComponent()({
|
|
12927
12883
|
});
|
12928
12884
|
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
|
12929
12885
|
const listRef = ref();
|
12930
|
-
const
|
12886
|
+
const {
|
12887
|
+
onListScroll,
|
12888
|
+
onListKeydown
|
12889
|
+
} = useScrolling(listRef, vTextFieldRef);
|
12931
12890
|
function onClear(e) {
|
12932
12891
|
if (props.openOnClear) {
|
12933
12892
|
menu.value = true;
|
@@ -12946,11 +12905,6 @@ const VAutocomplete = genericComponent()({
|
|
12946
12905
|
}
|
12947
12906
|
menu.value = !menu.value;
|
12948
12907
|
}
|
12949
|
-
function onListKeydown(e) {
|
12950
|
-
if (checkPrintable(e)) {
|
12951
|
-
vTextFieldRef.value?.focus();
|
12952
|
-
}
|
12953
|
-
}
|
12954
12908
|
function onKeydown(e) {
|
12955
12909
|
if (props.readonly || form?.isReadonly.value) return;
|
12956
12910
|
const selectionStart = vTextFieldRef.value.selectionStart;
|
@@ -13015,11 +12969,6 @@ const VAutocomplete = genericComponent()({
|
|
13015
12969
|
}
|
13016
12970
|
}
|
13017
12971
|
}
|
13018
|
-
function onAfterEnter() {
|
13019
|
-
if (props.eager) {
|
13020
|
-
vVirtualScrollRef.value?.calculateVisibleItems();
|
13021
|
-
}
|
13022
|
-
}
|
13023
12972
|
function onAfterLeave() {
|
13024
12973
|
if (isFocused.value) {
|
13025
12974
|
isPristine.value = true;
|
@@ -13148,7 +13097,6 @@ const VAutocomplete = genericComponent()({
|
|
13148
13097
|
"openOnClick": false,
|
13149
13098
|
"closeOnContentClick": false,
|
13150
13099
|
"transition": props.transition,
|
13151
|
-
"onAfterEnter": onAfterEnter,
|
13152
13100
|
"onAfterLeave": onAfterLeave
|
13153
13101
|
}, props.menuProps), {
|
13154
13102
|
default: () => [hasList && createVNode(VList, mergeProps({
|
@@ -13159,10 +13107,11 @@ const VAutocomplete = genericComponent()({
|
|
13159
13107
|
"onKeydown": onListKeydown,
|
13160
13108
|
"onFocusin": onFocusin,
|
13161
13109
|
"onFocusout": onFocusout,
|
13110
|
+
"onScrollPassive": onListScroll,
|
13162
13111
|
"tabindex": "-1",
|
13163
13112
|
"aria-live": "polite",
|
13164
13113
|
"color": props.itemColor ?? props.color
|
13165
|
-
},
|
13114
|
+
}, props.listProps), {
|
13166
13115
|
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
|
13167
13116
|
"title": t(props.noDataText)
|
13168
13117
|
}, null)), createVNode(VVirtualScroll, {
|
@@ -16723,7 +16672,7 @@ const VCombobox = genericComponent()({
|
|
16723
16672
|
const menu = computed({
|
16724
16673
|
get: () => _menu.value,
|
16725
16674
|
set: v => {
|
16726
|
-
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren
|
16675
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
16727
16676
|
_menu.value = v;
|
16728
16677
|
}
|
16729
16678
|
});
|
@@ -16806,7 +16755,10 @@ const VCombobox = genericComponent()({
|
|
16806
16755
|
});
|
16807
16756
|
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || props.readonly || form?.isReadonly.value);
|
16808
16757
|
const listRef = ref();
|
16809
|
-
const
|
16758
|
+
const {
|
16759
|
+
onListScroll,
|
16760
|
+
onListKeydown
|
16761
|
+
} = useScrolling(listRef, vTextFieldRef);
|
16810
16762
|
function onClear(e) {
|
16811
16763
|
cleared = true;
|
16812
16764
|
if (props.openOnClear) {
|
@@ -16825,11 +16777,6 @@ const VCombobox = genericComponent()({
|
|
16825
16777
|
}
|
16826
16778
|
menu.value = !menu.value;
|
16827
16779
|
}
|
16828
|
-
function onListKeydown(e) {
|
16829
|
-
if (checkPrintable(e)) {
|
16830
|
-
vTextFieldRef.value?.focus();
|
16831
|
-
}
|
16832
|
-
}
|
16833
16780
|
// eslint-disable-next-line complexity
|
16834
16781
|
function onKeydown(e) {
|
16835
16782
|
if (isComposingIgnoreKey(e) || props.readonly || form?.isReadonly.value) return;
|
@@ -16894,11 +16841,6 @@ const VCombobox = genericComponent()({
|
|
16894
16841
|
}
|
16895
16842
|
}
|
16896
16843
|
}
|
16897
|
-
function onAfterEnter() {
|
16898
|
-
if (props.eager) {
|
16899
|
-
vVirtualScrollRef.value?.calculateVisibleItems();
|
16900
|
-
}
|
16901
|
-
}
|
16902
16844
|
function onAfterLeave() {
|
16903
16845
|
if (isFocused.value) {
|
16904
16846
|
isPristine.value = true;
|
@@ -17023,7 +16965,6 @@ const VCombobox = genericComponent()({
|
|
17023
16965
|
"openOnClick": false,
|
17024
16966
|
"closeOnContentClick": false,
|
17025
16967
|
"transition": props.transition,
|
17026
|
-
"onAfterEnter": onAfterEnter,
|
17027
16968
|
"onAfterLeave": onAfterLeave
|
17028
16969
|
}, props.menuProps), {
|
17029
16970
|
default: () => [hasList && createVNode(VList, mergeProps({
|
@@ -17034,10 +16975,11 @@ const VCombobox = genericComponent()({
|
|
17034
16975
|
"onKeydown": onListKeydown,
|
17035
16976
|
"onFocusin": onFocusin,
|
17036
16977
|
"onFocusout": onFocusout,
|
16978
|
+
"onScrollPassive": onListScroll,
|
17037
16979
|
"tabindex": "-1",
|
17038
16980
|
"aria-live": "polite",
|
17039
16981
|
"color": props.itemColor ?? props.color
|
17040
|
-
},
|
16982
|
+
}, props.listProps), {
|
17041
16983
|
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
|
17042
16984
|
"title": t(props.noDataText)
|
17043
16985
|
}, null)), createVNode(VVirtualScroll, {
|
@@ -20981,7 +20923,6 @@ const makeVContainerProps = propsFactory({
|
|
20981
20923
|
default: false
|
20982
20924
|
},
|
20983
20925
|
...makeComponentProps(),
|
20984
|
-
...makeDimensionProps(),
|
20985
20926
|
...makeTagProps()
|
20986
20927
|
}, 'VContainer');
|
20987
20928
|
const VContainer = genericComponent()({
|
@@ -20994,14 +20935,11 @@ const VContainer = genericComponent()({
|
|
20994
20935
|
const {
|
20995
20936
|
rtlClasses
|
20996
20937
|
} = useRtl();
|
20997
|
-
const {
|
20998
|
-
dimensionStyles
|
20999
|
-
} = useDimension(props);
|
21000
20938
|
useRender(() => createVNode(props.tag, {
|
21001
20939
|
"class": ['v-container', {
|
21002
20940
|
'v-container--fluid': props.fluid
|
21003
20941
|
}, rtlClasses.value, props.class],
|
21004
|
-
"style":
|
20942
|
+
"style": props.style
|
21005
20943
|
}, slots));
|
21006
20944
|
return {};
|
21007
20945
|
}
|
@@ -22423,8 +22361,7 @@ const makeVExpansionPanelTitleProps = propsFactory({
|
|
22423
22361
|
default: false
|
22424
22362
|
},
|
22425
22363
|
readonly: Boolean,
|
22426
|
-
...makeComponentProps()
|
22427
|
-
...makeDimensionProps()
|
22364
|
+
...makeComponentProps()
|
22428
22365
|
}, 'VExpansionPanelTitle');
|
22429
22366
|
const VExpansionPanelTitle = genericComponent()({
|
22430
22367
|
name: 'VExpansionPanelTitle',
|
@@ -22442,9 +22379,6 @@ const VExpansionPanelTitle = genericComponent()({
|
|
22442
22379
|
backgroundColorClasses,
|
22443
22380
|
backgroundColorStyles
|
22444
22381
|
} = useBackgroundColor(props, 'color');
|
22445
|
-
const {
|
22446
|
-
dimensionStyles
|
22447
|
-
} = useDimension(props);
|
22448
22382
|
const slotProps = computed(() => ({
|
22449
22383
|
collapseIcon: props.collapseIcon,
|
22450
22384
|
disabled: expansionPanel.disabled.value,
|
@@ -22459,7 +22393,7 @@ const VExpansionPanelTitle = genericComponent()({
|
|
22459
22393
|
'v-expansion-panel-title--focusable': props.focusable,
|
22460
22394
|
'v-expansion-panel-title--static': props.static
|
22461
22395
|
}, backgroundColorClasses.value, props.class],
|
22462
|
-
"style": [backgroundColorStyles.value,
|
22396
|
+
"style": [backgroundColorStyles.value, props.style],
|
22463
22397
|
"type": "button",
|
22464
22398
|
"tabindex": expansionPanel.disabled.value ? -1 : undefined,
|
22465
22399
|
"disabled": expansionPanel.disabled.value,
|
@@ -22981,6 +22915,8 @@ const VFooter = genericComponent()({
|
|
22981
22915
|
let {
|
22982
22916
|
slots
|
22983
22917
|
} = _ref;
|
22918
|
+
const layoutItemStyles = ref();
|
22919
|
+
const layoutIsReady = shallowRef();
|
22984
22920
|
const {
|
22985
22921
|
themeClasses
|
22986
22922
|
} = provideTheme(props);
|
@@ -23005,17 +22941,20 @@ const VFooter = genericComponent()({
|
|
23005
22941
|
autoHeight.value = entries[0].target.clientHeight;
|
23006
22942
|
});
|
23007
22943
|
const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10));
|
23008
|
-
|
23009
|
-
|
23010
|
-
|
23011
|
-
|
23012
|
-
|
23013
|
-
|
23014
|
-
|
23015
|
-
|
23016
|
-
|
23017
|
-
|
23018
|
-
|
22944
|
+
useToggleScope(() => props.app, () => {
|
22945
|
+
const layout = useLayoutItem({
|
22946
|
+
id: props.name,
|
22947
|
+
order: computed(() => parseInt(props.order, 10)),
|
22948
|
+
position: computed(() => 'bottom'),
|
22949
|
+
layoutSize: height,
|
22950
|
+
elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
|
22951
|
+
active: computed(() => props.app),
|
22952
|
+
absolute: toRef(props, 'absolute')
|
22953
|
+
});
|
22954
|
+
watchEffect(() => {
|
22955
|
+
layoutItemStyles.value = layout.layoutItemStyles.value;
|
22956
|
+
layoutIsReady.value = layout.layoutIsReady;
|
22957
|
+
});
|
23019
22958
|
});
|
23020
22959
|
useRender(() => createVNode(props.tag, {
|
23021
22960
|
"ref": resizeRef,
|
@@ -23024,7 +22963,7 @@ const VFooter = genericComponent()({
|
|
23024
22963
|
height: convertToUnit(props.height)
|
23025
22964
|
}, props.style]
|
23026
22965
|
}, slots));
|
23027
|
-
return props.app ? layoutIsReady : {};
|
22966
|
+
return props.app ? layoutIsReady.value : {};
|
23028
22967
|
}
|
23029
22968
|
});
|
23030
22969
|
|
@@ -25165,16 +25104,17 @@ const VSkeletonLoader = genericComponent()({
|
|
25165
25104
|
const items = computed(() => genStructure(wrapInArray(props.type).join(',')));
|
25166
25105
|
useRender(() => {
|
25167
25106
|
const isLoading = !slots.default || props.loading;
|
25168
|
-
|
25107
|
+
const loadingProps = props.boilerplate || !isLoading ? {} : {
|
25108
|
+
ariaLive: 'polite',
|
25109
|
+
ariaLabel: t(props.loadingText),
|
25110
|
+
role: 'alert'
|
25111
|
+
};
|
25112
|
+
return createVNode("div", mergeProps({
|
25169
25113
|
"class": ['v-skeleton-loader', {
|
25170
25114
|
'v-skeleton-loader--boilerplate': props.boilerplate
|
25171
25115
|
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value],
|
25172
|
-
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}]
|
25173
|
-
|
25174
|
-
"aria-live": !props.boilerplate ? 'polite' : undefined,
|
25175
|
-
"aria-label": !props.boilerplate ? t(props.loadingText) : undefined,
|
25176
|
-
"role": !props.boilerplate ? 'alert' : undefined
|
25177
|
-
}, [isLoading ? items.value : slots.default?.()]);
|
25116
|
+
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}]
|
25117
|
+
}, loadingProps), [isLoading ? items.value : slots.default?.()]);
|
25178
25118
|
});
|
25179
25119
|
return {};
|
25180
25120
|
}
|
@@ -25207,14 +25147,14 @@ const VSlideGroupItem = genericComponent()({
|
|
25207
25147
|
// Types
|
25208
25148
|
|
25209
25149
|
function useCountdown(milliseconds) {
|
25210
|
-
const time = shallowRef(milliseconds);
|
25150
|
+
const time = shallowRef(milliseconds());
|
25211
25151
|
let timer = -1;
|
25212
25152
|
function clear() {
|
25213
25153
|
clearInterval(timer);
|
25214
25154
|
}
|
25215
25155
|
function reset() {
|
25216
25156
|
clear();
|
25217
|
-
nextTick(() => time.value = milliseconds);
|
25157
|
+
nextTick(() => time.value = milliseconds());
|
25218
25158
|
}
|
25219
25159
|
function start(el) {
|
25220
25160
|
const style = el ? getComputedStyle(el) : {
|
@@ -25226,7 +25166,7 @@ function useCountdown(milliseconds) {
|
|
25226
25166
|
const startTime = performance.now();
|
25227
25167
|
timer = window.setInterval(() => {
|
25228
25168
|
const elapsed = performance.now() - startTime + interval;
|
25229
|
-
time.value = Math.max(milliseconds - elapsed, 0);
|
25169
|
+
time.value = Math.max(milliseconds() - elapsed, 0);
|
25230
25170
|
if (time.value <= 0) clear();
|
25231
25171
|
}, interval);
|
25232
25172
|
}
|
@@ -25286,7 +25226,7 @@ const VSnackbar = genericComponent()({
|
|
25286
25226
|
const {
|
25287
25227
|
roundedClasses
|
25288
25228
|
} = useRounded(props);
|
25289
|
-
const countdown = useCountdown(Number(props.timeout));
|
25229
|
+
const countdown = useCountdown(() => Number(props.timeout));
|
25290
25230
|
const overlay = ref();
|
25291
25231
|
const timerRef = ref();
|
25292
25232
|
const isHovering = shallowRef(false);
|
@@ -28106,19 +28046,23 @@ const makeVNumberInputProps = propsFactory({
|
|
28106
28046
|
},
|
28107
28047
|
inset: Boolean,
|
28108
28048
|
hideInput: Boolean,
|
28049
|
+
modelValue: {
|
28050
|
+
type: Number,
|
28051
|
+
default: null
|
28052
|
+
},
|
28109
28053
|
min: {
|
28110
28054
|
type: Number,
|
28111
|
-
default:
|
28055
|
+
default: Number.MIN_SAFE_INTEGER
|
28112
28056
|
},
|
28113
28057
|
max: {
|
28114
28058
|
type: Number,
|
28115
|
-
default:
|
28059
|
+
default: Number.MAX_SAFE_INTEGER
|
28116
28060
|
},
|
28117
28061
|
step: {
|
28118
28062
|
type: Number,
|
28119
28063
|
default: 1
|
28120
28064
|
},
|
28121
|
-
...omit(makeVTextFieldProps(), ['appendInnerIcon', 'prependInnerIcon'])
|
28065
|
+
...omit(makeVTextFieldProps({}), ['appendInnerIcon', 'modelValue', 'prependInnerIcon'])
|
28122
28066
|
}, 'VNumberInput');
|
28123
28067
|
const VNumberInput = genericComponent()({
|
28124
28068
|
name: 'VNumberInput',
|
@@ -28130,30 +28074,27 @@ const VNumberInput = genericComponent()({
|
|
28130
28074
|
},
|
28131
28075
|
setup(props, _ref) {
|
28132
28076
|
let {
|
28133
|
-
attrs,
|
28134
|
-
emit,
|
28135
28077
|
slots
|
28136
28078
|
} = _ref;
|
28137
|
-
const
|
28079
|
+
const _model = useProxiedModel(props, 'modelValue');
|
28080
|
+
const model = computed({
|
28081
|
+
get: () => _model.value,
|
28082
|
+
set(val) {
|
28083
|
+
if (typeof val !== 'string') _model.value = val;
|
28084
|
+
}
|
28085
|
+
});
|
28086
|
+
const vTextFieldRef = ref();
|
28138
28087
|
const stepDecimals = computed(() => getDecimals(props.step));
|
28139
|
-
const modelDecimals = computed(() => model.value
|
28088
|
+
const modelDecimals = computed(() => typeof model.value === 'number' ? getDecimals(model.value) : 0);
|
28140
28089
|
const form = useForm();
|
28141
28090
|
const controlsDisabled = computed(() => props.disabled || props.readonly || form?.isReadonly.value);
|
28142
28091
|
const canIncrease = computed(() => {
|
28143
28092
|
if (controlsDisabled.value) return false;
|
28144
|
-
|
28145
|
-
return model.value + props.step <= props.max;
|
28093
|
+
return (model.value ?? 0) + props.step <= props.max;
|
28146
28094
|
});
|
28147
28095
|
const canDecrease = computed(() => {
|
28148
28096
|
if (controlsDisabled.value) return false;
|
28149
|
-
|
28150
|
-
return model.value - props.step >= props.min;
|
28151
|
-
});
|
28152
|
-
watchEffect(() => {
|
28153
|
-
if (controlsDisabled.value) return;
|
28154
|
-
if (model.value != null && (model.value < props.min || model.value > props.max)) {
|
28155
|
-
model.value = clamp(model.value, props.min, props.max);
|
28156
|
-
}
|
28097
|
+
return (model.value ?? 0) - props.step >= props.min;
|
28157
28098
|
});
|
28158
28099
|
const controlVariant = computed(() => {
|
28159
28100
|
return props.hideInput ? 'stacked' : props.controlVariant;
|
@@ -28168,11 +28109,16 @@ const VNumberInput = genericComponent()({
|
|
28168
28109
|
const decrementSlotProps = computed(() => ({
|
28169
28110
|
click: onClickDown
|
28170
28111
|
}));
|
28112
|
+
onMounted(() => {
|
28113
|
+
if (!props.readonly && !props.disabled) {
|
28114
|
+
clampModel();
|
28115
|
+
}
|
28116
|
+
});
|
28171
28117
|
function toggleUpDown() {
|
28172
28118
|
let increment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
28173
28119
|
if (controlsDisabled.value) return;
|
28174
28120
|
if (model.value == null) {
|
28175
|
-
model.value = 0;
|
28121
|
+
model.value = clamp(0, props.min, props.max);
|
28176
28122
|
return;
|
28177
28123
|
}
|
28178
28124
|
const decimals = Math.max(modelDecimals.value, stepDecimals.value);
|
@@ -28190,30 +28136,45 @@ const VNumberInput = genericComponent()({
|
|
28190
28136
|
e.stopPropagation();
|
28191
28137
|
toggleUpDown(false);
|
28192
28138
|
}
|
28193
|
-
function
|
28194
|
-
if (
|
28195
|
-
|
28139
|
+
function onBeforeinput(e) {
|
28140
|
+
if (!e.data) return;
|
28141
|
+
const existingTxt = e.target?.value;
|
28142
|
+
const selectionStart = e.target?.selectionStart;
|
28143
|
+
const selectionEnd = e.target?.selectionEnd;
|
28144
|
+
const potentialNewInputVal = existingTxt ? existingTxt.slice(0, selectionStart) + e.data + existingTxt.slice(selectionEnd) : e.data;
|
28145
|
+
// Only numbers, "-", "." are allowed
|
28146
|
+
// AND "-", "." are allowed only once
|
28147
|
+
// AND "-" is only allowed at the start
|
28148
|
+
if (!/^-?(\d+(\.\d*)?|(\.\d+)|\d*|\.)$/.test(potentialNewInputVal)) {
|
28196
28149
|
e.preventDefault();
|
28197
|
-
toggleUpDown(false);
|
28198
|
-
return;
|
28199
28150
|
}
|
28200
|
-
|
28201
|
-
|
28202
|
-
|
28203
|
-
|
28204
|
-
}
|
28205
|
-
|
28206
|
-
// Only numbers, +, - & . are allowed
|
28207
|
-
if (!/^[0-9\-+.]+$/.test(e.key)) {
|
28151
|
+
}
|
28152
|
+
async function onKeydown(e) {
|
28153
|
+
if (['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Delete', 'Tab'].includes(e.key) || e.ctrlKey) return;
|
28154
|
+
if (['ArrowDown', 'ArrowUp'].includes(e.key)) {
|
28208
28155
|
e.preventDefault();
|
28156
|
+
clampModel();
|
28157
|
+
// _model is controlled, so need to wait until props['modelValue'] is updated
|
28158
|
+
await nextTick();
|
28159
|
+
if (e.key === 'ArrowDown') {
|
28160
|
+
toggleUpDown(false);
|
28161
|
+
} else {
|
28162
|
+
toggleUpDown();
|
28163
|
+
}
|
28209
28164
|
}
|
28210
28165
|
}
|
28211
|
-
function onModelUpdate(v) {
|
28212
|
-
model.value = v ? +v : undefined;
|
28213
|
-
}
|
28214
28166
|
function onControlMousedown(e) {
|
28215
28167
|
e.stopPropagation();
|
28216
28168
|
}
|
28169
|
+
function clampModel() {
|
28170
|
+
if (!vTextFieldRef.value) return;
|
28171
|
+
const inputText = vTextFieldRef.value.value;
|
28172
|
+
if (inputText && !isNaN(+inputText)) {
|
28173
|
+
model.value = clamp(+inputText, props.min, props.max);
|
28174
|
+
} else {
|
28175
|
+
model.value = null;
|
28176
|
+
}
|
28177
|
+
}
|
28217
28178
|
useRender(() => {
|
28218
28179
|
const {
|
28219
28180
|
modelValue: _,
|
@@ -28298,8 +28259,11 @@ const VNumberInput = genericComponent()({
|
|
28298
28259
|
}, null)]) : props.reverse ? createVNode(Fragment, null, [controlNode(), dividerNode()]) : undefined;
|
28299
28260
|
const hasPrependInner = slots['prepend-inner'] || prependInnerControl;
|
28300
28261
|
return createVNode(VTextField, mergeProps({
|
28262
|
+
"ref": vTextFieldRef,
|
28301
28263
|
"modelValue": model.value,
|
28302
|
-
"onUpdate:modelValue":
|
28264
|
+
"onUpdate:modelValue": $event => model.value = $event,
|
28265
|
+
"onBeforeinput": onBeforeinput,
|
28266
|
+
"onChange": clampModel,
|
28303
28267
|
"onKeydown": onKeydown,
|
28304
28268
|
"class": ['v-number-input', {
|
28305
28269
|
'v-number-input--default': controlVariant.value === 'default',
|
@@ -29496,7 +29460,6 @@ const VTreeviewSymbol = Symbol.for('vuetify:v-treeview');
|
|
29496
29460
|
|
29497
29461
|
const makeVTreeviewItemProps = propsFactory({
|
29498
29462
|
loading: Boolean,
|
29499
|
-
onToggleExpand: EventProp(),
|
29500
29463
|
toggleIcon: IconValue,
|
29501
29464
|
...makeVListItemProps({
|
29502
29465
|
slim: true
|
@@ -29517,12 +29480,24 @@ const VTreeviewItem = genericComponent()({
|
|
29517
29480
|
const {
|
29518
29481
|
activate,
|
29519
29482
|
isActivated,
|
29483
|
+
select,
|
29484
|
+
isSelected,
|
29485
|
+
isIndeterminate,
|
29520
29486
|
isGroupActivator,
|
29521
29487
|
root,
|
29522
29488
|
id
|
29523
29489
|
} = useNestedItem(rawId, false);
|
29524
29490
|
const isActivatableGroupActivator = computed(() => root.activatable.value && isGroupActivator);
|
29525
|
-
const
|
29491
|
+
const {
|
29492
|
+
densityClasses
|
29493
|
+
} = useDensity(props, 'v-list-item');
|
29494
|
+
const slotProps = computed(() => ({
|
29495
|
+
isActive: isActivated.value,
|
29496
|
+
select,
|
29497
|
+
isSelected: isSelected.value,
|
29498
|
+
isIndeterminate: isIndeterminate.value
|
29499
|
+
}));
|
29500
|
+
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || props.value != null && !!vListItemRef.value?.list));
|
29526
29501
|
function activateItem(e) {
|
29527
29502
|
if (!isClickable.value || !isActivatableGroupActivator.value && isGroupActivator) return;
|
29528
29503
|
if (root.activatable.value) {
|
@@ -29533,20 +29508,68 @@ const VTreeviewItem = genericComponent()({
|
|
29533
29508
|
}
|
29534
29509
|
}
|
29535
29510
|
}
|
29511
|
+
function onKeyDown(e) {
|
29512
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
29513
|
+
e.preventDefault();
|
29514
|
+
activateItem(e);
|
29515
|
+
}
|
29516
|
+
}
|
29536
29517
|
const visibleIds = inject$1(VTreeviewSymbol, {
|
29537
29518
|
visibleIds: ref()
|
29538
29519
|
}).visibleIds;
|
29539
29520
|
useRender(() => {
|
29540
|
-
const
|
29521
|
+
const hasTitle = slots.title || props.title != null;
|
29522
|
+
const hasSubtitle = slots.subtitle || props.subtitle != null;
|
29523
|
+
const listItemProps = VListItem.filterProps(props);
|
29541
29524
|
const hasPrepend = slots.prepend || props.toggleIcon;
|
29542
|
-
return createVNode(
|
29543
|
-
"
|
29525
|
+
return isActivatableGroupActivator.value ? withDirectives(createVNode("div", {
|
29526
|
+
"class": ['v-list-item', 'v-list-item--one-line', 'v-treeview-item', 'v-treeview-item--activetable-group-activator', {
|
29527
|
+
'v-list-item--active': isActivated.value || isSelected.value,
|
29528
|
+
'v-treeview-item--filtered': visibleIds.value && !visibleIds.value.has(id.value)
|
29529
|
+
}, densityClasses.value, props.class],
|
29530
|
+
"onClick": activateItem
|
29531
|
+
}, [createVNode(Fragment, null, [genOverlays(isActivated.value || isSelected.value, 'v-list-item'), props.toggleIcon && createVNode(VListItemAction, {
|
29532
|
+
"start": false
|
29533
|
+
}, {
|
29534
|
+
default: () => [createVNode(VBtn, {
|
29535
|
+
"density": "compact",
|
29536
|
+
"icon": props.toggleIcon,
|
29537
|
+
"loading": props.loading,
|
29538
|
+
"variant": "text",
|
29539
|
+
"onClick": props.onClick
|
29540
|
+
}, {
|
29541
|
+
loader() {
|
29542
|
+
return createVNode(VProgressCircular, {
|
29543
|
+
"indeterminate": "disable-shrink",
|
29544
|
+
"size": "20",
|
29545
|
+
"width": "2"
|
29546
|
+
}, null);
|
29547
|
+
}
|
29548
|
+
})]
|
29549
|
+
})]), createVNode("div", {
|
29550
|
+
"class": "v-list-item__content",
|
29551
|
+
"data-no-activator": ""
|
29552
|
+
}, [hasTitle && createVNode(VListItemTitle, {
|
29553
|
+
"key": "title"
|
29554
|
+
}, {
|
29555
|
+
default: () => [slots.title?.({
|
29556
|
+
title: props.title
|
29557
|
+
}) ?? props.title]
|
29558
|
+
}), hasSubtitle && createVNode(VListItemSubtitle, {
|
29559
|
+
"key": "subtitle"
|
29560
|
+
}, {
|
29561
|
+
default: () => [slots.subtitle?.({
|
29562
|
+
subtitle: props.subtitle
|
29563
|
+
}) ?? props.subtitle]
|
29564
|
+
}), slots.default?.(slotProps.value)])]), [[resolveDirective("ripple"), isClickable.value && props.ripple]]) : createVNode(VListItem, mergeProps({
|
29565
|
+
"ref": vListItemRef
|
29566
|
+
}, listItemProps, {
|
29544
29567
|
"class": ['v-treeview-item', {
|
29545
|
-
'v-treeview-item--activatable-group-activator': isActivatableGroupActivator.value,
|
29546
29568
|
'v-treeview-item--filtered': visibleIds.value && !visibleIds.value.has(id.value)
|
29547
29569
|
}, props.class],
|
29548
|
-
"
|
29549
|
-
"onClick":
|
29570
|
+
"value": id.value,
|
29571
|
+
"onClick": activateItem,
|
29572
|
+
"onKeydown": isClickable.value && onKeyDown
|
29550
29573
|
}), {
|
29551
29574
|
...slots,
|
29552
29575
|
prepend: hasPrepend ? slotProps => {
|
@@ -29557,8 +29580,7 @@ const VTreeviewItem = genericComponent()({
|
|
29557
29580
|
"density": "compact",
|
29558
29581
|
"icon": props.toggleIcon,
|
29559
29582
|
"loading": props.loading,
|
29560
|
-
"variant": "text"
|
29561
|
-
"onClick": props.onToggleExpand
|
29583
|
+
"variant": "text"
|
29562
29584
|
}, {
|
29563
29585
|
loader() {
|
29564
29586
|
return createVNode(VProgressCircular, {
|
@@ -29585,19 +29607,7 @@ const makeVTreeviewChildrenProps = propsFactory({
|
|
29585
29607
|
default: '$loading'
|
29586
29608
|
},
|
29587
29609
|
items: Array,
|
29588
|
-
openOnClick: {
|
29589
|
-
type: Boolean,
|
29590
|
-
default: undefined
|
29591
|
-
},
|
29592
|
-
indeterminateIcon: {
|
29593
|
-
type: IconValue,
|
29594
|
-
default: '$checkboxIndeterminate'
|
29595
|
-
},
|
29596
|
-
falseIcon: IconValue,
|
29597
|
-
trueIcon: IconValue,
|
29598
|
-
returnObject: Boolean,
|
29599
29610
|
selectable: Boolean,
|
29600
|
-
selectedColor: String,
|
29601
29611
|
selectStrategy: [String, Function, Object]
|
29602
29612
|
}, 'VTreeviewChildren');
|
29603
29613
|
const VTreeviewChildren = genericComponent()({
|
@@ -29609,7 +29619,6 @@ const VTreeviewChildren = genericComponent()({
|
|
29609
29619
|
slots
|
29610
29620
|
} = _ref;
|
29611
29621
|
const isLoading = shallowRef(null);
|
29612
|
-
const isClickOnOpen = computed(() => props.openOnClick != null ? props.openOnClick : props.selectable);
|
29613
29622
|
function checkChildren(item) {
|
29614
29623
|
return new Promise(resolve => {
|
29615
29624
|
if (!props.items?.length || !props.loadChildren) return resolve();
|
@@ -29640,11 +29649,7 @@ const VTreeviewChildren = genericComponent()({
|
|
29640
29649
|
"key": item.value,
|
29641
29650
|
"modelValue": slotProps.isSelected,
|
29642
29651
|
"loading": loading,
|
29643
|
-
"color": props.selectedColor,
|
29644
29652
|
"indeterminate": slotProps.isIndeterminate,
|
29645
|
-
"indeterminateIcon": props.indeterminateIcon,
|
29646
|
-
"falseIcon": props.falseIcon,
|
29647
|
-
"trueIcon": props.trueIcon,
|
29648
29653
|
"onClick": withModifiers(() => selectItem(slotProps.select, slotProps.isSelected), ['stop']),
|
29649
29654
|
"onKeydown": e => {
|
29650
29655
|
if (!['Enter', 'Space'].includes(e.key)) return;
|
@@ -29666,9 +29671,9 @@ const VTreeviewChildren = genericComponent()({
|
|
29666
29671
|
};
|
29667
29672
|
const treeviewGroupProps = VTreeviewGroup.filterProps(itemProps);
|
29668
29673
|
const treeviewChildrenProps = VTreeviewChildren.filterProps(props);
|
29669
|
-
return children ? createVNode(VTreeviewGroup, mergeProps(
|
29670
|
-
"value":
|
29671
|
-
}), {
|
29674
|
+
return children ? createVNode(VTreeviewGroup, mergeProps({
|
29675
|
+
"value": itemProps?.value
|
29676
|
+
}, treeviewGroupProps), {
|
29672
29677
|
activator: _ref3 => {
|
29673
29678
|
let {
|
29674
29679
|
props: activatorProps
|
@@ -29676,24 +29681,19 @@ const VTreeviewChildren = genericComponent()({
|
|
29676
29681
|
const listItemProps = {
|
29677
29682
|
...itemProps,
|
29678
29683
|
...activatorProps,
|
29679
|
-
value: itemProps?.value
|
29680
|
-
onToggleExpand: activatorProps.onClick,
|
29681
|
-
onClick: isClickOnOpen.value ? [() => checkChildren(item), activatorProps.onClick] : undefined
|
29684
|
+
value: itemProps?.value
|
29682
29685
|
};
|
29683
29686
|
return createVNode(VTreeviewItem, mergeProps(listItemProps, {
|
29684
|
-
"
|
29685
|
-
"
|
29687
|
+
"loading": loading,
|
29688
|
+
"onClick": () => checkChildren(item)
|
29686
29689
|
}), slotsWithItem);
|
29687
29690
|
},
|
29688
29691
|
default: () => createVNode(VTreeviewChildren, mergeProps(treeviewChildrenProps, {
|
29689
|
-
"items": children
|
29690
|
-
"returnObject": props.returnObject
|
29692
|
+
"items": children
|
29691
29693
|
}), slots)
|
29692
29694
|
}) : slots.item?.({
|
29693
29695
|
props: itemProps
|
29694
|
-
}) ?? createVNode(VTreeviewItem,
|
29695
|
-
"value": props.returnObject ? toRaw(item) : itemProps.value
|
29696
|
-
}), slotsWithItem);
|
29696
|
+
}) ?? createVNode(VTreeviewItem, itemProps, slotsWithItem);
|
29697
29697
|
});
|
29698
29698
|
}
|
29699
29699
|
});
|
@@ -29717,7 +29717,7 @@ const makeVTreeviewProps = propsFactory({
|
|
29717
29717
|
collapseIcon: '$treeviewCollapse',
|
29718
29718
|
expandIcon: '$treeviewExpand',
|
29719
29719
|
slim: true
|
29720
|
-
}), ['nav'
|
29720
|
+
}), ['nav'])
|
29721
29721
|
}, 'VTreeview');
|
29722
29722
|
const VTreeview = genericComponent()({
|
29723
29723
|
name: 'VTreeview',
|
@@ -29776,11 +29776,11 @@ const VTreeview = genericComponent()({
|
|
29776
29776
|
}
|
29777
29777
|
return arr;
|
29778
29778
|
}
|
29779
|
-
function openAll(
|
29779
|
+
function openAll(item) {
|
29780
29780
|
let ids = [];
|
29781
|
-
for (const i of
|
29781
|
+
for (const i of item) {
|
29782
29782
|
if (!i.children) continue;
|
29783
|
-
ids.push(
|
29783
|
+
ids.push(i.value);
|
29784
29784
|
if (i.children) {
|
29785
29785
|
ids = ids.concat(openAll(i.children));
|
29786
29786
|
}
|
@@ -29816,7 +29816,6 @@ const VTreeview = genericComponent()({
|
|
29816
29816
|
"ref": vListRef
|
29817
29817
|
}, listProps, {
|
29818
29818
|
"class": ['v-treeview', props.class],
|
29819
|
-
"open-strategy": "multiple",
|
29820
29819
|
"style": props.style,
|
29821
29820
|
"opened": opened.value,
|
29822
29821
|
"activated": activated.value,
|
@@ -29825,7 +29824,6 @@ const VTreeview = genericComponent()({
|
|
29825
29824
|
"onUpdate:selected": $event => selected.value = $event
|
29826
29825
|
}), {
|
29827
29826
|
default: () => [createVNode(VTreeviewChildren, mergeProps(treeviewChildrenProps, {
|
29828
|
-
"returnObject": props.returnObject,
|
29829
29827
|
"items": items.value
|
29830
29828
|
}), slots)]
|
29831
29829
|
});
|
@@ -30331,7 +30329,7 @@ function createVuetify$1() {
|
|
30331
30329
|
goTo
|
30332
30330
|
};
|
30333
30331
|
}
|
30334
|
-
const version$1 = "3.6.
|
30332
|
+
const version$1 = "3.6.14-master.2024-08-01";
|
30335
30333
|
createVuetify$1.version = version$1;
|
30336
30334
|
|
30337
30335
|
// Vue's inject() can only be used in setup
|
@@ -30584,7 +30582,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
30584
30582
|
|
30585
30583
|
/* eslint-disable local-rules/sort-imports */
|
30586
30584
|
|
30587
|
-
const version = "3.6.
|
30585
|
+
const version = "3.6.14-master.2024-08-01";
|
30588
30586
|
|
30589
30587
|
/* eslint-disable local-rules/sort-imports */
|
30590
30588
|
|