@vuetify/nightly 3.8.9-master.2025-06-13 → 3.8.9-master.2025-06-17
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 +9 -3
- package/dist/json/attributes.json +3382 -3382
- package/dist/json/importMap-labs.json +24 -24
- package/dist/json/importMap.json +166 -166
- package/dist/json/web-types.json +6389 -6389
- package/dist/vuetify-labs.cjs +39 -14
- package/dist/vuetify-labs.css +3161 -3157
- package/dist/vuetify-labs.d.ts +65 -65
- package/dist/vuetify-labs.esm.js +39 -14
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +39 -14
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +38 -14
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3844 -3840
- package/dist/vuetify.d.ts +65 -65
- package/dist/vuetify.esm.js +38 -14
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +38 -14
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +372 -371
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VBtnGroup/VBtnGroup.css +2 -1
- package/lib/components/VBtnGroup/VBtnGroup.sass +2 -1
- package/lib/components/VDataTable/VDataTable.css +6 -3
- package/lib/components/VDataTable/VDataTable.sass +4 -2
- package/lib/components/VOtpInput/VOtpInput.js +17 -1
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +4 -4
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.js +4 -4
- package/lib/components/VTextarea/VTextarea.js.map +1 -1
- package/lib/composables/autofocus.d.ts +7 -0
- package/lib/composables/autofocus.js +10 -0
- package/lib/composables/autofocus.js.map +1 -0
- package/lib/composables/group.js +1 -0
- package/lib/composables/group.js.map +1 -1
- package/lib/composables/hotkey.js +17 -17
- package/lib/composables/hotkey.js.map +1 -1
- package/lib/composables/intersectionObserver.js +2 -2
- package/lib/composables/intersectionObserver.js.map +1 -1
- package/lib/composables/selectLink.js +2 -2
- package/lib/composables/selectLink.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +65 -65
- package/lib/framework.js +1 -1
- package/lib/labs/VFileUpload/VFileUploadItem.js +1 -0
- package/lib/labs/VFileUpload/VFileUploadItem.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.cjs
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.9-master.2025-06-
|
2
|
+
* Vuetify v3.8.9-master.2025-06-17
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -4404,6 +4404,7 @@
|
|
4404
4404
|
} else {
|
4405
4405
|
const isSelected = selected.value.includes(id);
|
4406
4406
|
if (props.mandatory && isSelected) return;
|
4407
|
+
if (!isSelected && !value) return;
|
4407
4408
|
selected.value = value ?? !isSelected ? [id] : [];
|
4408
4409
|
}
|
4409
4410
|
}
|
@@ -4838,7 +4839,7 @@
|
|
4838
4839
|
const observer = new IntersectionObserver(entries => {
|
4839
4840
|
isIntersecting.value = !!entries.find(entry => entry.isIntersecting);
|
4840
4841
|
}, options);
|
4841
|
-
vue.
|
4842
|
+
vue.onScopeDispose(() => {
|
4842
4843
|
observer.disconnect();
|
4843
4844
|
});
|
4844
4845
|
vue.watch(intersectionRef, (newValue, oldValue) => {
|
@@ -5369,9 +5370,9 @@
|
|
5369
5370
|
|
5370
5371
|
function useSelectLink(link, select) {
|
5371
5372
|
vue.watch(() => link.isActive?.value, isActive => {
|
5372
|
-
if (link.isLink.value && isActive && select) {
|
5373
|
+
if (link.isLink.value && isActive != null && select) {
|
5373
5374
|
vue.nextTick(() => {
|
5374
|
-
select(
|
5375
|
+
select(isActive);
|
5375
5376
|
});
|
5376
5377
|
}
|
5377
5378
|
}, {
|
@@ -12068,6 +12069,16 @@
|
|
12068
12069
|
}
|
12069
12070
|
});
|
12070
12071
|
|
12072
|
+
function useAutofocus(props) {
|
12073
|
+
function onIntersect(isIntersecting, entries) {
|
12074
|
+
if (!props.autofocus || !isIntersecting) return;
|
12075
|
+
entries[0].target?.focus?.();
|
12076
|
+
}
|
12077
|
+
return {
|
12078
|
+
onIntersect
|
12079
|
+
};
|
12080
|
+
}
|
12081
|
+
|
12071
12082
|
// Types
|
12072
12083
|
|
12073
12084
|
const activeTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month'];
|
@@ -12114,6 +12125,9 @@
|
|
12114
12125
|
focus,
|
12115
12126
|
blur
|
12116
12127
|
} = useFocus(props);
|
12128
|
+
const {
|
12129
|
+
onIntersect
|
12130
|
+
} = useAutofocus(props);
|
12117
12131
|
const counterValue = vue.computed(() => {
|
12118
12132
|
return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : (model.value ?? '').toString().length;
|
12119
12133
|
});
|
@@ -12123,10 +12137,6 @@
|
|
12123
12137
|
return props.counter;
|
12124
12138
|
});
|
12125
12139
|
const isPlainOrUnderlined = vue.computed(() => ['plain', 'underlined'].includes(props.variant));
|
12126
|
-
function onIntersect(isIntersecting, entries) {
|
12127
|
-
if (!props.autofocus || !isIntersecting) return;
|
12128
|
-
entries[0].target?.focus?.();
|
12129
|
-
}
|
12130
12140
|
const vInputRef = vue.ref();
|
12131
12141
|
const vFieldRef = vue.ref();
|
12132
12142
|
const inputRef = vue.ref();
|
@@ -25372,6 +25382,21 @@
|
|
25372
25382
|
const contentRef = vue.ref();
|
25373
25383
|
const inputRef = vue.ref([]);
|
25374
25384
|
const current = vue.computed(() => inputRef.value[focusIndex.value]);
|
25385
|
+
const intersectScope = vue.effectScope();
|
25386
|
+
intersectScope.run(() => {
|
25387
|
+
const {
|
25388
|
+
intersectionRef,
|
25389
|
+
isIntersecting
|
25390
|
+
} = useIntersectionObserver();
|
25391
|
+
vue.watch(isIntersecting, v => {
|
25392
|
+
if (!v) return;
|
25393
|
+
intersectionRef.value?.focus();
|
25394
|
+
intersectScope.stop();
|
25395
|
+
});
|
25396
|
+
vue.watchEffect(() => {
|
25397
|
+
intersectionRef.value = inputRef.value[0];
|
25398
|
+
});
|
25399
|
+
});
|
25375
25400
|
function onInput() {
|
25376
25401
|
// The maxlength attribute doesn't work for the number type input, so the text type is used.
|
25377
25402
|
// The following logic simulates the behavior of a number input.
|
@@ -28118,6 +28143,9 @@
|
|
28118
28143
|
focus,
|
28119
28144
|
blur
|
28120
28145
|
} = useFocus(props);
|
28146
|
+
const {
|
28147
|
+
onIntersect
|
28148
|
+
} = useAutofocus(props);
|
28121
28149
|
const counterValue = vue.computed(() => {
|
28122
28150
|
return typeof props.counterValue === 'function' ? props.counterValue(model.value) : (model.value || '').toString().length;
|
28123
28151
|
});
|
@@ -28126,10 +28154,6 @@
|
|
28126
28154
|
if (!props.counter || typeof props.counter !== 'number' && typeof props.counter !== 'string') return undefined;
|
28127
28155
|
return props.counter;
|
28128
28156
|
});
|
28129
|
-
function onIntersect(isIntersecting, entries) {
|
28130
|
-
if (!props.autofocus || !isIntersecting) return;
|
28131
|
-
entries[0].target?.focus?.();
|
28132
|
-
}
|
28133
28157
|
const vInputRef = vue.ref();
|
28134
28158
|
const vFieldRef = vue.ref();
|
28135
28159
|
const controlHeight = vue.shallowRef('');
|
@@ -29846,6 +29870,7 @@
|
|
29846
29870
|
"class": "v-file-upload-item"
|
29847
29871
|
}), {
|
29848
29872
|
...slots,
|
29873
|
+
title: () => props?.title ?? props.file?.name,
|
29849
29874
|
prepend: slotProps => vue.createElementVNode(vue.Fragment, null, [!slots.prepend ? vue.createVNode(VAvatar, {
|
29850
29875
|
"icon": props.fileIcon,
|
29851
29876
|
"image": preview.value,
|
@@ -32174,7 +32199,7 @@
|
|
32174
32199
|
};
|
32175
32200
|
});
|
32176
32201
|
}
|
32177
|
-
const version$1 = "3.8.9-master.2025-06-
|
32202
|
+
const version$1 = "3.8.9-master.2025-06-17";
|
32178
32203
|
createVuetify$1.version = version$1;
|
32179
32204
|
|
32180
32205
|
// Vue's inject() can only be used in setup
|
@@ -32472,7 +32497,7 @@
|
|
32472
32497
|
|
32473
32498
|
/* eslint-disable local-rules/sort-imports */
|
32474
32499
|
|
32475
|
-
const version = "3.8.9-master.2025-06-
|
32500
|
+
const version = "3.8.9-master.2025-06-17";
|
32476
32501
|
|
32477
32502
|
/* eslint-disable local-rules/sort-imports */
|
32478
32503
|
|