vuetify 3.7.11 → 3.7.12
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 +2977 -2989
- package/dist/json/importMap-labs.json +24 -24
- package/dist/json/importMap.json +160 -160
- package/dist/json/tags.json +0 -3
- package/dist/json/web-types.json +5639 -5666
- package/dist/vuetify-labs.css +4359 -4358
- package/dist/vuetify-labs.d.ts +90 -165
- package/dist/vuetify-labs.esm.js +134 -58
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +134 -58
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +5092 -5091
- package/dist/vuetify.d.ts +130 -190
- package/dist/vuetify.esm.js +119 -52
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +119 -52
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1041 -1028
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +2 -2
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +25 -47
- package/lib/components/VCombobox/VCombobox.mjs +3 -3
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +25 -47
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +2 -2
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VDatePicker/index.d.mts +12 -24
- package/lib/components/VList/VList.mjs +1 -4
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +7 -16
- package/lib/components/VOverlay/VOverlay.css +2 -1
- package/lib/components/VOverlay/VOverlay.sass +2 -1
- package/lib/components/VOverlay/_variables.scss +1 -1
- package/lib/components/VSelect/VSelect.mjs +4 -4
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +25 -47
- package/lib/components/VSlider/slider.mjs +25 -12
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/index.d.mts +73 -133
- package/lib/composables/calendar.mjs.map +1 -1
- package/lib/composables/list-items.mjs +70 -17
- package/lib/composables/list-items.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +6 -7
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/directives/ripple/index.mjs +7 -5
- package/lib/directives/ripple/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +57 -57
- package/lib/labs/VDateInput/VDateInput.mjs +17 -7
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VDateInput/index.d.mts +11 -17
- package/lib/labs/VTreeview/index.d.mts +7 -16
- package/lib/labs/components.d.mts +18 -33
- package/lib/util/helpers.mjs +3 -0
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +2 -2
package/dist/vuetify.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.7.
|
|
2
|
+
* Vuetify v3.7.12
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -500,6 +500,9 @@ function checkPrintable(e) {
|
|
|
500
500
|
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
|
501
501
|
return isPrintableChar && noModifier;
|
|
502
502
|
}
|
|
503
|
+
function isPrimitive(value) {
|
|
504
|
+
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint';
|
|
505
|
+
}
|
|
503
506
|
|
|
504
507
|
// Utilities
|
|
505
508
|
const block = ['top', 'bottom'];
|
|
@@ -5578,11 +5581,13 @@ const ripples = {
|
|
|
5578
5581
|
animation.classList.add('v-ripple__animation--visible');
|
|
5579
5582
|
transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`);
|
|
5580
5583
|
animation.dataset.activated = String(performance.now());
|
|
5581
|
-
|
|
5582
|
-
|
|
5583
|
-
|
|
5584
|
-
|
|
5585
|
-
|
|
5584
|
+
requestAnimationFrame(() => {
|
|
5585
|
+
requestAnimationFrame(() => {
|
|
5586
|
+
animation.classList.remove('v-ripple__animation--enter');
|
|
5587
|
+
animation.classList.add('v-ripple__animation--in');
|
|
5588
|
+
transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`);
|
|
5589
|
+
});
|
|
5590
|
+
});
|
|
5586
5591
|
},
|
|
5587
5592
|
hide(el) {
|
|
5588
5593
|
if (!el?._ripple?.enabled) return;
|
|
@@ -8577,12 +8582,12 @@ const independentSelectStrategy = mandatory => {
|
|
|
8577
8582
|
return selected;
|
|
8578
8583
|
},
|
|
8579
8584
|
in: (v, children, parents) => {
|
|
8580
|
-
|
|
8585
|
+
const map = new Map();
|
|
8581
8586
|
for (const id of v || []) {
|
|
8582
|
-
|
|
8587
|
+
strategy.select({
|
|
8583
8588
|
id,
|
|
8584
8589
|
value: true,
|
|
8585
|
-
selected:
|
|
8590
|
+
selected: map,
|
|
8586
8591
|
children,
|
|
8587
8592
|
parents
|
|
8588
8593
|
});
|
|
@@ -8617,11 +8622,10 @@ const independentSingleSelectStrategy = mandatory => {
|
|
|
8617
8622
|
});
|
|
8618
8623
|
},
|
|
8619
8624
|
in: (v, children, parents) => {
|
|
8620
|
-
let map = new Map();
|
|
8621
8625
|
if (v?.length) {
|
|
8622
|
-
|
|
8626
|
+
return parentStrategy.in(v.slice(0, 1), children, parents);
|
|
8623
8627
|
}
|
|
8624
|
-
return
|
|
8628
|
+
return new Map();
|
|
8625
8629
|
},
|
|
8626
8630
|
out: (v, children, parents) => {
|
|
8627
8631
|
return parentStrategy.out(v, children, parents);
|
|
@@ -8724,7 +8728,7 @@ const classicSelectStrategy = mandatory => {
|
|
|
8724
8728
|
map = strategy.select({
|
|
8725
8729
|
id,
|
|
8726
8730
|
value: true,
|
|
8727
|
-
selected:
|
|
8731
|
+
selected: map,
|
|
8728
8732
|
children,
|
|
8729
8733
|
parents
|
|
8730
8734
|
});
|
|
@@ -9608,10 +9612,7 @@ const makeItemsProps = propsFactory({
|
|
|
9608
9612
|
default: 'props'
|
|
9609
9613
|
},
|
|
9610
9614
|
returnObject: Boolean,
|
|
9611
|
-
valueComparator:
|
|
9612
|
-
type: Function,
|
|
9613
|
-
default: deepEqual
|
|
9614
|
-
}
|
|
9615
|
+
valueComparator: Function
|
|
9615
9616
|
}, 'list-items');
|
|
9616
9617
|
function transformItem$3(props, item) {
|
|
9617
9618
|
const title = getPropertyFromItem(item, props.itemTitle, item);
|
|
@@ -9632,29 +9633,85 @@ function transformItem$3(props, item) {
|
|
|
9632
9633
|
};
|
|
9633
9634
|
}
|
|
9634
9635
|
function transformItems$3(props, items) {
|
|
9636
|
+
const _props = pick(props, ['itemTitle', 'itemValue', 'itemChildren', 'itemProps', 'returnObject', 'valueComparator']);
|
|
9635
9637
|
const array = [];
|
|
9636
9638
|
for (const item of items) {
|
|
9637
|
-
array.push(transformItem$3(
|
|
9639
|
+
array.push(transformItem$3(_props, item));
|
|
9638
9640
|
}
|
|
9639
9641
|
return array;
|
|
9640
9642
|
}
|
|
9641
9643
|
function useItems(props) {
|
|
9642
9644
|
const items = computed(() => transformItems$3(props, props.items));
|
|
9643
9645
|
const hasNullItem = computed(() => items.value.some(item => item.value === null));
|
|
9646
|
+
const itemsMap = shallowRef(new Map());
|
|
9647
|
+
const keylessItems = shallowRef([]);
|
|
9648
|
+
watchEffect(() => {
|
|
9649
|
+
const _items = items.value;
|
|
9650
|
+
const map = new Map();
|
|
9651
|
+
const keyless = [];
|
|
9652
|
+
for (let i = 0; i < _items.length; i++) {
|
|
9653
|
+
const item = _items[i];
|
|
9654
|
+
if (isPrimitive(item.value) || item.value === null) {
|
|
9655
|
+
let values = map.get(item.value);
|
|
9656
|
+
if (!values) {
|
|
9657
|
+
values = [];
|
|
9658
|
+
map.set(item.value, values);
|
|
9659
|
+
}
|
|
9660
|
+
values.push(item);
|
|
9661
|
+
} else {
|
|
9662
|
+
keyless.push(item);
|
|
9663
|
+
}
|
|
9664
|
+
}
|
|
9665
|
+
itemsMap.value = map;
|
|
9666
|
+
keylessItems.value = keyless;
|
|
9667
|
+
});
|
|
9644
9668
|
function transformIn(value) {
|
|
9645
|
-
|
|
9669
|
+
// Cache unrefed values outside the loop,
|
|
9670
|
+
// proxy getters can be slow when you call them a billion times
|
|
9671
|
+
const _value = toRaw(value);
|
|
9672
|
+
const _items = itemsMap.value;
|
|
9673
|
+
const _allItems = items.value;
|
|
9674
|
+
const _keylessItems = keylessItems.value;
|
|
9675
|
+
const _hasNullItem = hasNullItem.value;
|
|
9676
|
+
const _returnObject = props.returnObject;
|
|
9677
|
+
const hasValueComparator = !!props.valueComparator;
|
|
9678
|
+
const valueComparator = props.valueComparator || deepEqual;
|
|
9679
|
+
const _props = pick(props, ['itemTitle', 'itemValue', 'itemChildren', 'itemProps', 'returnObject', 'valueComparator']);
|
|
9680
|
+
const returnValue = [];
|
|
9681
|
+
main: for (const v of _value) {
|
|
9646
9682
|
// When the model value is null, return an InternalItem
|
|
9647
9683
|
// based on null only if null is one of the items
|
|
9648
|
-
|
|
9649
|
-
|
|
9650
|
-
|
|
9651
|
-
if
|
|
9652
|
-
|
|
9653
|
-
|
|
9654
|
-
|
|
9684
|
+
if (!_hasNullItem && v === null) continue;
|
|
9685
|
+
|
|
9686
|
+
// String model value means value is a custom input value from combobox
|
|
9687
|
+
// Don't look up existing items if the model value is a string
|
|
9688
|
+
if (_returnObject && typeof v === 'string') {
|
|
9689
|
+
returnValue.push(transformItem$3(_props, v));
|
|
9690
|
+
continue;
|
|
9655
9691
|
}
|
|
9656
|
-
|
|
9657
|
-
|
|
9692
|
+
|
|
9693
|
+
// Fast path, items with primitive values and no
|
|
9694
|
+
// custom valueComparator can use a constant-time
|
|
9695
|
+
// map lookup instead of searching the items array
|
|
9696
|
+
const fastItems = _items.get(v);
|
|
9697
|
+
|
|
9698
|
+
// Slow path, always use valueComparator.
|
|
9699
|
+
// This is O(n^2) so we really don't want to
|
|
9700
|
+
// do it for more than a couple hundred items.
|
|
9701
|
+
if (hasValueComparator || !fastItems) {
|
|
9702
|
+
for (const item of hasValueComparator ? _allItems : _keylessItems) {
|
|
9703
|
+
if (valueComparator(v, item.value)) {
|
|
9704
|
+
returnValue.push(item);
|
|
9705
|
+
continue main;
|
|
9706
|
+
}
|
|
9707
|
+
}
|
|
9708
|
+
// Not an existing item, construct it from the model (#4000)
|
|
9709
|
+
returnValue.push(transformItem$3(_props, v));
|
|
9710
|
+
continue;
|
|
9711
|
+
}
|
|
9712
|
+
returnValue.push(...fastItems);
|
|
9713
|
+
}
|
|
9714
|
+
return returnValue;
|
|
9658
9715
|
}
|
|
9659
9716
|
function transformOut(value) {
|
|
9660
9717
|
return props.returnObject ? value.map(_ref => {
|
|
@@ -9678,9 +9735,6 @@ function useItems(props) {
|
|
|
9678
9735
|
|
|
9679
9736
|
// Types
|
|
9680
9737
|
|
|
9681
|
-
function isPrimitive(value) {
|
|
9682
|
-
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';
|
|
9683
|
-
}
|
|
9684
9738
|
function transformItem$2(props, item) {
|
|
9685
9739
|
const type = getPropertyFromItem(item, props.itemType, 'item');
|
|
9686
9740
|
const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle);
|
|
@@ -12729,7 +12783,7 @@ const VSelect = genericComponent()({
|
|
|
12729
12783
|
let keyboardLookupLastTime;
|
|
12730
12784
|
const displayItems = computed(() => {
|
|
12731
12785
|
if (props.hideSelected) {
|
|
12732
|
-
return items.value.filter(item => !model.value.some(s => props.valueComparator(s, item)));
|
|
12786
|
+
return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)));
|
|
12733
12787
|
}
|
|
12734
12788
|
return items.value;
|
|
12735
12789
|
});
|
|
@@ -12801,7 +12855,7 @@ const VSelect = genericComponent()({
|
|
|
12801
12855
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
12802
12856
|
if (item.props.disabled) return;
|
|
12803
12857
|
if (props.multiple) {
|
|
12804
|
-
const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value));
|
|
12858
|
+
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
12805
12859
|
const add = set == null ? !~index : set;
|
|
12806
12860
|
if (~index) {
|
|
12807
12861
|
const value = add ? [...model.value, item] : [...model.value];
|
|
@@ -12848,7 +12902,7 @@ const VSelect = genericComponent()({
|
|
|
12848
12902
|
}
|
|
12849
12903
|
watch(menu, () => {
|
|
12850
12904
|
if (!props.hideSelected && menu.value && model.value.length) {
|
|
12851
|
-
const index = displayItems.value.findIndex(item => model.value.some(s => props.valueComparator(s.value, item.value)));
|
|
12905
|
+
const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
|
|
12852
12906
|
IN_BROWSER && window.requestAnimationFrame(() => {
|
|
12853
12907
|
index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
|
|
12854
12908
|
});
|
|
@@ -13380,7 +13434,7 @@ const VAutocomplete = genericComponent()({
|
|
|
13380
13434
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
13381
13435
|
if (!item || item.props.disabled) return;
|
|
13382
13436
|
if (props.multiple) {
|
|
13383
|
-
const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value));
|
|
13437
|
+
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
13384
13438
|
const add = set == null ? !~index : set;
|
|
13385
13439
|
if (~index) {
|
|
13386
13440
|
const value = add ? [...model.value, item] : [...model.value];
|
|
@@ -15769,6 +15823,8 @@ const useSlider = _ref => {
|
|
|
15769
15823
|
const trackContainerRef = ref();
|
|
15770
15824
|
const activeThumbRef = ref();
|
|
15771
15825
|
function parseMouseMove(e) {
|
|
15826
|
+
const el = trackContainerRef.value?.$el;
|
|
15827
|
+
if (!el) return;
|
|
15772
15828
|
const vertical = props.direction === 'vertical';
|
|
15773
15829
|
const start = vertical ? 'top' : 'left';
|
|
15774
15830
|
const length = vertical ? 'height' : 'width';
|
|
@@ -15776,7 +15832,7 @@ const useSlider = _ref => {
|
|
|
15776
15832
|
const {
|
|
15777
15833
|
[start]: trackStart,
|
|
15778
15834
|
[length]: trackLength
|
|
15779
|
-
} =
|
|
15835
|
+
} = el.getBoundingClientRect();
|
|
15780
15836
|
const clickOffset = getPosition(e, position);
|
|
15781
15837
|
|
|
15782
15838
|
// It is possible for left to be NaN, force to number
|
|
@@ -15785,13 +15841,17 @@ const useSlider = _ref => {
|
|
|
15785
15841
|
return roundValue(min.value + clickPos * (max.value - min.value));
|
|
15786
15842
|
}
|
|
15787
15843
|
const handleStop = e => {
|
|
15788
|
-
|
|
15789
|
-
|
|
15790
|
-
|
|
15844
|
+
const value = parseMouseMove(e);
|
|
15845
|
+
if (value != null) {
|
|
15846
|
+
onSliderEnd({
|
|
15847
|
+
value
|
|
15848
|
+
});
|
|
15849
|
+
}
|
|
15791
15850
|
mousePressed.value = false;
|
|
15792
15851
|
startOffset.value = 0;
|
|
15793
15852
|
};
|
|
15794
15853
|
const handleStart = e => {
|
|
15854
|
+
const value = parseMouseMove(e);
|
|
15795
15855
|
activeThumbRef.value = getActiveThumb(e);
|
|
15796
15856
|
if (!activeThumbRef.value) return;
|
|
15797
15857
|
mousePressed.value = true;
|
|
@@ -15799,13 +15859,17 @@ const useSlider = _ref => {
|
|
|
15799
15859
|
startOffset.value = getOffset(e, activeThumbRef.value, props.direction);
|
|
15800
15860
|
} else {
|
|
15801
15861
|
startOffset.value = 0;
|
|
15802
|
-
|
|
15803
|
-
|
|
15862
|
+
if (value != null) {
|
|
15863
|
+
onSliderMove({
|
|
15864
|
+
value
|
|
15865
|
+
});
|
|
15866
|
+
}
|
|
15867
|
+
}
|
|
15868
|
+
if (value != null) {
|
|
15869
|
+
onSliderStart({
|
|
15870
|
+
value
|
|
15804
15871
|
});
|
|
15805
15872
|
}
|
|
15806
|
-
onSliderStart({
|
|
15807
|
-
value: parseMouseMove(e)
|
|
15808
|
-
});
|
|
15809
15873
|
nextTick(() => activeThumbRef.value?.focus());
|
|
15810
15874
|
};
|
|
15811
15875
|
const moveListenerOptions = {
|
|
@@ -15813,9 +15877,12 @@ const useSlider = _ref => {
|
|
|
15813
15877
|
capture: true
|
|
15814
15878
|
};
|
|
15815
15879
|
function onMouseMove(e) {
|
|
15816
|
-
|
|
15817
|
-
|
|
15818
|
-
|
|
15880
|
+
const value = parseMouseMove(e);
|
|
15881
|
+
if (value != null) {
|
|
15882
|
+
onSliderMove({
|
|
15883
|
+
value
|
|
15884
|
+
});
|
|
15885
|
+
}
|
|
15819
15886
|
}
|
|
15820
15887
|
function onSliderMouseUp(e) {
|
|
15821
15888
|
e.stopPropagation();
|
|
@@ -17254,7 +17321,7 @@ const VCombobox = genericComponent()({
|
|
|
17254
17321
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
17255
17322
|
if (!item || item.props.disabled) return;
|
|
17256
17323
|
if (props.multiple) {
|
|
17257
|
-
const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value));
|
|
17324
|
+
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
17258
17325
|
const add = set == null ? !~index : set;
|
|
17259
17326
|
if (~index) {
|
|
17260
17327
|
const value = add ? [...model.value, item] : [...model.value];
|
|
@@ -17314,7 +17381,7 @@ const VCombobox = genericComponent()({
|
|
|
17314
17381
|
});
|
|
17315
17382
|
watch(menu, () => {
|
|
17316
17383
|
if (!props.hideSelected && menu.value && model.value.length) {
|
|
17317
|
-
const index = displayItems.value.findIndex(item => model.value.some(s => props.valueComparator(s.value, item.value)));
|
|
17384
|
+
const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
|
|
17318
17385
|
IN_BROWSER && window.requestAnimationFrame(() => {
|
|
17319
17386
|
index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
|
|
17320
17387
|
});
|
|
@@ -21948,7 +22015,7 @@ const makeVDatePickerMonthProps = propsFactory({
|
|
|
21948
22015
|
type: String,
|
|
21949
22016
|
default: 'picker-reverse-transition'
|
|
21950
22017
|
},
|
|
21951
|
-
...makeCalendarProps()
|
|
22018
|
+
...omit(makeCalendarProps(), ['displayValue'])
|
|
21952
22019
|
}, 'VDatePickerMonth');
|
|
21953
22020
|
const VDatePickerMonth = genericComponent()({
|
|
21954
22021
|
name: 'VDatePickerMonth',
|
|
@@ -28329,7 +28396,7 @@ function createVuetify$1() {
|
|
|
28329
28396
|
goTo
|
|
28330
28397
|
};
|
|
28331
28398
|
}
|
|
28332
|
-
const version$1 = "3.7.
|
|
28399
|
+
const version$1 = "3.7.12";
|
|
28333
28400
|
createVuetify$1.version = version$1;
|
|
28334
28401
|
|
|
28335
28402
|
// Vue's inject() can only be used in setup
|
|
@@ -28354,7 +28421,7 @@ const createVuetify = function () {
|
|
|
28354
28421
|
...options
|
|
28355
28422
|
});
|
|
28356
28423
|
};
|
|
28357
|
-
const version = "3.7.
|
|
28424
|
+
const version = "3.7.12";
|
|
28358
28425
|
createVuetify.version = version;
|
|
28359
28426
|
|
|
28360
28427
|
export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useLayout, useLocale, useRtl, useTheme, version };
|