@vuetify/nightly 3.8.6-master.2025-05-21 → 3.8.6-master.2025-05-23
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 +13 -3
- package/dist/json/attributes.json +3362 -3362
- package/dist/json/importMap-labs.json +18 -18
- package/dist/json/importMap.json +182 -182
- package/dist/json/web-types.json +6228 -6228
- package/dist/vuetify-labs.cjs +71 -13
- package/dist/vuetify-labs.css +5702 -5702
- package/dist/vuetify-labs.d.ts +63 -63
- package/dist/vuetify-labs.esm.js +71 -13
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +71 -13
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +71 -13
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +4058 -4058
- package/dist/vuetify.d.ts +63 -63
- package/dist/vuetify.esm.js +71 -13
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +71 -13
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +12 -7
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VNumberInput/VNumberInput.js +12 -4
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VOverlay/locationStrategies.js +16 -8
- package/lib/components/VOverlay/locationStrategies.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +63 -63
- package/lib/framework.js +1 -1
- package/lib/util/box.d.ts +1 -0
- package/lib/util/box.js +27 -0
- package/lib/util/box.js.map +1 -1
- package/lib/util/helpers.d.ts +1 -0
- package/lib/util/helpers.js +15 -0
- package/lib/util/helpers.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.6-master.2025-05-
|
2
|
+
* Vuetify v3.8.6-master.2025-05-23
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -591,6 +591,21 @@
|
|
591
591
|
function isPrimitive(value) {
|
592
592
|
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint';
|
593
593
|
}
|
594
|
+
function extractNumber(text, decimalDigitsLimit) {
|
595
|
+
const cleanText = text.split('').filter(x => /[\d\-.]/.test(x)).filter((x, i, all) => i === 0 && /[-]/.test(x) ||
|
596
|
+
// sign allowed at the start
|
597
|
+
x === '.' && i === all.indexOf('.') ||
|
598
|
+
// decimal separator allowed only once
|
599
|
+
/\d/.test(x)).join('');
|
600
|
+
if (decimalDigitsLimit === 0) {
|
601
|
+
return cleanText.split('.')[0];
|
602
|
+
}
|
603
|
+
if (decimalDigitsLimit !== null && /\.\d/.test(cleanText)) {
|
604
|
+
const parts = cleanText.split('.');
|
605
|
+
return [parts[0], parts[1].substring(0, decimalDigitsLimit)].join('.');
|
606
|
+
}
|
607
|
+
return cleanText;
|
608
|
+
}
|
594
609
|
|
595
610
|
// Utilities
|
596
611
|
const block = ['top', 'bottom'];
|
@@ -695,6 +710,33 @@
|
|
695
710
|
return target.getBoundingClientRect();
|
696
711
|
}
|
697
712
|
}
|
713
|
+
function getElementBox(el) {
|
714
|
+
if (el === document.documentElement) {
|
715
|
+
if (!visualViewport) {
|
716
|
+
return new Box({
|
717
|
+
x: 0,
|
718
|
+
y: 0,
|
719
|
+
width: document.documentElement.clientWidth,
|
720
|
+
height: document.documentElement.clientHeight
|
721
|
+
});
|
722
|
+
} else {
|
723
|
+
return new Box({
|
724
|
+
x: visualViewport.scale > 1 ? 0 : visualViewport.offsetLeft,
|
725
|
+
y: visualViewport.scale > 1 ? 0 : visualViewport.offsetTop,
|
726
|
+
width: visualViewport.width * visualViewport.scale,
|
727
|
+
height: visualViewport.height * visualViewport.scale
|
728
|
+
});
|
729
|
+
}
|
730
|
+
} else {
|
731
|
+
const rect = el.getBoundingClientRect();
|
732
|
+
return new Box({
|
733
|
+
x: rect.x,
|
734
|
+
y: rect.y,
|
735
|
+
width: el.clientWidth,
|
736
|
+
height: el.clientHeight
|
737
|
+
});
|
738
|
+
}
|
739
|
+
}
|
698
740
|
|
699
741
|
// Utilities
|
700
742
|
|
@@ -10000,11 +10042,19 @@
|
|
10000
10042
|
vue.watch(() => props.locationStrategy, reset);
|
10001
10043
|
vue.onScopeDispose(() => {
|
10002
10044
|
window.removeEventListener('resize', onResize);
|
10045
|
+
visualViewport?.removeEventListener('resize', onVisualResize);
|
10046
|
+
visualViewport?.removeEventListener('scroll', onVisualScroll);
|
10003
10047
|
updateLocation.value = undefined;
|
10004
10048
|
});
|
10005
10049
|
window.addEventListener('resize', onResize, {
|
10006
10050
|
passive: true
|
10007
10051
|
});
|
10052
|
+
visualViewport?.addEventListener('resize', onVisualResize, {
|
10053
|
+
passive: true
|
10054
|
+
});
|
10055
|
+
visualViewport?.addEventListener('scroll', onVisualScroll, {
|
10056
|
+
passive: true
|
10057
|
+
});
|
10008
10058
|
if (typeof props.locationStrategy === 'function') {
|
10009
10059
|
updateLocation.value = props.locationStrategy(data, props, contentStyles)?.updateLocation;
|
10010
10060
|
} else {
|
@@ -10015,6 +10065,12 @@
|
|
10015
10065
|
function onResize(e) {
|
10016
10066
|
updateLocation.value?.(e);
|
10017
10067
|
}
|
10068
|
+
function onVisualResize(e) {
|
10069
|
+
updateLocation.value?.(e);
|
10070
|
+
}
|
10071
|
+
function onVisualScroll(e) {
|
10072
|
+
updateLocation.value?.(e);
|
10073
|
+
}
|
10018
10074
|
return {
|
10019
10075
|
contentStyles,
|
10020
10076
|
updateLocation
|
@@ -10166,13 +10222,7 @@
|
|
10166
10222
|
}
|
10167
10223
|
}
|
10168
10224
|
const viewport = scrollParents.reduce((box, el) => {
|
10169
|
-
const
|
10170
|
-
const scrollBox = new Box({
|
10171
|
-
x: el === document.documentElement ? 0 : rect.x,
|
10172
|
-
y: el === document.documentElement ? 0 : rect.y,
|
10173
|
-
width: el.clientWidth,
|
10174
|
-
height: el.clientHeight
|
10175
|
-
});
|
10225
|
+
const scrollBox = getElementBox(el);
|
10176
10226
|
if (box) {
|
10177
10227
|
return new Box({
|
10178
10228
|
x: Math.max(box.left, scrollBox.left),
|
@@ -24862,25 +24912,33 @@
|
|
24862
24912
|
}
|
24863
24913
|
function onBeforeinput(e) {
|
24864
24914
|
if (!e.data) return;
|
24865
|
-
const
|
24866
|
-
const
|
24867
|
-
|
24915
|
+
const inputElement = e.target;
|
24916
|
+
const {
|
24917
|
+
value: existingTxt,
|
24918
|
+
selectionStart,
|
24919
|
+
selectionEnd
|
24920
|
+
} = inputElement ?? {};
|
24868
24921
|
const potentialNewInputVal = existingTxt ? existingTxt.slice(0, selectionStart) + e.data + existingTxt.slice(selectionEnd) : e.data;
|
24922
|
+
const potentialNewNumber = extractNumber(potentialNewInputVal, props.precision);
|
24923
|
+
|
24869
24924
|
// Only numbers, "-", "." are allowed
|
24870
24925
|
// AND "-", "." are allowed only once
|
24871
24926
|
// AND "-" is only allowed at the start
|
24872
24927
|
if (!/^-?(\d+(\.\d*)?|(\.\d+)|\d*|\.)$/.test(potentialNewInputVal)) {
|
24873
24928
|
e.preventDefault();
|
24929
|
+
inputElement.value = potentialNewNumber;
|
24874
24930
|
}
|
24875
24931
|
if (props.precision == null) return;
|
24876
24932
|
|
24877
24933
|
// Ignore decimal digits above precision limit
|
24878
24934
|
if (potentialNewInputVal.split('.')[1]?.length > props.precision) {
|
24879
24935
|
e.preventDefault();
|
24936
|
+
inputElement.value = potentialNewNumber;
|
24880
24937
|
}
|
24881
24938
|
// Ignore decimal separator when precision = 0
|
24882
24939
|
if (props.precision === 0 && potentialNewInputVal.includes('.')) {
|
24883
24940
|
e.preventDefault();
|
24941
|
+
inputElement.value = potentialNewNumber;
|
24884
24942
|
}
|
24885
24943
|
}
|
24886
24944
|
async function onKeydown(e) {
|
@@ -31954,7 +32012,7 @@
|
|
31954
32012
|
};
|
31955
32013
|
});
|
31956
32014
|
}
|
31957
|
-
const version$1 = "3.8.6-master.2025-05-
|
32015
|
+
const version$1 = "3.8.6-master.2025-05-23";
|
31958
32016
|
createVuetify$1.version = version$1;
|
31959
32017
|
|
31960
32018
|
// Vue's inject() can only be used in setup
|
@@ -32252,7 +32310,7 @@
|
|
32252
32310
|
|
32253
32311
|
/* eslint-disable local-rules/sort-imports */
|
32254
32312
|
|
32255
|
-
const version = "3.8.6-master.2025-05-
|
32313
|
+
const version = "3.8.6-master.2025-05-23";
|
32256
32314
|
|
32257
32315
|
/* eslint-disable local-rules/sort-imports */
|
32258
32316
|
|