@vuetify/nightly 3.1.2 → 3.1.3-dev-20230125.0
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 +8 -20
- package/dist/json/importMap.json +56 -56
- package/dist/vuetify-labs.css +630 -630
- package/dist/vuetify-labs.d.ts +191 -168
- package/dist/vuetify-labs.esm.js +183 -131
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +182 -130
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +954 -954
- package/dist/vuetify.d.ts +207 -184
- package/dist/vuetify.esm.js +183 -131
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +182 -130
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +725 -717
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.ts +2 -2
- package/lib/blueprints/md1.d.ts +2 -2
- package/lib/blueprints/md2.d.ts +2 -2
- package/lib/blueprints/md3.d.ts +2 -2
- package/lib/components/VAutocomplete/index.d.ts +43 -20
- package/lib/components/VCombobox/index.d.ts +43 -20
- package/lib/components/VDefaultsProvider/index.d.ts +5 -4
- package/lib/components/VDialog/VDialog.mjs +6 -5
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/index.d.ts +57 -34
- package/lib/components/VField/VField.mjs +29 -26
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VList/VList.mjs +4 -1
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs +29 -19
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.mjs +6 -5
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +57 -34
- package/lib/components/VOverlay/index.d.ts +34 -11
- package/lib/components/VOverlay/locationStrategies.mjs +40 -29
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/scrollStrategies.mjs +25 -16
- package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +43 -20
- package/lib/components/VSnackbar/index.d.ts +42 -19
- package/lib/components/VTable/VTable.css +4 -4
- package/lib/components/VTable/VTable.sass +2 -2
- package/lib/components/VTooltip/VTooltip.mjs +4 -3
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +57 -34
- package/lib/components/index.d.ts +192 -168
- package/lib/composables/defaults.mjs +1 -1
- package/lib/composables/defaults.mjs.map +1 -1
- package/lib/composables/toggleScope.mjs +14 -7
- package/lib/composables/toggleScope.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.ts +18 -18
- package/lib/util/defineComponent.mjs +21 -18
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/helpers.mjs +5 -1
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.1.
|
|
2
|
+
* Vuetify v3.1.3-dev-20230125.0
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -262,8 +262,12 @@
|
|
|
262
262
|
}
|
|
263
263
|
function toKebabCase() {
|
|
264
264
|
let str = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
265
|
-
|
|
265
|
+
if (toKebabCase.cache.has(str)) return toKebabCase.cache.get(str);
|
|
266
|
+
const kebab = str.replace(/[^a-z]/gi, '-').replace(/\B([A-Z])/g, '-$1').toLowerCase();
|
|
267
|
+
toKebabCase.cache.set(str, kebab);
|
|
268
|
+
return kebab;
|
|
266
269
|
}
|
|
270
|
+
toKebabCase.cache = new Map();
|
|
267
271
|
function findChildrenWithProvide(key, vnode) {
|
|
268
272
|
if (!vnode || typeof vnode !== 'object') return [];
|
|
269
273
|
if (Array.isArray(vnode)) {
|
|
@@ -890,7 +894,7 @@
|
|
|
890
894
|
|
|
891
895
|
const DefaultsSymbol = Symbol.for('vuetify:defaults');
|
|
892
896
|
function createDefaults(options) {
|
|
893
|
-
return vue.ref(options
|
|
897
|
+
return vue.ref(options);
|
|
894
898
|
}
|
|
895
899
|
function useDefaults() {
|
|
896
900
|
const defaults = vue.inject(DefaultsSymbol);
|
|
@@ -922,23 +926,30 @@
|
|
|
922
926
|
return newDefaults;
|
|
923
927
|
}
|
|
924
928
|
|
|
925
|
-
function useToggleScope(source,
|
|
929
|
+
function useToggleScope(source, fn) {
|
|
926
930
|
let scope;
|
|
931
|
+
function start() {
|
|
932
|
+
scope = vue.effectScope();
|
|
933
|
+
scope.run(() => fn.length ? fn(() => {
|
|
934
|
+
var _scope;
|
|
935
|
+
(_scope = scope) == null ? void 0 : _scope.stop();
|
|
936
|
+
start();
|
|
937
|
+
}) : fn());
|
|
938
|
+
}
|
|
927
939
|
vue.watch(source, active => {
|
|
928
940
|
if (active && !scope) {
|
|
929
|
-
|
|
930
|
-
scope.run(cb);
|
|
941
|
+
start();
|
|
931
942
|
} else if (!active) {
|
|
932
|
-
var
|
|
933
|
-
(
|
|
943
|
+
var _scope2;
|
|
944
|
+
(_scope2 = scope) == null ? void 0 : _scope2.stop();
|
|
934
945
|
scope = undefined;
|
|
935
946
|
}
|
|
936
947
|
}, {
|
|
937
948
|
immediate: true
|
|
938
949
|
});
|
|
939
950
|
vue.onScopeDispose(() => {
|
|
940
|
-
var
|
|
941
|
-
(
|
|
951
|
+
var _scope3;
|
|
952
|
+
(_scope3 = scope) == null ? void 0 : _scope3.stop();
|
|
942
953
|
});
|
|
943
954
|
}
|
|
944
955
|
|
|
@@ -1007,33 +1018,36 @@
|
|
|
1007
1018
|
options.props = propsFactory(options.props, toKebabCase(options.name))();
|
|
1008
1019
|
options.props._as = String;
|
|
1009
1020
|
options.setup = function setup(props, ctx) {
|
|
1010
|
-
const vm = vue.getCurrentInstance();
|
|
1011
1021
|
const defaults = useDefaults();
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1022
|
+
|
|
1023
|
+
// Skip props proxy if defaults are not provided
|
|
1024
|
+
if (!defaults.value) return options._setup(props, ctx);
|
|
1025
|
+
const vm = vue.getCurrentInstance();
|
|
1026
|
+
const componentDefaults = vue.computed(() => defaults.value[props._as ?? options.name]);
|
|
1027
|
+
const _props = new Proxy(props, {
|
|
1028
|
+
get(target, prop) {
|
|
1029
|
+
if (!propIsDefined(vm.vnode, prop)) {
|
|
1030
|
+
var _componentDefaults$va, _global;
|
|
1031
|
+
return ((_componentDefaults$va = componentDefaults.value) == null ? void 0 : _componentDefaults$va[prop]) ?? ((_global = defaults.value.global) == null ? void 0 : _global[prop]) ?? target[prop];
|
|
1032
|
+
}
|
|
1033
|
+
return Reflect.get(target, prop);
|
|
1034
|
+
}
|
|
1015
1035
|
});
|
|
1036
|
+
const _subcomponentDefaults = vue.shallowRef();
|
|
1016
1037
|
vue.watchEffect(() => {
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
if (componentDefaults) {
|
|
1020
|
-
const subComponents = Object.entries(componentDefaults).filter(_ref => {
|
|
1038
|
+
if (componentDefaults.value) {
|
|
1039
|
+
const subComponents = Object.entries(componentDefaults.value).filter(_ref => {
|
|
1021
1040
|
let [key] = _ref;
|
|
1022
1041
|
return key.startsWith(key[0].toUpperCase());
|
|
1023
1042
|
});
|
|
1024
1043
|
if (subComponents.length) _subcomponentDefaults.value = Object.fromEntries(subComponents);
|
|
1025
1044
|
}
|
|
1026
|
-
for (const prop of Object.keys(props)) {
|
|
1027
|
-
let newVal = props[prop];
|
|
1028
|
-
if (!propIsDefined(vm.vnode, prop)) {
|
|
1029
|
-
newVal = (componentDefaults == null ? void 0 : componentDefaults[prop]) ?? (globalDefaults == null ? void 0 : globalDefaults[prop]) ?? props[prop];
|
|
1030
|
-
}
|
|
1031
|
-
if (_props[prop] !== newVal) {
|
|
1032
|
-
_props[prop] = newVal;
|
|
1033
|
-
}
|
|
1034
|
-
}
|
|
1035
1045
|
});
|
|
1036
1046
|
const setupBindings = options._setup(_props, ctx);
|
|
1047
|
+
|
|
1048
|
+
// If subcomponent defaults are provided, override any
|
|
1049
|
+
// subcomponents provided by the component's setup function.
|
|
1050
|
+
// This uses injectSelf so must be done after the original setup to work.
|
|
1037
1051
|
useToggleScope(_subcomponentDefaults, () => {
|
|
1038
1052
|
var _injectSelf;
|
|
1039
1053
|
provideDefaults(mergeDeep(((_injectSelf = injectSelf(DefaultsSymbol)) == null ? void 0 : _injectSelf.value) ?? {}, _subcomponentDefaults.value));
|
|
@@ -5363,32 +5377,35 @@
|
|
|
5363
5377
|
if (hasLabel.value) {
|
|
5364
5378
|
const el = labelRef.value.$el;
|
|
5365
5379
|
const targetEl = floatingLabelRef.value.$el;
|
|
5366
|
-
|
|
5367
|
-
|
|
5368
|
-
|
|
5369
|
-
|
|
5370
|
-
|
|
5371
|
-
|
|
5372
|
-
|
|
5373
|
-
|
|
5374
|
-
|
|
5375
|
-
|
|
5376
|
-
|
|
5377
|
-
|
|
5378
|
-
|
|
5379
|
-
|
|
5380
|
-
|
|
5381
|
-
|
|
5382
|
-
|
|
5383
|
-
|
|
5384
|
-
|
|
5385
|
-
|
|
5386
|
-
|
|
5387
|
-
|
|
5388
|
-
|
|
5389
|
-
|
|
5390
|
-
|
|
5391
|
-
|
|
5380
|
+
requestAnimationFrame(() => {
|
|
5381
|
+
const rect = nullifyTransforms(el);
|
|
5382
|
+
const targetRect = targetEl.getBoundingClientRect();
|
|
5383
|
+
const x = targetRect.x - rect.x;
|
|
5384
|
+
const y = targetRect.y - rect.y - (rect.height / 2 - targetRect.height / 2);
|
|
5385
|
+
const targetWidth = targetRect.width / 0.75;
|
|
5386
|
+
const width = Math.abs(targetWidth - rect.width) > 1 ? {
|
|
5387
|
+
maxWidth: convertToUnit(targetWidth)
|
|
5388
|
+
} : undefined;
|
|
5389
|
+
const style = getComputedStyle(el);
|
|
5390
|
+
const targetStyle = getComputedStyle(targetEl);
|
|
5391
|
+
const duration = parseFloat(style.transitionDuration) * 1000 || 150;
|
|
5392
|
+
const scale = parseFloat(targetStyle.getPropertyValue('--v-field-label-scale'));
|
|
5393
|
+
const color = targetStyle.getPropertyValue('color');
|
|
5394
|
+
el.style.visibility = 'visible';
|
|
5395
|
+
targetEl.style.visibility = 'hidden';
|
|
5396
|
+
animate(el, {
|
|
5397
|
+
transform: `translate(${x}px, ${y}px) scale(${scale})`,
|
|
5398
|
+
color,
|
|
5399
|
+
...width
|
|
5400
|
+
}, {
|
|
5401
|
+
duration,
|
|
5402
|
+
easing: standardEasing,
|
|
5403
|
+
direction: val ? 'normal' : 'reverse',
|
|
5404
|
+
fill: 'both'
|
|
5405
|
+
}).finished.then(() => {
|
|
5406
|
+
el.style.removeProperty('visibility');
|
|
5407
|
+
targetEl.style.removeProperty('visibility');
|
|
5408
|
+
});
|
|
5392
5409
|
});
|
|
5393
5410
|
}
|
|
5394
5411
|
}, {
|
|
@@ -7710,7 +7727,7 @@
|
|
|
7710
7727
|
}
|
|
7711
7728
|
}
|
|
7712
7729
|
useRender(() => {
|
|
7713
|
-
var _slots$
|
|
7730
|
+
var _slots$title, _slots$subtitle, _slots$default;
|
|
7714
7731
|
const Tag = isLink.value ? 'a' : props.tag;
|
|
7715
7732
|
const hasColor = !list || isSelected.value || isActive.value;
|
|
7716
7733
|
const hasTitle = slots.title || props.title;
|
|
@@ -7733,7 +7750,18 @@
|
|
|
7733
7750
|
"onClick": onClick,
|
|
7734
7751
|
"onKeydown": isClickable.value && !isLink.value && onKeyDown
|
|
7735
7752
|
}, {
|
|
7736
|
-
default: () => [genOverlays(isClickable.value || isActive.value, 'v-list-item'), hasPrepend && vue.createVNode(
|
|
7753
|
+
default: () => [genOverlays(isClickable.value || isActive.value, 'v-list-item'), hasPrepend && vue.createVNode("div", {
|
|
7754
|
+
"key": "prepend",
|
|
7755
|
+
"class": "v-list-item__prepend"
|
|
7756
|
+
}, [props.prependAvatar && vue.createVNode(VAvatar, {
|
|
7757
|
+
"key": "prepend-avatar",
|
|
7758
|
+
"density": props.density,
|
|
7759
|
+
"image": props.prependAvatar
|
|
7760
|
+
}, null), props.prependIcon && vue.createVNode(VIcon, {
|
|
7761
|
+
"key": "prepend-icon",
|
|
7762
|
+
"density": props.density,
|
|
7763
|
+
"icon": props.prependIcon
|
|
7764
|
+
}, null), slots.prepend && vue.createVNode(VDefaultsProvider, {
|
|
7737
7765
|
"key": "prepend",
|
|
7738
7766
|
"defaults": {
|
|
7739
7767
|
VAvatar: {
|
|
@@ -7749,14 +7777,8 @@
|
|
|
7749
7777
|
}
|
|
7750
7778
|
}
|
|
7751
7779
|
}, {
|
|
7752
|
-
default: () => [
|
|
7753
|
-
|
|
7754
|
-
}, [props.prependAvatar && vue.createVNode(VAvatar, {
|
|
7755
|
-
"key": "prepend-avatar"
|
|
7756
|
-
}, null), props.prependIcon && vue.createVNode(VIcon, {
|
|
7757
|
-
"key": "prepend-icon"
|
|
7758
|
-
}, null), (_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots, slotProps.value)])]
|
|
7759
|
-
}), vue.createVNode("div", {
|
|
7780
|
+
default: () => [slots.prepend(slotProps.value)]
|
|
7781
|
+
})]), vue.createVNode("div", {
|
|
7760
7782
|
"class": "v-list-item__content",
|
|
7761
7783
|
"data-no-activator": ""
|
|
7762
7784
|
}, [hasTitle && vue.createVNode(VListItemTitle, {
|
|
@@ -7771,7 +7793,10 @@
|
|
|
7771
7793
|
default: () => [((_slots$subtitle = slots.subtitle) == null ? void 0 : _slots$subtitle.call(slots, {
|
|
7772
7794
|
subtitle: props.subtitle
|
|
7773
7795
|
})) ?? props.subtitle]
|
|
7774
|
-
}), (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots, slotProps.value)]), hasAppend && vue.createVNode(
|
|
7796
|
+
}), (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots, slotProps.value)]), hasAppend && vue.createVNode("div", {
|
|
7797
|
+
"key": "append",
|
|
7798
|
+
"class": "v-list-item__append"
|
|
7799
|
+
}, [slots.append && vue.createVNode(VDefaultsProvider, {
|
|
7775
7800
|
"key": "append",
|
|
7776
7801
|
"defaults": {
|
|
7777
7802
|
VAvatar: {
|
|
@@ -7787,14 +7812,16 @@
|
|
|
7787
7812
|
}
|
|
7788
7813
|
}
|
|
7789
7814
|
}, {
|
|
7790
|
-
default: () => [
|
|
7791
|
-
|
|
7792
|
-
|
|
7793
|
-
|
|
7794
|
-
|
|
7795
|
-
|
|
7796
|
-
|
|
7797
|
-
|
|
7815
|
+
default: () => [slots.append(slotProps.value)]
|
|
7816
|
+
}), props.appendIcon && vue.createVNode(VIcon, {
|
|
7817
|
+
"key": "append-icon",
|
|
7818
|
+
"density": props.density,
|
|
7819
|
+
"icon": props.appendIcon
|
|
7820
|
+
}, null), props.appendAvatar && vue.createVNode(VAvatar, {
|
|
7821
|
+
"key": "append-avatar",
|
|
7822
|
+
"density": props.density,
|
|
7823
|
+
"image": props.appendAvatar
|
|
7824
|
+
}, null)])]
|
|
7798
7825
|
}), [[vue.resolveDirective("ripple"), isClickable.value && props.ripple]]);
|
|
7799
7826
|
});
|
|
7800
7827
|
return {};
|
|
@@ -8008,9 +8035,12 @@
|
|
|
8008
8035
|
|
|
8009
8036
|
// Types
|
|
8010
8037
|
|
|
8038
|
+
function isPrimitive(value) {
|
|
8039
|
+
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';
|
|
8040
|
+
}
|
|
8011
8041
|
function transformItem(props, item) {
|
|
8012
8042
|
const type = getPropertyFromItem(item, props.itemType, 'item');
|
|
8013
|
-
const title =
|
|
8043
|
+
const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle);
|
|
8014
8044
|
const value = getPropertyFromItem(item, props.itemValue, undefined);
|
|
8015
8045
|
const children = getPropertyFromItem(item, props.itemChildren);
|
|
8016
8046
|
const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps);
|
|
@@ -8636,17 +8666,12 @@
|
|
|
8636
8666
|
function useLocationStrategies(props, data) {
|
|
8637
8667
|
const contentStyles = vue.ref({});
|
|
8638
8668
|
const updateLocation = vue.ref();
|
|
8639
|
-
|
|
8640
|
-
|
|
8641
|
-
|
|
8642
|
-
|
|
8643
|
-
|
|
8644
|
-
|
|
8645
|
-
scope = vue.effectScope();
|
|
8646
|
-
if (!(props.locationStrategy === 'connected')) {
|
|
8647
|
-
await vue.nextTick();
|
|
8648
|
-
}
|
|
8649
|
-
scope.run(() => {
|
|
8669
|
+
if (IN_BROWSER) {
|
|
8670
|
+
useToggleScope(() => !!(data.isActive.value && props.locationStrategy), reset => {
|
|
8671
|
+
vue.watch(() => props.locationStrategy, reset);
|
|
8672
|
+
vue.onScopeDispose(() => {
|
|
8673
|
+
updateLocation.value = undefined;
|
|
8674
|
+
});
|
|
8650
8675
|
if (typeof props.locationStrategy === 'function') {
|
|
8651
8676
|
var _props$locationStrate;
|
|
8652
8677
|
updateLocation.value = (_props$locationStrate = props.locationStrategy(data, props, contentStyles)) == null ? void 0 : _props$locationStrate.updateLocation;
|
|
@@ -8655,16 +8680,14 @@
|
|
|
8655
8680
|
updateLocation.value = (_locationStrategies$p = locationStrategies[props.locationStrategy](data, props, contentStyles)) == null ? void 0 : _locationStrategies$p.updateLocation;
|
|
8656
8681
|
}
|
|
8657
8682
|
});
|
|
8658
|
-
|
|
8659
|
-
|
|
8660
|
-
|
|
8661
|
-
|
|
8662
|
-
|
|
8663
|
-
|
|
8664
|
-
|
|
8665
|
-
|
|
8666
|
-
(_scope2 = scope) == null ? void 0 : _scope2.stop();
|
|
8667
|
-
});
|
|
8683
|
+
window.addEventListener('resize', onResize, {
|
|
8684
|
+
passive: true
|
|
8685
|
+
});
|
|
8686
|
+
vue.onScopeDispose(() => {
|
|
8687
|
+
window.removeEventListener('resize', onResize);
|
|
8688
|
+
updateLocation.value = undefined;
|
|
8689
|
+
});
|
|
8690
|
+
}
|
|
8668
8691
|
function onResize(e) {
|
|
8669
8692
|
var _updateLocation$value;
|
|
8670
8693
|
(_updateLocation$value = updateLocation.value) == null ? void 0 : _updateLocation$value.call(updateLocation, e);
|
|
@@ -8958,13 +8981,30 @@
|
|
|
8958
8981
|
maxWidth: convertToUnit(pixelCeil(clamp(available.x, minWidth.value === Infinity ? 0 : minWidth.value, maxWidth.value))),
|
|
8959
8982
|
maxHeight: convertToUnit(pixelCeil(clamp(available.y, minHeight.value === Infinity ? 0 : minHeight.value, maxHeight.value)))
|
|
8960
8983
|
});
|
|
8984
|
+
return {
|
|
8985
|
+
available,
|
|
8986
|
+
contentBox
|
|
8987
|
+
};
|
|
8961
8988
|
}
|
|
8962
|
-
vue.watch(() => [preferredAnchor.value, preferredOrigin.value, props.offset, props.minWidth, props.minHeight, props.maxWidth, props.maxHeight], () => updateLocation()
|
|
8963
|
-
|
|
8964
|
-
|
|
8965
|
-
|
|
8966
|
-
|
|
8967
|
-
|
|
8989
|
+
vue.watch(() => [preferredAnchor.value, preferredOrigin.value, props.offset, props.minWidth, props.minHeight, props.maxWidth, props.maxHeight], () => updateLocation());
|
|
8990
|
+
vue.nextTick(() => {
|
|
8991
|
+
const result = updateLocation();
|
|
8992
|
+
|
|
8993
|
+
// TODO: overflowing content should only require a single updateLocation call
|
|
8994
|
+
// Icky hack to make sure the content is positioned consistently
|
|
8995
|
+
if (!result) return;
|
|
8996
|
+
const {
|
|
8997
|
+
available,
|
|
8998
|
+
contentBox
|
|
8999
|
+
} = result;
|
|
9000
|
+
if (contentBox.height > available.y) {
|
|
9001
|
+
requestAnimationFrame(() => {
|
|
9002
|
+
updateLocation();
|
|
9003
|
+
requestAnimationFrame(() => {
|
|
9004
|
+
updateLocation();
|
|
9005
|
+
});
|
|
9006
|
+
});
|
|
9007
|
+
}
|
|
8968
9008
|
});
|
|
8969
9009
|
return {
|
|
8970
9010
|
updateLocation
|
|
@@ -9032,10 +9072,10 @@
|
|
|
9032
9072
|
await vue.nextTick();
|
|
9033
9073
|
scope.run(() => {
|
|
9034
9074
|
if (typeof props.scrollStrategy === 'function') {
|
|
9035
|
-
props.scrollStrategy(data, props);
|
|
9075
|
+
props.scrollStrategy(data, props, scope);
|
|
9036
9076
|
} else {
|
|
9037
9077
|
var _scrollStrategies$pro;
|
|
9038
|
-
(_scrollStrategies$pro = scrollStrategies[props.scrollStrategy]) == null ? void 0 : _scrollStrategies$pro.call(scrollStrategies, data, props);
|
|
9078
|
+
(_scrollStrategies$pro = scrollStrategies[props.scrollStrategy]) == null ? void 0 : _scrollStrategies$pro.call(scrollStrategies, data, props, scope);
|
|
9039
9079
|
}
|
|
9040
9080
|
});
|
|
9041
9081
|
});
|
|
@@ -9081,9 +9121,10 @@
|
|
|
9081
9121
|
}
|
|
9082
9122
|
});
|
|
9083
9123
|
}
|
|
9084
|
-
function repositionScrollStrategy(data) {
|
|
9124
|
+
function repositionScrollStrategy(data, props, scope) {
|
|
9085
9125
|
let slow = false;
|
|
9086
9126
|
let raf = -1;
|
|
9127
|
+
let ric = -1;
|
|
9087
9128
|
function update(e) {
|
|
9088
9129
|
requestNewFrame(() => {
|
|
9089
9130
|
var _data$updateLocation$, _data$updateLocation;
|
|
@@ -9093,21 +9134,29 @@
|
|
|
9093
9134
|
slow = time / (1000 / 60) > 2;
|
|
9094
9135
|
});
|
|
9095
9136
|
}
|
|
9096
|
-
|
|
9097
|
-
|
|
9098
|
-
|
|
9099
|
-
|
|
9100
|
-
|
|
9101
|
-
|
|
9102
|
-
|
|
9103
|
-
|
|
9104
|
-
|
|
9137
|
+
ric = requestIdleCallback(() => {
|
|
9138
|
+
scope.run(() => {
|
|
9139
|
+
bindScroll(data.activatorEl.value ?? data.contentEl.value, e => {
|
|
9140
|
+
if (slow) {
|
|
9141
|
+
// If the position calculation is slow,
|
|
9142
|
+
// defer updates until scrolling is finished.
|
|
9143
|
+
// Browsers usually fire one scroll event per frame so
|
|
9144
|
+
// we just wait until we've got two frames without an event
|
|
9145
|
+
cancelAnimationFrame(raf);
|
|
9146
|
+
raf = requestAnimationFrame(() => {
|
|
9147
|
+
raf = requestAnimationFrame(() => {
|
|
9148
|
+
update(e);
|
|
9149
|
+
});
|
|
9150
|
+
});
|
|
9151
|
+
} else {
|
|
9105
9152
|
update(e);
|
|
9106
|
-
}
|
|
9153
|
+
}
|
|
9107
9154
|
});
|
|
9108
|
-
}
|
|
9109
|
-
|
|
9110
|
-
|
|
9155
|
+
});
|
|
9156
|
+
});
|
|
9157
|
+
vue.onScopeDispose(() => {
|
|
9158
|
+
cancelIdleCallback(ric);
|
|
9159
|
+
cancelAnimationFrame(raf);
|
|
9111
9160
|
});
|
|
9112
9161
|
}
|
|
9113
9162
|
|
|
@@ -9750,6 +9799,11 @@
|
|
|
9750
9799
|
function onClickOutside() {
|
|
9751
9800
|
parent == null ? void 0 : parent.closeParents();
|
|
9752
9801
|
}
|
|
9802
|
+
const activatorProps = vue.computed(() => vue.mergeProps({
|
|
9803
|
+
'aria-haspopup': 'menu',
|
|
9804
|
+
'aria-expanded': String(isActive.value),
|
|
9805
|
+
'aria-owns': id.value
|
|
9806
|
+
}, props.activatorProps));
|
|
9753
9807
|
useRender(() => {
|
|
9754
9808
|
const [overlayProps] = filterVOverlayProps(props);
|
|
9755
9809
|
return vue.createVNode(VOverlay, vue.mergeProps({
|
|
@@ -9759,11 +9813,7 @@
|
|
|
9759
9813
|
"modelValue": isActive.value,
|
|
9760
9814
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
9761
9815
|
"absolute": true,
|
|
9762
|
-
"activatorProps":
|
|
9763
|
-
'aria-haspopup': 'menu',
|
|
9764
|
-
'aria-expanded': String(isActive.value),
|
|
9765
|
-
'aria-owns': id.value
|
|
9766
|
-
}, props.activatorProps),
|
|
9816
|
+
"activatorProps": activatorProps.value,
|
|
9767
9817
|
"onClick:outside": onClickOutside
|
|
9768
9818
|
}, scopeId), {
|
|
9769
9819
|
activator: slots.activator,
|
|
@@ -13896,6 +13946,10 @@
|
|
|
13896
13946
|
});
|
|
13897
13947
|
}
|
|
13898
13948
|
});
|
|
13949
|
+
const activatorProps = vue.computed(() => vue.mergeProps({
|
|
13950
|
+
'aria-haspopup': 'dialog',
|
|
13951
|
+
'aria-expanded': String(isActive.value)
|
|
13952
|
+
}, props.activatorProps));
|
|
13899
13953
|
useRender(() => {
|
|
13900
13954
|
const [overlayProps] = filterVOverlayProps(props);
|
|
13901
13955
|
return vue.createVNode(VOverlay, vue.mergeProps({
|
|
@@ -13909,10 +13963,7 @@
|
|
|
13909
13963
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
13910
13964
|
"aria-role": "dialog",
|
|
13911
13965
|
"aria-modal": "true",
|
|
13912
|
-
"activatorProps":
|
|
13913
|
-
'aria-haspopup': 'dialog',
|
|
13914
|
-
'aria-expanded': String(isActive.value)
|
|
13915
|
-
}, props.activatorProps)
|
|
13966
|
+
"activatorProps": activatorProps.value
|
|
13916
13967
|
}, scopeId), {
|
|
13917
13968
|
activator: slots.activator,
|
|
13918
13969
|
default: function () {
|
|
@@ -17994,6 +18045,9 @@
|
|
|
17994
18045
|
if (props.transition) return props.transition;
|
|
17995
18046
|
return isActive.value ? 'scale-transition' : 'fade-transition';
|
|
17996
18047
|
});
|
|
18048
|
+
const activatorProps = vue.computed(() => vue.mergeProps({
|
|
18049
|
+
'aria-describedby': id.value
|
|
18050
|
+
}, props.activatorProps));
|
|
17997
18051
|
useRender(() => {
|
|
17998
18052
|
const [overlayProps] = filterVOverlayProps(props);
|
|
17999
18053
|
return vue.createVNode(VOverlay, vue.mergeProps({
|
|
@@ -18010,9 +18064,7 @@
|
|
|
18010
18064
|
"persistent": true,
|
|
18011
18065
|
"role": "tooltip",
|
|
18012
18066
|
"eager": true,
|
|
18013
|
-
"activatorProps":
|
|
18014
|
-
'aria-describedby': id.value
|
|
18015
|
-
}, props.activatorProps),
|
|
18067
|
+
"activatorProps": activatorProps.value,
|
|
18016
18068
|
"_disableGlobalStack": true
|
|
18017
18069
|
}, scopeId), {
|
|
18018
18070
|
activator: slots.activator,
|
|
@@ -20157,7 +20209,7 @@
|
|
|
20157
20209
|
locale
|
|
20158
20210
|
};
|
|
20159
20211
|
}
|
|
20160
|
-
const version$1 = "3.1.
|
|
20212
|
+
const version$1 = "3.1.3-dev-20230125.0";
|
|
20161
20213
|
createVuetify$1.version = version$1;
|
|
20162
20214
|
|
|
20163
20215
|
// Vue's inject() can only be used in setup
|
|
@@ -20170,7 +20222,7 @@
|
|
|
20170
20222
|
}
|
|
20171
20223
|
}
|
|
20172
20224
|
|
|
20173
|
-
const version = "3.1.
|
|
20225
|
+
const version = "3.1.3-dev-20230125.0";
|
|
20174
20226
|
|
|
20175
20227
|
const createVuetify = function () {
|
|
20176
20228
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|