@vuetify/nightly 3.7.0-beta.1-dev.2024-07-30 → 3.7.0-beta.1-dev.2024-08-08
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 +13 -5
- package/dist/json/importMap-labs.json +18 -18
- package/dist/json/importMap.json +160 -160
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +45 -13
- package/dist/vuetify-labs.css +3716 -2993
- package/dist/vuetify-labs.d.ts +50 -11
- package/dist/vuetify-labs.esm.js +113 -69
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +113 -69
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +1406 -683
- package/dist/vuetify.d.ts +60 -60
- package/dist/vuetify.esm.js +35 -29
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +35 -29
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +13 -12
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +5 -1
- package/lib/components/VAutocomplete/VAutocomplete.css +4 -0
- package/lib/components/VAvatar/VAvatar.css +8 -4
- package/lib/components/VAvatar/VAvatar.mjs +1 -1
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- 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/VBtn/VBtn.css +16 -9
- package/lib/components/VBtn/VBtn.mjs +1 -1
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +4 -4
- 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/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/VDialog/VDialog.css +5 -0
- 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/VField/VField.css +13 -1
- package/lib/components/VField/VField.sass +5 -8
- 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/VGrid/VGrid.sass +1 -1
- package/lib/components/VGrid/_mixins.sass +4 -4
- package/lib/components/VImg/VImg.css +6 -0
- package/lib/components/VKbd/VKbd.css +2 -0
- package/lib/components/VList/VList.css +12 -4
- package/lib/components/VList/VListItem.css +21 -11
- package/lib/components/VList/VListItem.sass +1 -1
- package/lib/components/VMain/VMain.css +2 -0
- package/lib/components/VMenu/VMenu.css +6 -0
- package/lib/components/VMenu/VMenu.mjs +1 -1
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- 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/VSelect/VSelect.css +4 -0
- 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/VSlider/VSliderThumb.sass +2 -2
- 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/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/VSystemBar/VSystemBar.css +14 -8
- package/lib/components/VTable/VTable.css +8 -4
- package/lib/components/VTable/VTable.sass +2 -3
- 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/VTreeview/VTreeview.sass +9 -9
- package/lib/components/index.d.mts +3 -3
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +57 -57
- package/lib/labs/VNumberInput/VNumberInput.mjs +60 -36
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VNumberInput/index.d.mts +17 -8
- package/lib/labs/VPicker/VPicker.css +6 -2
- package/lib/labs/VPicker/VPicker.sass +2 -3
- package/lib/labs/VPullToRefresh/VPullToRefresh.mjs +4 -3
- package/lib/labs/VPullToRefresh/VPullToRefresh.mjs.map +1 -1
- package/lib/labs/VPullToRefresh/index.d.mts +9 -0
- package/lib/labs/VTreeview/VTreeview.mjs +15 -2
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/index.d.mts +21 -0
- package/lib/labs/components.d.mts +47 -8
- 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/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.7.0-beta.1-dev.2024-
|
2
|
+
* Vuetify v3.7.0-beta.1-dev.2024-08-08
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -5716,7 +5716,7 @@ const VBtn = genericComponent()({
|
|
5716
5716
|
"indeterminate": true,
|
5717
5717
|
"width": "2"
|
5718
5718
|
}, null)])]
|
5719
|
-
}), [[Ripple, !isDisabled.value &&
|
5719
|
+
}), [[Ripple, !isDisabled.value && props.ripple, '', {
|
5720
5720
|
center: !!props.icon
|
5721
5721
|
}]]);
|
5722
5722
|
});
|
@@ -6014,7 +6014,7 @@ const VAvatar = genericComponent()({
|
|
6014
6014
|
"defaults": {
|
6015
6015
|
VImg: {
|
6016
6016
|
cover: true,
|
6017
|
-
|
6017
|
+
src: props.image
|
6018
6018
|
},
|
6019
6019
|
VIcon: {
|
6020
6020
|
icon: props.icon
|
@@ -11156,7 +11156,7 @@ const VMenu = genericComponent()({
|
|
11156
11156
|
},
|
11157
11157
|
closeParents(e) {
|
11158
11158
|
setTimeout(() => {
|
11159
|
-
if (!openChildren.value.size && !props.persistent && (e == null ||
|
11159
|
+
if (!openChildren.value.size && !props.persistent && (e == null || overlay.value?.contentEl && !isClickInsideElement(e, overlay.value.contentEl))) {
|
11160
11160
|
isActive.value = false;
|
11161
11161
|
parent?.closeParents();
|
11162
11162
|
}
|
@@ -22975,6 +22975,8 @@ const VFooter = genericComponent()({
|
|
22975
22975
|
let {
|
22976
22976
|
slots
|
22977
22977
|
} = _ref;
|
22978
|
+
const layoutItemStyles = ref();
|
22979
|
+
const layoutIsReady = shallowRef();
|
22978
22980
|
const {
|
22979
22981
|
themeClasses
|
22980
22982
|
} = provideTheme(props);
|
@@ -22999,17 +23001,20 @@ const VFooter = genericComponent()({
|
|
22999
23001
|
autoHeight.value = entries[0].target.clientHeight;
|
23000
23002
|
});
|
23001
23003
|
const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10));
|
23002
|
-
|
23003
|
-
|
23004
|
-
|
23005
|
-
|
23006
|
-
|
23007
|
-
|
23008
|
-
|
23009
|
-
|
23010
|
-
|
23011
|
-
|
23012
|
-
|
23004
|
+
useToggleScope(() => props.app, () => {
|
23005
|
+
const layout = useLayoutItem({
|
23006
|
+
id: props.name,
|
23007
|
+
order: computed(() => parseInt(props.order, 10)),
|
23008
|
+
position: computed(() => 'bottom'),
|
23009
|
+
layoutSize: height,
|
23010
|
+
elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
|
23011
|
+
active: computed(() => props.app),
|
23012
|
+
absolute: toRef(props, 'absolute')
|
23013
|
+
});
|
23014
|
+
watchEffect(() => {
|
23015
|
+
layoutItemStyles.value = layout.layoutItemStyles.value;
|
23016
|
+
layoutIsReady.value = layout.layoutIsReady;
|
23017
|
+
});
|
23013
23018
|
});
|
23014
23019
|
useRender(() => createVNode(props.tag, {
|
23015
23020
|
"ref": resizeRef,
|
@@ -23018,7 +23023,7 @@ const VFooter = genericComponent()({
|
|
23018
23023
|
height: convertToUnit(props.height)
|
23019
23024
|
}, props.style]
|
23020
23025
|
}, slots));
|
23021
|
-
return props.app ? layoutIsReady : {};
|
23026
|
+
return props.app ? layoutIsReady.value : {};
|
23022
23027
|
}
|
23023
23028
|
});
|
23024
23029
|
|
@@ -25159,16 +25164,17 @@ const VSkeletonLoader = genericComponent()({
|
|
25159
25164
|
const items = computed(() => genStructure(wrapInArray(props.type).join(',')));
|
25160
25165
|
useRender(() => {
|
25161
25166
|
const isLoading = !slots.default || props.loading;
|
25162
|
-
|
25167
|
+
const loadingProps = props.boilerplate || !isLoading ? {} : {
|
25168
|
+
ariaLive: 'polite',
|
25169
|
+
ariaLabel: t(props.loadingText),
|
25170
|
+
role: 'alert'
|
25171
|
+
};
|
25172
|
+
return createVNode("div", mergeProps({
|
25163
25173
|
"class": ['v-skeleton-loader', {
|
25164
25174
|
'v-skeleton-loader--boilerplate': props.boilerplate
|
25165
25175
|
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value],
|
25166
|
-
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}]
|
25167
|
-
|
25168
|
-
"aria-live": !props.boilerplate ? 'polite' : undefined,
|
25169
|
-
"aria-label": !props.boilerplate ? t(props.loadingText) : undefined,
|
25170
|
-
"role": !props.boilerplate ? 'alert' : undefined
|
25171
|
-
}, [isLoading ? items.value : slots.default?.()]);
|
25176
|
+
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}]
|
25177
|
+
}, loadingProps), [isLoading ? items.value : slots.default?.()]);
|
25172
25178
|
});
|
25173
25179
|
return {};
|
25174
25180
|
}
|
@@ -25201,14 +25207,14 @@ const VSlideGroupItem = genericComponent()({
|
|
25201
25207
|
// Types
|
25202
25208
|
|
25203
25209
|
function useCountdown(milliseconds) {
|
25204
|
-
const time = shallowRef(milliseconds);
|
25210
|
+
const time = shallowRef(milliseconds());
|
25205
25211
|
let timer = -1;
|
25206
25212
|
function clear() {
|
25207
25213
|
clearInterval(timer);
|
25208
25214
|
}
|
25209
25215
|
function reset() {
|
25210
25216
|
clear();
|
25211
|
-
nextTick(() => time.value = milliseconds);
|
25217
|
+
nextTick(() => time.value = milliseconds());
|
25212
25218
|
}
|
25213
25219
|
function start(el) {
|
25214
25220
|
const style = el ? getComputedStyle(el) : {
|
@@ -25220,7 +25226,7 @@ function useCountdown(milliseconds) {
|
|
25220
25226
|
const startTime = performance.now();
|
25221
25227
|
timer = window.setInterval(() => {
|
25222
25228
|
const elapsed = performance.now() - startTime + interval;
|
25223
|
-
time.value = Math.max(milliseconds - elapsed, 0);
|
25229
|
+
time.value = Math.max(milliseconds() - elapsed, 0);
|
25224
25230
|
if (time.value <= 0) clear();
|
25225
25231
|
}, interval);
|
25226
25232
|
}
|
@@ -25280,7 +25286,7 @@ const VSnackbar = genericComponent()({
|
|
25280
25286
|
const {
|
25281
25287
|
roundedClasses
|
25282
25288
|
} = useRounded(props);
|
25283
|
-
const countdown = useCountdown(Number(props.timeout));
|
25289
|
+
const countdown = useCountdown(() => Number(props.timeout));
|
25284
25290
|
const overlay = ref();
|
25285
25291
|
const timerRef = ref();
|
25286
25292
|
const isHovering = shallowRef(false);
|
@@ -28100,19 +28106,23 @@ const makeVNumberInputProps = propsFactory({
|
|
28100
28106
|
},
|
28101
28107
|
inset: Boolean,
|
28102
28108
|
hideInput: Boolean,
|
28109
|
+
modelValue: {
|
28110
|
+
type: Number,
|
28111
|
+
default: null
|
28112
|
+
},
|
28103
28113
|
min: {
|
28104
28114
|
type: Number,
|
28105
|
-
default:
|
28115
|
+
default: Number.MIN_SAFE_INTEGER
|
28106
28116
|
},
|
28107
28117
|
max: {
|
28108
28118
|
type: Number,
|
28109
|
-
default:
|
28119
|
+
default: Number.MAX_SAFE_INTEGER
|
28110
28120
|
},
|
28111
28121
|
step: {
|
28112
28122
|
type: Number,
|
28113
28123
|
default: 1
|
28114
28124
|
},
|
28115
|
-
...omit(makeVTextFieldProps(), ['appendInnerIcon', 'prependInnerIcon'])
|
28125
|
+
...omit(makeVTextFieldProps({}), ['appendInnerIcon', 'modelValue', 'prependInnerIcon'])
|
28116
28126
|
}, 'VNumberInput');
|
28117
28127
|
const VNumberInput = genericComponent()({
|
28118
28128
|
name: 'VNumberInput',
|
@@ -28124,30 +28134,27 @@ const VNumberInput = genericComponent()({
|
|
28124
28134
|
},
|
28125
28135
|
setup(props, _ref) {
|
28126
28136
|
let {
|
28127
|
-
attrs,
|
28128
|
-
emit,
|
28129
28137
|
slots
|
28130
28138
|
} = _ref;
|
28131
|
-
const
|
28139
|
+
const _model = useProxiedModel(props, 'modelValue');
|
28140
|
+
const model = computed({
|
28141
|
+
get: () => _model.value,
|
28142
|
+
set(val) {
|
28143
|
+
if (typeof val !== 'string') _model.value = val;
|
28144
|
+
}
|
28145
|
+
});
|
28146
|
+
const vTextFieldRef = ref();
|
28132
28147
|
const stepDecimals = computed(() => getDecimals(props.step));
|
28133
|
-
const modelDecimals = computed(() => model.value
|
28148
|
+
const modelDecimals = computed(() => typeof model.value === 'number' ? getDecimals(model.value) : 0);
|
28134
28149
|
const form = useForm();
|
28135
28150
|
const controlsDisabled = computed(() => props.disabled || props.readonly || form?.isReadonly.value);
|
28136
28151
|
const canIncrease = computed(() => {
|
28137
28152
|
if (controlsDisabled.value) return false;
|
28138
|
-
|
28139
|
-
return model.value + props.step <= props.max;
|
28153
|
+
return (model.value ?? 0) + props.step <= props.max;
|
28140
28154
|
});
|
28141
28155
|
const canDecrease = computed(() => {
|
28142
28156
|
if (controlsDisabled.value) return false;
|
28143
|
-
|
28144
|
-
return model.value - props.step >= props.min;
|
28145
|
-
});
|
28146
|
-
watchEffect(() => {
|
28147
|
-
if (controlsDisabled.value) return;
|
28148
|
-
if (model.value != null && (model.value < props.min || model.value > props.max)) {
|
28149
|
-
model.value = clamp(model.value, props.min, props.max);
|
28150
|
-
}
|
28157
|
+
return (model.value ?? 0) - props.step >= props.min;
|
28151
28158
|
});
|
28152
28159
|
const controlVariant = computed(() => {
|
28153
28160
|
return props.hideInput ? 'stacked' : props.controlVariant;
|
@@ -28162,11 +28169,16 @@ const VNumberInput = genericComponent()({
|
|
28162
28169
|
const decrementSlotProps = computed(() => ({
|
28163
28170
|
click: onClickDown
|
28164
28171
|
}));
|
28172
|
+
onMounted(() => {
|
28173
|
+
if (!props.readonly && !props.disabled) {
|
28174
|
+
clampModel();
|
28175
|
+
}
|
28176
|
+
});
|
28165
28177
|
function toggleUpDown() {
|
28166
28178
|
let increment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
28167
28179
|
if (controlsDisabled.value) return;
|
28168
28180
|
if (model.value == null) {
|
28169
|
-
model.value = 0;
|
28181
|
+
model.value = clamp(0, props.min, props.max);
|
28170
28182
|
return;
|
28171
28183
|
}
|
28172
28184
|
const decimals = Math.max(modelDecimals.value, stepDecimals.value);
|
@@ -28184,30 +28196,45 @@ const VNumberInput = genericComponent()({
|
|
28184
28196
|
e.stopPropagation();
|
28185
28197
|
toggleUpDown(false);
|
28186
28198
|
}
|
28187
|
-
function
|
28188
|
-
if (
|
28189
|
-
|
28190
|
-
|
28191
|
-
|
28192
|
-
|
28193
|
-
|
28194
|
-
|
28199
|
+
function onBeforeinput(e) {
|
28200
|
+
if (!e.data) return;
|
28201
|
+
const existingTxt = e.target?.value;
|
28202
|
+
const selectionStart = e.target?.selectionStart;
|
28203
|
+
const selectionEnd = e.target?.selectionEnd;
|
28204
|
+
const potentialNewInputVal = existingTxt ? existingTxt.slice(0, selectionStart) + e.data + existingTxt.slice(selectionEnd) : e.data;
|
28205
|
+
// Only numbers, "-", "." are allowed
|
28206
|
+
// AND "-", "." are allowed only once
|
28207
|
+
// AND "-" is only allowed at the start
|
28208
|
+
if (!/^-?(\d+(\.\d*)?|(\.\d+)|\d*|\.)$/.test(potentialNewInputVal)) {
|
28195
28209
|
e.preventDefault();
|
28196
|
-
toggleUpDown();
|
28197
|
-
return;
|
28198
28210
|
}
|
28199
|
-
|
28200
|
-
|
28201
|
-
if (
|
28211
|
+
}
|
28212
|
+
async function onKeydown(e) {
|
28213
|
+
if (['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Delete', 'Tab'].includes(e.key) || e.ctrlKey) return;
|
28214
|
+
if (['ArrowDown', 'ArrowUp'].includes(e.key)) {
|
28202
28215
|
e.preventDefault();
|
28216
|
+
clampModel();
|
28217
|
+
// _model is controlled, so need to wait until props['modelValue'] is updated
|
28218
|
+
await nextTick();
|
28219
|
+
if (e.key === 'ArrowDown') {
|
28220
|
+
toggleUpDown(false);
|
28221
|
+
} else {
|
28222
|
+
toggleUpDown();
|
28223
|
+
}
|
28203
28224
|
}
|
28204
28225
|
}
|
28205
|
-
function onModelUpdate(v) {
|
28206
|
-
model.value = v ? +v : undefined;
|
28207
|
-
}
|
28208
28226
|
function onControlMousedown(e) {
|
28209
28227
|
e.stopPropagation();
|
28210
28228
|
}
|
28229
|
+
function clampModel() {
|
28230
|
+
if (!vTextFieldRef.value) return;
|
28231
|
+
const inputText = vTextFieldRef.value.value;
|
28232
|
+
if (inputText && !isNaN(+inputText)) {
|
28233
|
+
model.value = clamp(+inputText, props.min, props.max);
|
28234
|
+
} else {
|
28235
|
+
model.value = null;
|
28236
|
+
}
|
28237
|
+
}
|
28211
28238
|
useRender(() => {
|
28212
28239
|
const {
|
28213
28240
|
modelValue: _,
|
@@ -28292,8 +28319,11 @@ const VNumberInput = genericComponent()({
|
|
28292
28319
|
}, null)]) : props.reverse ? createVNode(Fragment, null, [controlNode(), dividerNode()]) : undefined;
|
28293
28320
|
const hasPrependInner = slots['prepend-inner'] || prependInnerControl;
|
28294
28321
|
return createVNode(VTextField, mergeProps({
|
28322
|
+
"ref": vTextFieldRef,
|
28295
28323
|
"modelValue": model.value,
|
28296
|
-
"onUpdate:modelValue":
|
28324
|
+
"onUpdate:modelValue": $event => model.value = $event,
|
28325
|
+
"onBeforeinput": onBeforeinput,
|
28326
|
+
"onChange": clampModel,
|
28297
28327
|
"onKeydown": onKeydown,
|
28298
28328
|
"class": ['v-number-input', {
|
28299
28329
|
'v-number-input--default': controlVariant.value === 'default',
|
@@ -28587,6 +28617,7 @@ const VStepperVertical = genericComponent()({
|
|
28587
28617
|
const VPullToRefresh = genericComponent()({
|
28588
28618
|
name: 'VPullToRefresh',
|
28589
28619
|
props: {
|
28620
|
+
disabled: Boolean,
|
28590
28621
|
pullDownThreshold: {
|
28591
28622
|
type: Number,
|
28592
28623
|
default: 64
|
@@ -28610,19 +28641,19 @@ const VPullToRefresh = genericComponent()({
|
|
28610
28641
|
const canRefresh = computed(() => touchDiff.value >= props.pullDownThreshold && !refreshing.value);
|
28611
28642
|
const topOffset = computed(() => clamp(touchDiff.value, 0, props.pullDownThreshold));
|
28612
28643
|
function onTouchstart(e) {
|
28613
|
-
if (refreshing.value) return;
|
28644
|
+
if (refreshing.value || props.disabled) return;
|
28614
28645
|
touching.value = true;
|
28615
28646
|
touchstartY = 'clientY' in e ? e.clientY : e.touches[0].clientY;
|
28616
28647
|
}
|
28617
28648
|
function onTouchmove(e) {
|
28618
|
-
if (refreshing.value || !touching.value) return;
|
28649
|
+
if (refreshing.value || !touching.value || props.disabled) return;
|
28619
28650
|
const touchY = 'clientY' in e ? e.clientY : e.touches[0].clientY;
|
28620
28651
|
if (scrollParents.length && !scrollParents[0].scrollTop) {
|
28621
28652
|
touchDiff.value = touchY - touchstartY;
|
28622
28653
|
}
|
28623
28654
|
}
|
28624
28655
|
function onTouchend(e) {
|
28625
|
-
if (refreshing.value) return;
|
28656
|
+
if (refreshing.value || props.disabled) return;
|
28626
28657
|
touching.value = false;
|
28627
28658
|
if (canRefresh.value) {
|
28628
28659
|
function done() {
|
@@ -29711,7 +29742,11 @@ const makeVTreeviewProps = propsFactory({
|
|
29711
29742
|
collapseIcon: '$treeviewCollapse',
|
29712
29743
|
expandIcon: '$treeviewExpand',
|
29713
29744
|
slim: true
|
29714
|
-
}), ['nav', 'openStrategy'])
|
29745
|
+
}), ['nav', 'openStrategy']),
|
29746
|
+
modelValue: {
|
29747
|
+
type: Array,
|
29748
|
+
default: () => []
|
29749
|
+
}
|
29715
29750
|
}, 'VTreeview');
|
29716
29751
|
const VTreeview = genericComponent()({
|
29717
29752
|
name: 'VTreeview',
|
@@ -29720,6 +29755,7 @@ const VTreeview = genericComponent()({
|
|
29720
29755
|
'update:opened': val => true,
|
29721
29756
|
'update:activated': val => true,
|
29722
29757
|
'update:selected': val => true,
|
29758
|
+
'update:modelValue': val => true,
|
29723
29759
|
'click:open': value => true,
|
29724
29760
|
'click:select': value => true
|
29725
29761
|
},
|
@@ -29734,7 +29770,15 @@ const VTreeview = genericComponent()({
|
|
29734
29770
|
const baseColor = toRef(props, 'baseColor');
|
29735
29771
|
const color = toRef(props, 'color');
|
29736
29772
|
const activated = useProxiedModel(props, 'activated');
|
29737
|
-
const
|
29773
|
+
const model = useProxiedModel(props, 'modelValue');
|
29774
|
+
const _selected = useProxiedModel(props, 'selected', props.modelValue);
|
29775
|
+
const selected = computed({
|
29776
|
+
get: () => _selected.value,
|
29777
|
+
set(val) {
|
29778
|
+
_selected.value = val;
|
29779
|
+
model.value = val;
|
29780
|
+
}
|
29781
|
+
});
|
29738
29782
|
const vListRef = ref();
|
29739
29783
|
const opened = computed(() => props.openAll ? openAll(items.value) : props.opened);
|
29740
29784
|
const flatItems = computed(() => flatten(items.value));
|
@@ -30325,7 +30369,7 @@ function createVuetify$1() {
|
|
30325
30369
|
goTo
|
30326
30370
|
};
|
30327
30371
|
}
|
30328
|
-
const version$1 = "3.7.0-beta.1-dev.2024-
|
30372
|
+
const version$1 = "3.7.0-beta.1-dev.2024-08-08";
|
30329
30373
|
createVuetify$1.version = version$1;
|
30330
30374
|
|
30331
30375
|
// Vue's inject() can only be used in setup
|
@@ -30578,7 +30622,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
30578
30622
|
|
30579
30623
|
/* eslint-disable local-rules/sort-imports */
|
30580
30624
|
|
30581
|
-
const version = "3.7.0-beta.1-dev.2024-
|
30625
|
+
const version = "3.7.0-beta.1-dev.2024-08-08";
|
30582
30626
|
|
30583
30627
|
/* eslint-disable local-rules/sort-imports */
|
30584
30628
|
|